From f2dbd8df23dcb61039e9b23d5aa202959c922082 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafa=C5=82=20Pito=C5=84?= Date: Sun, 28 Jan 2018 22:33:20 +0100 Subject: [PATCH] #951: updated navbar user menus --- frontend/package-lock.json | 22414 +++++++++++----- .../src/components/user-menu/guest-nav.js | 4 +- frontend/style/flavor/buttons.less | 65 +- frontend/style/flavor/dropdowns.less | 30 - frontend/style/flavor/variables.less | 57 +- frontend/style/misago/dropdowns.less | 19 +- frontend/style/misago/navbar.less | 1 - misago/static/misago/css/misago.css | 2 +- misago/static/misago/js/es2015.js | 7 +- misago/static/misago/js/es2015.js.map | 2 +- misago/static/misago/js/misago.js | 10 +- misago/static/misago/js/misago.js.map | 2 +- misago/static/misago/js/vendor.js | 32 +- misago/static/misago/js/vendor.js.map | 2 +- misago/static/misago/js/zxcvbn.js | 4 +- misago/static/misago/js/zxcvbn.js.map | 6 +- 16 files changed, 15207 insertions(+), 7450 deletions(-) diff --git a/frontend/package-lock.json b/frontend/package-lock.json index cf76cf7767..6aa6fe298d 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -4,8343 +4,16157 @@ "lockfileVersion": 1, "requires": true, "dependencies": { - "accessory": { - "version": "https://registry.npmjs.org/accessory/-/accessory-1.0.1.tgz", - "integrity": "sha1-JZVKJYKRohsb6PGQIGTpYs7mzmI=", + "@browserify/acorn5-object-spread": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@browserify/acorn5-object-spread/-/acorn5-object-spread-5.0.1.tgz", + "integrity": "sha512-sFCUPzgeEjdq3rinwy4TFXtak2YZdhqpj6MdNusxkdTFr9TXAUEYK4YQSamR8Joqt/yii1drgl5hk8q/AtJDKA==", "requires": { - "dot-parts": "https://registry.npmjs.org/dot-parts/-/dot-parts-1.0.1.tgz" + "acorn": "5.3.0" + }, + "dependencies": { + "acorn": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.3.0.tgz", + "integrity": "sha512-Yej+zOJ1Dm/IMZzzj78OntP/r3zHEaKcyNoU2lAaxPtrseM6rF0xwqoz5Q5ysAiED9hTjI2hgtvLXitlCN1/Ug==" + } } }, - "accord": { - "version": "https://registry.npmjs.org/accord/-/accord-0.26.4.tgz", - "integrity": "sha1-/EyNPrq0BqB8sogZuFllHESpLoA=", + "@gulp-sourcemaps/map-sources": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/map-sources/-/map-sources-1.0.0.tgz", + "integrity": "sha1-iQrnxdjId/bThIYCFazp1+yUW9o=", "requires": { - "convert-source-map": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.3.0.tgz", - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", - "indx": "https://registry.npmjs.org/indx/-/indx-0.2.3.tgz", - "lodash.clone": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", - "lodash.defaults": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "lodash.flatten": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "lodash.merge": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.0.tgz", - "lodash.partialright": "https://registry.npmjs.org/lodash.partialright/-/lodash.partialright-4.2.1.tgz", - "lodash.pick": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "lodash.uniq": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "resolve": "https://registry.npmjs.org/resolve/-/resolve-1.2.0.tgz", - "semver": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", - "uglify-js": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.7.5.tgz", - "when": "https://registry.npmjs.org/when/-/when-3.7.7.tgz" + "normalize-path": "2.1.1", + "through2": "2.0.3" }, "dependencies": { - "lodash.defaults": { - "version": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, - "semver": { - "version": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", - "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=" + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "requires": { + "remove-trailing-separator": "1.1.0" + } + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" } } }, - "acorn": { - "version": "https://registry.npmjs.org/acorn/-/acorn-1.2.2.tgz", - "integrity": "sha1-yM4n3grMdtiW0rH6099YjZ6C8BQ=" - }, - "agent-base": { - "version": "https://registry.npmjs.org/agent-base/-/agent-base-2.0.1.tgz", - "integrity": "sha1-vY+ehqjrIh//oHvRS+/VXfFCgV4=", - "dev": true, + "ajv": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", + "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", + "optional": true, "requires": { - "extend": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz", - "semver": "https://registry.npmjs.org/semver/-/semver-5.0.3.tgz" + "co": "4.6.0", + "json-stable-stringify": "1.0.1" }, "dependencies": { - "semver": { - "version": "https://registry.npmjs.org/semver/-/semver-5.0.3.tgz", - "integrity": "sha1-d0Zt5YnNXTyV8TiqeLxWmjy10no=", - "dev": true + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "optional": true + }, + "json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "optional": true, + "requires": { + "jsonify": "0.0.0" + } + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", + "optional": true } } }, - "align-text": { - "version": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", - "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", - "requires": { - "kind-of": "https://registry.npmjs.org/kind-of/-/kind-of-3.1.0.tgz", - "longest": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "repeat-string": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz" - } - }, - "amdefine": { - "version": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" - }, - "ansi_up": { - "version": "https://registry.npmjs.org/ansi_up/-/ansi_up-1.3.0.tgz", - "integrity": "sha1-yclGv8C5u16qBgaEvyq6r+aLvUQ=", - "dev": true - }, - "ansi-regex": { - "version": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz", - "integrity": "sha1-xQYbbg74qBd15Q9dZhUb9r83EQc=" - }, - "ansi-styles": { - "version": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" - }, - "anymatch": { - "version": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.0.tgz", - "integrity": "sha1-o+Uvo5FoyCX/V7AkgSbOWo/5VQc=", - "requires": { - "arrify": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "micromatch": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz" - } - }, - "archive-type": { - "version": "https://registry.npmjs.org/archive-type/-/archive-type-3.2.0.tgz", - "integrity": "sha1-nNnABpV+vpX62tW9YJiUKoE3N/Y=", - "requires": { - "file-type": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz" - } - }, - "archy": { - "version": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=" - }, - "argparse": { - "version": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz", - "integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=", + "ansi-cyan": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz", + "integrity": "sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=", "requires": { - "sprintf-js": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" + "ansi-wrap": "0.1.0" } }, - "arr-diff": { - "version": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "ansi-gray": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", + "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=", "requires": { - "arr-flatten": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.0.1.tgz" + "ansi-wrap": "0.1.0" } }, - "arr-flatten": { - "version": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.0.1.tgz", - "integrity": "sha1-5f/lTUXhnzLyFukeuZyM6JK7YEs=" - }, - "array-differ": { - "version": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=" - }, - "array-filter": { - "version": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", - "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=" - }, - "array-find-index": { - "version": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=" - }, - "array-map": { - "version": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", - "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=" - }, - "array-reduce": { - "version": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", - "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=" - }, - "array-union": { - "version": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "ansi-red": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", + "integrity": "sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=", "requires": { - "array-uniq": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz" + "ansi-wrap": "0.1.0" } }, - "array-uniq": { - "version": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" - }, - "array-unique": { - "version": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=" + "ansi-wrap": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", + "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=" }, - "arrify": { - "version": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" + "ap": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/ap/-/ap-0.2.0.tgz", + "integrity": "sha1-rglCYAspkS8NKxTsYMRejzMLYRA=" }, - "asap": { - "version": "https://registry.npmjs.org/asap/-/asap-2.0.5.tgz", - "integrity": "sha1-UidltQw1EEkOUtfc/ghe+bqWlY8=" + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" }, - "asn1.js": { - "version": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.9.0.tgz", - "integrity": "sha1-9xoSQ/PnnUbXsH1/v0gk7nOvBUo=", - "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "minimalistic-assert": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz" - } + "array-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", + "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=" }, - "assert": { - "version": "https://registry.npmjs.org/assert/-/assert-1.3.0.tgz", - "integrity": "sha1-A5OaYiWCqBLMICMgoLmlbJuBWEk=", - "requires": { - "util": "https://registry.npmjs.org/util/-/util-0.10.3.tgz" - } + "array-slice": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", + "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==" }, - "astw": { - "version": "https://registry.npmjs.org/astw/-/astw-2.0.0.tgz", - "integrity": "sha1-CBIayCiNNWEcDO7GY/bNVFYEiX0=", - "requires": { - "acorn": "https://registry.npmjs.org/acorn/-/acorn-1.2.2.tgz" - } + "asn1": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", + "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", + "optional": true }, - "async": { - "version": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", - "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=" + "assert-plus": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", + "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=", + "optional": true }, - "async-each": { - "version": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", - "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=" + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" }, - "async-each-series": { - "version": "https://registry.npmjs.org/async-each-series/-/async-each-series-1.1.0.tgz", - "integrity": "sha1-9C/YFV048hpbjqB8KOBj7RcAsTg=" + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "optional": true }, "at.js": { "version": "1.5.3", "resolved": "https://registry.npmjs.org/at.js/-/at.js-1.5.3.tgz", "integrity": "sha1-jscyTZJPDPvYjfzrp7Lc8iVeBCw=" }, - "atob": { - "version": "https://registry.npmjs.org/atob/-/atob-1.1.3.tgz", - "integrity": "sha1-lfE2KbEsOlGl0hWr3OKqnzL4B3M=" + "aws-sign2": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", + "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=", + "optional": true }, - "babel-code-frame": { - "version": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.20.0.tgz", - "integrity": "sha1-uWj4OQkPmovG1Bk4+5bLhPc4eyY=", - "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "esutils": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "js-tokens": "https://registry.npmjs.org/js-tokens/-/js-tokens-2.0.0.tgz" - } + "aws4": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz", + "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=", + "optional": true }, "babel-core": { - "version": "https://registry.npmjs.org/babel-core/-/babel-core-6.7.7.tgz", + "version": "6.7.7", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.7.7.tgz", "integrity": "sha1-dPvfljqCXtdOE2qxAMyfB+PD5OI=", "requires": { - "babel-code-frame": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.20.0.tgz", - "babel-generator": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.21.0.tgz", - "babel-helpers": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.16.0.tgz", - "babel-messages": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.8.0.tgz", - "babel-register": "https://registry.npmjs.org/babel-register/-/babel-register-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-5.8.38.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz", - "babel-traverse": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.21.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz", - "babylon": "https://registry.npmjs.org/babylon/-/babylon-6.14.1.tgz", - "convert-source-map": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.3.0.tgz", - "debug": "https://registry.npmjs.org/debug/-/debug-2.4.4.tgz", - "json5": "https://registry.npmjs.org/json5/-/json5-0.4.0.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", - "path-exists": "https://registry.npmjs.org/path-exists/-/path-exists-1.0.0.tgz", - "path-is-absolute": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "private": "https://registry.npmjs.org/private/-/private-0.1.6.tgz", - "shebang-regex": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "slash": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz" - } - }, - "babel-generator": { - "version": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.21.0.tgz", - "integrity": "sha1-YF8SacSJocdd7sp+oW1D1GVshJQ=", - "requires": { - "babel-messages": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.8.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz", - "detect-indent": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "jsesc": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz" + "babel-code-frame": "6.26.0", + "babel-generator": "6.26.0", + "babel-helpers": "6.24.1", + "babel-messages": "6.23.0", + "babel-register": "6.26.0", + "babel-runtime": "5.8.38", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "convert-source-map": "1.5.1", + "debug": "2.6.9", + "json5": "0.4.0", + "lodash": "3.10.1", + "minimatch": "2.0.10", + "path-exists": "1.0.0", + "path-is-absolute": "1.0.1", + "private": "0.1.8", + "shebang-regex": "1.0.0", + "slash": "1.0.0", + "source-map": "0.5.7" }, "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.2" } }, - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "integrity": "sha1-NKMFW6vgTOQkZ7YH1wAHLH/2v0I=" - } - } - }, - "babel-helper-bindify-decorators": { - "version": "https://registry.npmjs.org/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.18.0.tgz", - "integrity": "sha1-/ADFc2dqbnAv/6AAGVgIkuyHgKU=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-traverse": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.21.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + "babel-core": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz", + "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=", + "requires": { + "babel-code-frame": "6.26.0", + "babel-generator": "6.26.0", + "babel-helpers": "6.24.1", + "babel-messages": "6.23.0", + "babel-register": "6.26.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "convert-source-map": "1.5.1", + "debug": "2.6.9", + "json5": "0.5.1", + "lodash": "4.17.4", + "minimatch": "3.0.4", + "path-is-absolute": "1.0.1", + "private": "0.1.8", + "slash": "1.0.0", + "source-map": "0.5.7" + }, + "dependencies": { + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "requires": { + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" + } + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "1.1.8" + } + } + } + }, + "babel-generator": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.0.tgz", + "integrity": "sha1-rBriAHC3n248odMmlhMFN3TyDcU=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "detect-indent": "4.0.0", + "jsesc": "1.3.0", + "lodash": "4.17.4", + "source-map": "0.5.7", + "trim-right": "1.0.1" + }, + "dependencies": { + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "requires": { + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" + } + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" + } } - } - } - }, - "babel-helper-builder-binary-assignment-operator-visitor": { - "version": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.18.0.tgz", - "integrity": "sha1-iugUmJ96U2ghUuNAGgT6vQuzM6Y=", - "requires": { - "babel-helper-explode-assignable-expression": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + }, + "dependencies": { + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "requires": { + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" + } + } } - } - } - }, - "babel-helper-builder-react-jsx": { - "version": "https://registry.npmjs.org/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.21.0.tgz", - "integrity": "sha1-GHB6zTUMjhtaO3RwuYhwj96ETxw=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz", - "esutils": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0" + }, + "dependencies": { + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "requires": { + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" + } + } } }, - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "integrity": "sha1-NKMFW6vgTOQkZ7YH1wAHLH/2v0I=" - } - } - }, - "babel-helper-call-delegate": { - "version": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.18.0.tgz", - "integrity": "sha1-BbFKr6QwiEsDQJfvKenwZ+pBM70=", - "requires": { - "babel-helper-hoist-variables": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-traverse": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.21.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + "babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0", + "core-js": "2.5.3", + "home-or-tmp": "2.0.0", + "lodash": "4.17.4", + "mkdirp": "0.5.1", + "source-map-support": "0.4.18" + }, + "dependencies": { + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "requires": { + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" + } + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" + } } - } - } - }, - "babel-helper-define-map": { - "version": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.18.0.tgz", - "integrity": "sha1-jWyF3H+7TBm+PeQEdNGOl8NnbsI=", - "requires": { - "babel-helper-function-name": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz" - }, - "dependencies": { + }, "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + "version": "5.8.38", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-5.8.38.tgz", + "integrity": "sha1-HAsC62MxL18If/IEUIJ7QlydTBk=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "core-js": "1.2.7" + }, + "dependencies": { + "core-js": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", + "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" + } } }, - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "integrity": "sha1-NKMFW6vgTOQkZ7YH1wAHLH/2v0I=" - } - } - }, - "babel-helper-explode-assignable-expression": { - "version": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.18.0.tgz", - "integrity": "sha1-FLjowtA61zXUsg8YQLJM0fZSOf4=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-traverse": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.21.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "lodash": "4.17.4" + }, + "dependencies": { + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "requires": { + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" + } + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" + } } - } - } - }, - "babel-helper-explode-class": { - "version": "https://registry.npmjs.org/babel-helper-explode-class/-/babel-helper-explode-class-6.18.0.tgz", - "integrity": "sha1-xE929PojucXWB8usXUEV56dvYss=", - "requires": { - "babel-helper-bindify-decorators": "https://registry.npmjs.org/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-traverse": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.21.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "requires": { + "babel-code-frame": "6.26.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "debug": "2.6.9", + "globals": "9.18.0", + "invariant": "2.2.2", + "lodash": "4.17.4" + }, + "dependencies": { + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "requires": { + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" + } + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" + } + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0", + "esutils": "2.0.2", + "lodash": "4.17.4", + "to-fast-properties": "1.0.3" + }, + "dependencies": { + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "requires": { + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" + } + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" + } } - } - } - }, - "babel-helper-function-name": { - "version": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.18.0.tgz", - "integrity": "sha1-aOxxrrofPiiypvBzAZC3VKm/MOY=", - "requires": { - "babel-helper-get-function-arity": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz", - "babel-traverse": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.21.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "balanced-match": "1.0.0", + "concat-map": "0.0.1" } - } - } - }, - "babel-helper-get-function-arity": { - "version": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.18.0.tgz", - "integrity": "sha1-pbGWlf0/nN/DKDmLR9r81wlPnyQ=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" } - } - } - }, - "babel-helper-hoist-variables": { - "version": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.18.0.tgz", - "integrity": "sha1-qDW1q4tG1t6bq++uTZjqQehmuCo=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "convert-source-map": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=" + }, + "core-js": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", + "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "ms": "2.0.0" } - } - } - }, - "babel-helper-optimise-call-expression": { - "version": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.18.0.tgz", - "integrity": "sha1-kmHQKZ7hpPCKbdKLe3x3c0j9jw8=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "repeating": "2.0.1" } - } - } - }, - "babel-helper-regex": { - "version": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.18.0.tgz", - "integrity": "sha1-rg6/133obLLxryWOLMILX+iT7MY=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" } }, + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + "requires": { + "loose-envify": "1.3.1" + } + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "requires": { + "number-is-nan": "1.0.1" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=" + }, + "json5": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.4.0.tgz", + "integrity": "sha1-BUNS5MTIDIbAkjh31EneF2pzLI0=" + }, "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "integrity": "sha1-NKMFW6vgTOQkZ7YH1wAHLH/2v0I=" - } - } - }, - "babel-helper-remap-async-to-generator": { - "version": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.20.3.tgz", - "integrity": "sha1-ndOzlvE+Ne9j5TgJhQCtwkxjxOc=", - "requires": { - "babel-helper-function-name": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz", - "babel-traverse": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.21.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", + "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "js-tokens": "3.0.2" } - } - } - }, - "babel-helper-replace-supers": { - "version": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.18.0.tgz", - "integrity": "sha1-KOxph3vkFE29ZPTMOjN+ifKakk4=", - "requires": { - "babel-helper-optimise-call-expression": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.18.0.tgz", - "babel-messages": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.8.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz", - "babel-traverse": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.21.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "minimatch": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", + "integrity": "sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "brace-expansion": "1.1.8" } - } - } - }, - "babel-helpers": { - "version": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.16.0.tgz", - "integrity": "sha1-EJXsENmSeUYFU+Z+s+7plz04Z+M=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "minimist": "0.0.8" } - } - } - }, - "babel-messages": { - "version": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.8.0.tgz", - "integrity": "sha1-v1BHNsqWfm1l7wrbWipflHyODrk=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + }, + "path-exists": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-1.0.0.tgz", + "integrity": "sha1-1aiZjrce83p0w06w2eum6HjuoIE=" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==" + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "is-finite": "1.0.2" } - } - } - }, - "babel-plugin-check-es2015-constants": { - "version": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.8.0.tgz", - "integrity": "sha1-2/Akwy7Te/2o3uHnbaAjhqjSb+c=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "requires": { + "source-map": "0.5.7" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "ansi-regex": "2.1.1" } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" } } }, "babel-plugin-module-alias": { - "version": "https://registry.npmjs.org/babel-plugin-module-alias/-/babel-plugin-module-alias-1.6.0.tgz", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/babel-plugin-module-alias/-/babel-plugin-module-alias-1.6.0.tgz", "integrity": "sha1-3346q6NUT0wGqdMxSia7v/bYe2E=" }, - "babel-plugin-syntax-async-functions": { - "version": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", - "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=" - }, - "babel-plugin-syntax-async-generators": { - "version": "https://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz", - "integrity": "sha1-a8lj67FuzLrmuStZbrfzXDQqi5o=" - }, - "babel-plugin-syntax-class-properties": { - "version": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz", - "integrity": "sha1-1+sjt5oxf4VDlixQW4J8fWysJ94=" - }, - "babel-plugin-syntax-decorators": { - "version": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz", - "integrity": "sha1-MSVjtNvePMgGzuPkFszurd0RrAs=" - }, - "babel-plugin-syntax-dynamic-import": { - "version": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz", - "integrity": "sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo=" - }, - "babel-plugin-syntax-exponentiation-operator": { - "version": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", - "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=" - }, - "babel-plugin-syntax-flow": { - "version": "https://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz", - "integrity": "sha1-TDqyCiryaqIM0lmVw5jE63AxDI0=" - }, - "babel-plugin-syntax-jsx": { - "version": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", - "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=" - }, - "babel-plugin-syntax-object-rest-spread": { - "version": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", - "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=" - }, - "babel-plugin-syntax-trailing-function-commas": { - "version": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.20.0.tgz", - "integrity": "sha1-RCg14ZF59FuH6S1HfXC58fGLXE8=" - }, - "babel-plugin-transform-async-generator-functions": { - "version": "https://registry.npmjs.org/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.17.0.tgz", - "integrity": "sha1-0LWisvCUDyskX6IKAFGe17xsrlQ=", + "babel-plugin-transform-class-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz", + "integrity": "sha1-anl2PqYdM9NvN7YRqp3vgagbRqw=", "requires": { - "babel-helper-remap-async-to-generator": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.20.3.tgz", - "babel-plugin-syntax-async-generators": "https://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" + "babel-helper-function-name": "6.24.1", + "babel-plugin-syntax-class-properties": "6.13.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" }, "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.2" } - } - } - }, - "babel-plugin-transform-async-to-generator": { - "version": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.16.0.tgz", - "integrity": "sha1-Gew2yxSGtZ+fRorfpCzhOQjKKZk=", - "requires": { - "babel-helper-remap-async-to-generator": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.20.3.tgz", - "babel-plugin-syntax-async-functions": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" } - } - } - }, - "babel-plugin-transform-class-properties": { - "version": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.19.0.tgz", - "integrity": "sha1-EnSzSauq3INRZOIAT0okRKJ4jV8=", - "requires": { - "babel-helper-function-name": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.18.0.tgz", - "babel-plugin-syntax-class-properties": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" } - } - } - }, - "babel-plugin-transform-decorators": { - "version": "https://registry.npmjs.org/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.13.0.tgz", - "integrity": "sha1-gtZcFHCug+LRPuvssKHCR21i2p0=", - "requires": { - "babel-helper-define-map": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.18.0.tgz", - "babel-helper-explode-class": "https://registry.npmjs.org/babel-helper-explode-class/-/babel-helper-explode-class-6.18.0.tgz", - "babel-plugin-syntax-decorators": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0" } - } - } - }, - "babel-plugin-transform-es2015-arrow-functions": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.8.0.tgz", - "integrity": "sha1-W2Ovwxgb3JqMTUgbWk8/fX/vPZ0=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { + }, + "babel-plugin-syntax-class-properties": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz", + "integrity": "sha1-1+sjt5oxf4VDlixQW4J8fWysJ94=" + }, "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" } - } - } - }, - "babel-plugin-transform-es2015-block-scoped-functions": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.8.0.tgz", - "integrity": "sha1-7ZXWKcS1pxriloK5mPcNmDPrNm0=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "lodash": "4.17.4" } - } - } - }, - "babel-plugin-transform-es2015-block-scoping": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.21.0.tgz", - "integrity": "sha1-6EBof5IucPssQrsTUBg4wXShFe0=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz", - "babel-traverse": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.21.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-code-frame": "6.26.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "debug": "2.6.9", + "globals": "9.18.0", + "invariant": "2.2.2", + "lodash": "4.17.4" } }, - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "integrity": "sha1-NKMFW6vgTOQkZ7YH1wAHLH/2v0I=" - } - } - }, - "babel-plugin-transform-es2015-classes": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.18.0.tgz", - "integrity": "sha1-/+ehcyG/g+SU3NoK4/xy30j/0dk=", - "requires": { - "babel-helper-define-map": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.18.0.tgz", - "babel-helper-function-name": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.18.0.tgz", - "babel-helper-optimise-call-expression": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.18.0.tgz", - "babel-helper-replace-supers": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.18.0.tgz", - "babel-messages": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.8.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz", - "babel-traverse": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.21.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0", + "esutils": "2.0.2", + "lodash": "4.17.4", + "to-fast-properties": "1.0.3" } - } - } - }, - "babel-plugin-transform-es2015-computed-properties": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.8.0.tgz", - "integrity": "sha1-9RAQ/WGzvXtrYKX9/TB7t6UnmHA=", - "requires": { - "babel-helper-define-map": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" } - } - } - }, - "babel-plugin-transform-es2015-destructuring": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.19.0.tgz", - "integrity": "sha1-/x2RHEs/TKtiG9ZnAqhprNGQBTM=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "core-js": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", + "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "ms": "2.0.0" } - } - } - }, - "babel-plugin-transform-es2015-duplicate-keys": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.8.0.tgz", - "integrity": "sha1-/Y9/cXH8EIzBxwwxZLnxWoHCX30=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "ansi-regex": "2.1.1" } - } - } - }, - "babel-plugin-transform-es2015-for-of": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.18.0.tgz", - "integrity": "sha1-TFF1BNtkv4z8EZprjxdyEfICinA=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "loose-envify": "1.3.1" } - } - } - }, - "babel-plugin-transform-es2015-function-name": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.9.0.tgz", - "integrity": "sha1-jBNbF9vQZOW7pW7FEbqu4vyoJxk=", - "requires": { - "babel-helper-function-name": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "js-tokens": "3.0.2" } - } - } - }, - "babel-plugin-transform-es2015-literals": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.8.0.tgz", - "integrity": "sha1-UKouXHlY/CqyXXTsEX4MyY8EZGg=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "ansi-regex": "2.1.1" } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" } } }, - "babel-plugin-transform-es2015-modules-amd": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.18.0.tgz", - "integrity": "sha1-SaBUy7divfmuLYqAcHbPreYUHkA=", + "babel-polyfill": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", + "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", "requires": { - "babel-plugin-transform-es2015-modules-commonjs": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz" + "babel-runtime": "6.26.0", + "core-js": "2.5.3", + "regenerator-runtime": "0.10.5" }, "dependencies": { "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" + }, + "dependencies": { + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + } } + }, + "core-js": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", + "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=" + }, + "regenerator-runtime": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", + "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=" } } }, - "babel-plugin-transform-es2015-modules-commonjs": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.18.0.tgz", - "integrity": "sha1-wVrluxGzKgq9zJilg3uqTujWe8w=", - "requires": { - "babel-plugin-transform-strict-mode": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" + "babel-preset-es2015": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz", + "integrity": "sha1-1EBQ1rwsn+6nAqrzjXJ6AhBTiTk=", + "requires": { + "babel-plugin-check-es2015-constants": "6.22.0", + "babel-plugin-transform-es2015-arrow-functions": "6.22.0", + "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0", + "babel-plugin-transform-es2015-block-scoping": "6.26.0", + "babel-plugin-transform-es2015-classes": "6.24.1", + "babel-plugin-transform-es2015-computed-properties": "6.24.1", + "babel-plugin-transform-es2015-destructuring": "6.23.0", + "babel-plugin-transform-es2015-duplicate-keys": "6.24.1", + "babel-plugin-transform-es2015-for-of": "6.23.0", + "babel-plugin-transform-es2015-function-name": "6.24.1", + "babel-plugin-transform-es2015-literals": "6.22.0", + "babel-plugin-transform-es2015-modules-amd": "6.24.1", + "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", + "babel-plugin-transform-es2015-modules-systemjs": "6.24.1", + "babel-plugin-transform-es2015-modules-umd": "6.24.1", + "babel-plugin-transform-es2015-object-super": "6.24.1", + "babel-plugin-transform-es2015-parameters": "6.24.1", + "babel-plugin-transform-es2015-shorthand-properties": "6.24.1", + "babel-plugin-transform-es2015-spread": "6.22.0", + "babel-plugin-transform-es2015-sticky-regex": "6.24.1", + "babel-plugin-transform-es2015-template-literals": "6.22.0", + "babel-plugin-transform-es2015-typeof-symbol": "6.23.0", + "babel-plugin-transform-es2015-unicode-regex": "6.24.1", + "babel-plugin-transform-regenerator": "6.26.0" }, "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.2" } - } - } - }, - "babel-plugin-transform-es2015-modules-systemjs": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.19.0.tgz", - "integrity": "sha1-UEOBNuunRSfvoApbD++vHcQHHaY=", - "requires": { - "babel-helper-hoist-variables": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-helper-call-delegate": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", + "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-helper-hoist-variables": "6.24.1", + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" } - } - } - }, - "babel-plugin-transform-es2015-modules-umd": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.18.0.tgz", - "integrity": "sha1-IzUXcOzlwfjoPtZ8sdeZKIRJHlA=", - "requires": { - "babel-plugin-transform-es2015-modules-amd": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-helper-define-map": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", + "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.4" } - } - } - }, - "babel-plugin-transform-es2015-object-super": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.8.0.tgz", - "integrity": "sha1-G4WHQKWkQAiHwj3P9vTVbupKJMU=", - "requires": { - "babel-helper-replace-supers": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" } - } - } - }, - "babel-plugin-transform-es2015-parameters": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.21.0.tgz", - "integrity": "sha1-RqZV5oZO+YQJFEjN8CTYe2Cyp9g=", - "requires": { - "babel-helper-call-delegate": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.18.0.tgz", - "babel-helper-get-function-arity": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz", - "babel-traverse": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.21.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" } - } - } - }, - "babel-plugin-transform-es2015-shorthand-properties": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.18.0.tgz", - "integrity": "sha1-4u3jt99Hv5gBUZJlNNHdDL6lj0M=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-helper-hoist-variables": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", + "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" } - } - } - }, - "babel-plugin-transform-es2015-spread": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.8.0.tgz", - "integrity": "sha1-Ahf3N+O4IfpaZp8YfG7VkgXwXpw=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-helper-optimise-call-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", + "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" } - } - } - }, - "babel-plugin-transform-es2015-sticky-regex": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.8.0.tgz", - "integrity": "sha1-5z0wCkQKNdXGT1wqNE3CNuPfR74=", - "requires": { - "babel-helper-regex": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-helper-regex": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", + "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.4" } - } - } - }, - "babel-plugin-transform-es2015-template-literals": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.8.0.tgz", - "integrity": "sha1-huuHbQosY12k7ASLT33p38iX5ms=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-helper-replace-supers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", + "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-helper-optimise-call-expression": "6.24.1", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" } - } - } - }, - "babel-plugin-transform-es2015-typeof-symbol": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.18.0.tgz", - "integrity": "sha1-CxTEhinJD/R6BlAHf2qmmb7jV5g=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0" } - } - } - }, - "babel-plugin-transform-es2015-unicode-regex": { - "version": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.11.0.tgz", - "integrity": "sha1-YpjOq6rYjVCj9POS2N6ZcmD27yw=", - "requires": { - "babel-helper-regex": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "regexpu-core": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-plugin-check-es2015-constants": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", + "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0" } - } - } - }, - "babel-plugin-transform-exponentiation-operator": { - "version": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.8.0.tgz", - "integrity": "sha1-2yV0LpM56t5nbKms7Eb5VVmaaKQ=", - "requires": { - "babel-helper-builder-binary-assignment-operator-visitor": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.18.0.tgz", - "babel-plugin-syntax-exponentiation-operator": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-plugin-transform-es2015-arrow-functions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", + "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0" } - } - } - }, - "babel-plugin-transform-flow-strip-types": { - "version": "https://registry.npmjs.org/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.21.0.tgz", - "integrity": "sha1-Luo/i1uyNDObRyg/6sFVz7I3uUg=", - "requires": { - "babel-plugin-syntax-flow": "https://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-plugin-transform-es2015-block-scoped-functions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", + "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0" } - } - } - }, - "babel-plugin-transform-object-rest-spread": { - "version": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.20.2.tgz", - "integrity": "sha1-6BbFW7p3sUwWNl2H4q5IyP0Y/C4=", - "requires": { - "babel-plugin-syntax-object-rest-spread": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-plugin-transform-es2015-block-scoping": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", + "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.4" } - } - } - }, - "babel-plugin-transform-react-display-name": { - "version": "https://registry.npmjs.org/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.8.0.tgz", - "integrity": "sha1-96CEl3OD1yi9vcKDW7oBWVd/Zg4=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-plugin-transform-es2015-classes": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", + "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-helper-define-map": "6.26.0", + "babel-helper-function-name": "6.24.1", + "babel-helper-optimise-call-expression": "6.24.1", + "babel-helper-replace-supers": "6.24.1", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" } - } - } - }, - "babel-plugin-transform-react-jsx": { - "version": "https://registry.npmjs.org/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.8.0.tgz", - "integrity": "sha1-lHWZQvcK8YxhcYmqfzWT8WRKcas=", - "requires": { - "babel-helper-builder-react-jsx": "https://registry.npmjs.org/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.21.0.tgz", - "babel-plugin-syntax-jsx": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-plugin-transform-es2015-computed-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", + "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" } - } - } - }, - "babel-plugin-transform-react-jsx-self": { - "version": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.11.0.tgz", - "integrity": "sha1-YFyUUMFCn5epMPfh3+Pw2dDb0PQ=", - "requires": { - "babel-plugin-syntax-jsx": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-plugin-transform-es2015-destructuring": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", + "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0" } - } - } - }, - "babel-plugin-transform-react-jsx-source": { - "version": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.9.0.tgz", - "integrity": "sha1-r2hKBcIGeobglX1PNDKVzPXczwA=", - "requires": { - "babel-plugin-syntax-jsx": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-plugin-transform-es2015-duplicate-keys": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", + "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" } - } - } - }, - "babel-plugin-transform-regenerator": { - "version": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.21.0.tgz", - "integrity": "sha1-ddDH5/hPN5NY9QhFHGiixfpalwM=", - "requires": { - "regenerator-transform": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.9.8.tgz" - } - }, - "babel-plugin-transform-strict-mode": { - "version": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.18.0.tgz", - "integrity": "sha1-33zymR/gRvRBY9zRENXKQ7xlK50=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-plugin-transform-es2015-for-of": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", + "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0" } - } - } - }, - "babel-polyfill": { - "version": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.20.0.tgz", - "integrity": "sha1-3ko3EAYTniCZCqwL42fTmDMSBOc=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-plugin-transform-es2015-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", + "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" } - } - } - }, - "babel-preset-es2015": { - "version": "https://registry.npmjs.org/babel-preset-es2015/-/babel-preset-es2015-6.18.0.tgz", - "integrity": "sha1-uMcN+E7JSMQ9zyv3cOmI632ogxI=", - "requires": { - "babel-plugin-check-es2015-constants": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.8.0.tgz", - "babel-plugin-transform-es2015-arrow-functions": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.8.0.tgz", - "babel-plugin-transform-es2015-block-scoped-functions": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.8.0.tgz", - "babel-plugin-transform-es2015-block-scoping": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.21.0.tgz", - "babel-plugin-transform-es2015-classes": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.18.0.tgz", - "babel-plugin-transform-es2015-computed-properties": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.8.0.tgz", - "babel-plugin-transform-es2015-destructuring": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.19.0.tgz", - "babel-plugin-transform-es2015-duplicate-keys": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.8.0.tgz", - "babel-plugin-transform-es2015-for-of": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.18.0.tgz", - "babel-plugin-transform-es2015-function-name": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.9.0.tgz", - "babel-plugin-transform-es2015-literals": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.8.0.tgz", - "babel-plugin-transform-es2015-modules-amd": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.18.0.tgz", - "babel-plugin-transform-es2015-modules-commonjs": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.18.0.tgz", - "babel-plugin-transform-es2015-modules-systemjs": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.19.0.tgz", - "babel-plugin-transform-es2015-modules-umd": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.18.0.tgz", - "babel-plugin-transform-es2015-object-super": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.8.0.tgz", - "babel-plugin-transform-es2015-parameters": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.21.0.tgz", - "babel-plugin-transform-es2015-shorthand-properties": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.18.0.tgz", - "babel-plugin-transform-es2015-spread": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.8.0.tgz", - "babel-plugin-transform-es2015-sticky-regex": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.8.0.tgz", - "babel-plugin-transform-es2015-template-literals": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.8.0.tgz", - "babel-plugin-transform-es2015-typeof-symbol": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.18.0.tgz", - "babel-plugin-transform-es2015-unicode-regex": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.11.0.tgz", - "babel-plugin-transform-regenerator": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.21.0.tgz" - } - }, - "babel-preset-react": { - "version": "https://registry.npmjs.org/babel-preset-react/-/babel-preset-react-6.16.0.tgz", - "integrity": "sha1-qhF9YN4JKGB+NDxIKJBuRmGCQxY=", - "requires": { - "babel-plugin-syntax-flow": "https://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz", - "babel-plugin-syntax-jsx": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", - "babel-plugin-transform-flow-strip-types": "https://registry.npmjs.org/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.21.0.tgz", - "babel-plugin-transform-react-display-name": "https://registry.npmjs.org/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.8.0.tgz", - "babel-plugin-transform-react-jsx": "https://registry.npmjs.org/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.8.0.tgz", - "babel-plugin-transform-react-jsx-self": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.11.0.tgz", - "babel-plugin-transform-react-jsx-source": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.9.0.tgz" - } - }, - "babel-preset-stage-2": { - "version": "https://registry.npmjs.org/babel-preset-stage-2/-/babel-preset-stage-2-6.18.0.tgz", - "integrity": "sha1-nre/mo6RxoJg1bp1AEk8qq2ktbU=", - "requires": { - "babel-plugin-syntax-dynamic-import": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz", - "babel-plugin-transform-class-properties": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.19.0.tgz", - "babel-plugin-transform-decorators": "https://registry.npmjs.org/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.13.0.tgz", - "babel-preset-stage-3": "https://registry.npmjs.org/babel-preset-stage-3/-/babel-preset-stage-3-6.17.0.tgz" - } - }, - "babel-preset-stage-3": { - "version": "https://registry.npmjs.org/babel-preset-stage-3/-/babel-preset-stage-3-6.17.0.tgz", - "integrity": "sha1-tmOORttukeP4iQE9jOFDkXxoXjk=", - "requires": { - "babel-plugin-syntax-trailing-function-commas": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.20.0.tgz", - "babel-plugin-transform-async-generator-functions": "https://registry.npmjs.org/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.17.0.tgz", - "babel-plugin-transform-async-to-generator": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.16.0.tgz", - "babel-plugin-transform-exponentiation-operator": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.8.0.tgz", - "babel-plugin-transform-object-rest-spread": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.20.2.tgz" - } - }, - "babel-register": { - "version": "https://registry.npmjs.org/babel-register/-/babel-register-6.18.0.tgz", - "integrity": "sha1-iS4uA4ZQeN2QrSxxURHsREmzKmg=", - "requires": { - "babel-core": "https://registry.npmjs.org/babel-core/-/babel-core-6.21.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "home-or-tmp": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "source-map-support": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.6.tgz" - }, - "dependencies": { - "babel-core": { - "version": "https://registry.npmjs.org/babel-core/-/babel-core-6.21.0.tgz", - "integrity": "sha1-dVJUgMIcgD+CbvOGfSLBnwgKNyQ=", - "requires": { - "babel-code-frame": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.20.0.tgz", - "babel-generator": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.21.0.tgz", - "babel-helpers": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.16.0.tgz", - "babel-messages": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.8.0.tgz", - "babel-register": "https://registry.npmjs.org/babel-register/-/babel-register-6.18.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-template": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz", - "babel-traverse": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.21.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz", - "babylon": "https://registry.npmjs.org/babylon/-/babylon-6.14.1.tgz", - "convert-source-map": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.3.0.tgz", - "debug": "https://registry.npmjs.org/debug/-/debug-2.4.4.tgz", - "json5": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", - "path-is-absolute": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "private": "https://registry.npmjs.org/private/-/private-0.1.6.tgz", - "slash": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz" + }, + "babel-plugin-transform-es2015-literals": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", + "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", + "requires": { + "babel-runtime": "6.26.0" } }, - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + "babel-plugin-transform-es2015-modules-amd": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", + "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-plugin-transform-es2015-modules-commonjs": "6.26.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" } }, - "json5": { - "version": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" + "babel-plugin-transform-es2015-modules-commonjs": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz", + "integrity": "sha1-DYOUApt9xqvhqX7xgeAHWN0uXYo=", + "requires": { + "babel-plugin-transform-strict-mode": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-types": "6.26.0" + } }, - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "integrity": "sha1-NKMFW6vgTOQkZ7YH1wAHLH/2v0I=" + "babel-plugin-transform-es2015-modules-systemjs": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", + "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", + "requires": { + "babel-helper-hoist-variables": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } }, - "minimatch": { - "version": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha1-Kk5AkLlrLbBqnX3wEFWmKnfJt3Q=", + "babel-plugin-transform-es2015-modules-umd": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", + "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", "requires": { - "brace-expansion": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.6.tgz" + "babel-plugin-transform-es2015-modules-amd": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" } - } - } - }, - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-5.8.38.tgz", - "integrity": "sha1-HAsC62MxL18If/IEUIJ7QlydTBk=", - "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz" - }, - "dependencies": { - "core-js": { - "version": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", - "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" - } - } - }, - "babel-template": { - "version": "https://registry.npmjs.org/babel-template/-/babel-template-6.16.0.tgz", - "integrity": "sha1-4UndGp8Do1+BfdvE0EgZiOfryMo=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-traverse": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.21.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz", - "babylon": "https://registry.npmjs.org/babylon/-/babylon-6.14.1.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + }, + "babel-plugin-transform-es2015-object-super": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", + "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-helper-replace-supers": "6.24.1", + "babel-runtime": "6.26.0" } }, - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "integrity": "sha1-NKMFW6vgTOQkZ7YH1wAHLH/2v0I=" - } - } - }, - "babel-traverse": { - "version": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.21.0.tgz", - "integrity": "sha1-acY2WATxpPaesSE/hbAKgYuMIa0=", - "requires": { - "babel-code-frame": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.20.0.tgz", - "babel-messages": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.8.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz", - "babylon": "https://registry.npmjs.org/babylon/-/babylon-6.14.1.tgz", - "debug": "https://registry.npmjs.org/debug/-/debug-2.4.4.tgz", - "globals": "https://registry.npmjs.org/globals/-/globals-9.14.0.tgz", - "invariant": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + "babel-plugin-transform-es2015-parameters": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", + "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-helper-call-delegate": "6.24.1", + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" } }, - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "integrity": "sha1-NKMFW6vgTOQkZ7YH1wAHLH/2v0I=" - } - } - }, - "babel-types": { - "version": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz", - "integrity": "sha1-MUuSFoiR7204Brf3qRf9+HwRpLI=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "esutils": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "to-fast-properties": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.2.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + "babel-plugin-transform-es2015-shorthand-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", + "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" } }, - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "integrity": "sha1-NKMFW6vgTOQkZ7YH1wAHLH/2v0I=" - } - } - }, - "babelify": { - "version": "https://registry.npmjs.org/babelify/-/babelify-7.3.0.tgz", - "integrity": "sha1-qlau3nBn/XvVSWZu4W3ChQh+iOU=", - "requires": { - "babel-core": "https://registry.npmjs.org/babel-core/-/babel-core-6.7.7.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz" - } - }, - "babylon": { - "version": "https://registry.npmjs.org/babylon/-/babylon-6.14.1.tgz", - "integrity": "sha1-lWJ1+rcnU62bNDXXr+WPi/CimBU=" - }, - "balanced-match": { - "version": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", - "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=" - }, - "base64-js": { - "version": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.0.tgz", - "integrity": "sha1-o5mS1yNYSBGYK+XikLtqU9hnAPE=" - }, - "beeper": { - "version": "https://registry.npmjs.org/beeper/-/beeper-1.1.1.tgz", - "integrity": "sha1-5tXqjF2tABMEpwsiY4RH9pyy+Ak=" - }, - "bin-build": { - "version": "https://registry.npmjs.org/bin-build/-/bin-build-2.2.0.tgz", - "integrity": "sha1-EfjdYfcP/Por3KpbRvXo/t1CIcw=", - "requires": { - "archive-type": "https://registry.npmjs.org/archive-type/-/archive-type-3.2.0.tgz", - "decompress": "https://registry.npmjs.org/decompress/-/decompress-3.0.0.tgz", - "download": "https://registry.npmjs.org/download/-/download-4.4.3.tgz", - "exec-series": "https://registry.npmjs.org/exec-series/-/exec-series-1.0.3.tgz", - "rimraf": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz", - "tempfile": "https://registry.npmjs.org/tempfile/-/tempfile-1.1.1.tgz", - "url-regex": "https://registry.npmjs.org/url-regex/-/url-regex-3.2.0.tgz" - }, - "dependencies": { - "tempfile": { - "version": "https://registry.npmjs.org/tempfile/-/tempfile-1.1.1.tgz", - "integrity": "sha1-W8xOrsxKsscH2LwR2ZzMmiyyh/I=", + "babel-plugin-transform-es2015-spread": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", + "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", "requires": { - "os-tmpdir": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "uuid": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz" + "babel-runtime": "6.26.0" } }, - "uuid": { - "version": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", - "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=" - } - } - }, - "bin-check": { - "version": "https://registry.npmjs.org/bin-check/-/bin-check-2.0.0.tgz", - "integrity": "sha1-hvjm9CU4k99g3DFpV/WvAqywWTA=", - "requires": { - "executable": "https://registry.npmjs.org/executable/-/executable-1.1.0.tgz" - } - }, - "bin-version": { - "version": "https://registry.npmjs.org/bin-version/-/bin-version-1.0.4.tgz", - "integrity": "sha1-nrSY7m/Xb3q5p8FgQ2+JV5Q1144=", - "requires": { - "find-versions": "https://registry.npmjs.org/find-versions/-/find-versions-1.2.1.tgz" - } - }, - "bin-version-check": { - "version": "https://registry.npmjs.org/bin-version-check/-/bin-version-check-2.1.0.tgz", - "integrity": "sha1-5OXfKQuQaffRETJAMe/BP90RpbA=", - "requires": { - "bin-version": "https://registry.npmjs.org/bin-version/-/bin-version-1.0.4.tgz", - "minimist": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "semver": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz", - "semver-truncate": "https://registry.npmjs.org/semver-truncate/-/semver-truncate-1.1.2.tgz" - }, - "dependencies": { - "minimist": { - "version": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - } - } - }, - "bin-wrapper": { - "version": "https://registry.npmjs.org/bin-wrapper/-/bin-wrapper-3.0.2.tgz", - "integrity": "sha1-Z9MwYmLksaXy+I7iNGT2plVneus=", - "requires": { - "bin-check": "https://registry.npmjs.org/bin-check/-/bin-check-2.0.0.tgz", - "bin-version-check": "https://registry.npmjs.org/bin-version-check/-/bin-version-check-2.1.0.tgz", - "download": "https://registry.npmjs.org/download/-/download-4.4.3.tgz", - "each-async": "https://registry.npmjs.org/each-async/-/each-async-1.1.1.tgz", - "lazy-req": "https://registry.npmjs.org/lazy-req/-/lazy-req-1.1.0.tgz", - "os-filter-obj": "https://registry.npmjs.org/os-filter-obj/-/os-filter-obj-1.0.3.tgz" - } - }, - "binary-extensions": { - "version": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.8.0.tgz", - "integrity": "sha1-SOyNFt9Dd+rl+liEaCSAr02Vx3Q=" - }, - "bl": { - "version": "https://registry.npmjs.org/bl/-/bl-0.9.5.tgz", - "integrity": "sha1-wGt5evCF6gC8Unr8jvzxHeIjIFQ=", - "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz" - }, - "dependencies": { - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + "babel-plugin-transform-es2015-sticky-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", + "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", + "requires": { + "babel-helper-regex": "6.26.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "babel-plugin-transform-es2015-template-literals": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", + "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + "babel-runtime": "6.26.0" } - } - } - }, - "bn.js": { - "version": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=" - }, - "bootstrap": { - "version": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.3.7.tgz", - "integrity": "sha1-WjiTlFSfIzMIdaOxUGVldPip63E=" - }, - "bower": { - "version": "https://registry.npmjs.org/bower/-/bower-1.8.0.tgz", - "integrity": "sha1-Vdvr7wrZFVOC2enT5JfBNyNFtEo=" - }, - "brace-expansion": { - "version": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.6.tgz", - "integrity": "sha1-cZfX6qm4fmSDkOph/GbIRCdCDfk=", - "requires": { - "balanced-match": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", - "concat-map": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" - } - }, - "braces": { - "version": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", - "requires": { - "expand-range": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", - "preserve": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "repeat-element": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz" - } - }, - "brorand": { - "version": "https://registry.npmjs.org/brorand/-/brorand-1.0.6.tgz", - "integrity": "sha1-QChwa5FfkfezSaLgvzw3YDnSFuU=" - }, - "brout": { - "version": "https://registry.npmjs.org/brout/-/brout-1.2.0.tgz", - "integrity": "sha1-B3Hav3ltMS8KfB8SgeAPdmDPcC8=", - "dev": true, - "requires": { - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz" - } - }, - "browser-pack": { - "version": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.0.2.tgz", - "integrity": "sha1-+GzWzvT1MAyOY+B6TVEvZfv/RTE=", - "requires": { - "combine-source-map": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.7.2.tgz", - "defined": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", - "JSONStream": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "umd": "https://registry.npmjs.org/umd/-/umd-3.0.1.tgz" - } - }, - "browser-reload": { - "version": "https://registry.npmjs.org/browser-reload/-/browser-reload-1.1.0.tgz", - "integrity": "sha1-UTwetc6RP+NqC6GOE5CcsHtCWpI=", - "dev": true - }, - "browser-resolve": { - "version": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.2.tgz", - "integrity": "sha1-j/CbCixCFxihBRwmCzLkj0QpOM4=", - "requires": { - "resolve": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz" - }, - "dependencies": { - "resolve": { - "version": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=" - } - } - }, - "browserify": { - "version": "https://registry.npmjs.org/browserify/-/browserify-13.1.1.tgz", - "integrity": "sha1-cqIxDi9wbth9uSnPDuc6Xhldm7A=", - "requires": { - "assert": "https://registry.npmjs.org/assert/-/assert-1.3.0.tgz", - "browser-pack": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.0.2.tgz", - "browser-resolve": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.2.tgz", - "browserify-zlib": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", - "buffer": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", - "cached-path-relative": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.0.0.tgz", - "concat-stream": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", - "console-browserify": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", - "constants-browserify": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "crypto-browserify": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.11.0.tgz", - "defined": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", - "deps-sort": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.0.tgz", - "domain-browser": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.7.tgz", - "duplexer2": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "events": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", - "glob": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "has": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", - "htmlescape": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz", - "https-browserify": "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.1.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "insert-module-globals": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.0.1.tgz", - "JSONStream": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.0.tgz", - "labeled-stream-splicer": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.0.tgz", - "module-deps": "https://registry.npmjs.org/module-deps/-/module-deps-4.0.8.tgz", - "os-browserify": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.1.2.tgz", - "parents": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz", - "path-browserify": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", - "process": "https://registry.npmjs.org/process/-/process-0.11.9.tgz", - "punycode": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "querystring-es3": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "read-only-stream": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz", - "resolve": "https://registry.npmjs.org/resolve/-/resolve-1.2.0.tgz", - "shasum": "https://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz", - "shell-quote": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", - "stream-browserify": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", - "stream-http": "https://registry.npmjs.org/stream-http/-/stream-http-2.5.0.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "subarg": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", - "syntax-error": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.1.6.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "timers-browserify": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz", - "tty-browserify": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "url": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "util": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "vm-browserify": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" - }, - "dependencies": { - "glob": { - "version": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + }, + "babel-plugin-transform-es2015-typeof-symbol": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", + "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", "requires": { - "inflight": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", - "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "path-is-absolute": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" + "babel-runtime": "6.26.0" } - } - } - }, - "browserify-aes": { - "version": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.0.6.tgz", - "integrity": "sha1-Xncl297x/Vkw1OurSFZ85FHEigo=", - "requires": { - "buffer-xor": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "cipher-base": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.3.tgz", - "create-hash": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.2.tgz", - "evp_bytestokey": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.0.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" - } - }, - "browserify-cipher": { - "version": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.0.tgz", - "integrity": "sha1-mYgkSHS/XtTijalWZtzWasj8Njo=", - "requires": { - "browserify-aes": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.0.6.tgz", - "browserify-des": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.0.tgz", - "evp_bytestokey": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.0.tgz" - } - }, - "browserify-des": { - "version": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.0.tgz", - "integrity": "sha1-2qJ3cXRwki7S/hhZQRihdUOXId0=", - "requires": { - "cipher-base": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.3.tgz", - "des.js": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" - } - }, - "browserify-rsa": { - "version": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", - "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "randombytes": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.3.tgz" - } - }, - "browserify-shim": { - "version": "https://registry.npmjs.org/browserify-shim/-/browserify-shim-3.8.12.tgz", - "integrity": "sha1-4sl6E0xesSLiu09hcHoH9vc/8JI=", - "requires": { - "exposify": "https://registry.npmjs.org/exposify/-/exposify-0.4.3.tgz", - "mothership": "https://registry.npmjs.org/mothership/-/mothership-0.2.0.tgz", - "rename-function-calls": "https://registry.npmjs.org/rename-function-calls/-/rename-function-calls-0.1.1.tgz", - "resolve": "https://registry.npmjs.org/resolve/-/resolve-0.6.3.tgz", - "through": "https://registry.npmjs.org/through/-/through-2.3.8.tgz" - }, - "dependencies": { - "resolve": { - "version": "https://registry.npmjs.org/resolve/-/resolve-0.6.3.tgz", - "integrity": "sha1-3ZV5gufnNt699TtYpN2RdUV13UY=" - } - } - }, - "browserify-sign": { - "version": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.0.tgz", - "integrity": "sha1-EHc5EMPCBtVCCkaq2GlPgguFlo8=", - "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "browserify-rsa": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "create-hash": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.2.tgz", - "create-hmac": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.4.tgz", - "elliptic": "https://registry.npmjs.org/elliptic/-/elliptic-6.3.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "parse-asn1": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.0.0.tgz" - } - }, - "browserify-zlib": { - "version": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", - "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=", - "requires": { - "pako": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz" - } - }, - "buffer": { - "version": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", - "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", - "requires": { - "base64-js": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.0.tgz", - "ieee754": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" - } - }, - "buffer-crc32": { - "version": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" - }, - "buffer-shims": { - "version": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz", - "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=" - }, - "buffer-to-vinyl": { - "version": "https://registry.npmjs.org/buffer-to-vinyl/-/buffer-to-vinyl-1.1.0.tgz", - "integrity": "sha1-APFfruOreh3aLN5tkSG//dB7ImI=", - "requires": { - "file-type": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz", - "uuid": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", - "vinyl": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz" - }, - "dependencies": { - "uuid": { - "version": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", - "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=" }, - "vinyl": { - "version": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", - "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", + "babel-plugin-transform-es2015-unicode-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", + "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", "requires": { - "clone": "https://registry.npmjs.org/clone/-/clone-1.0.2.tgz", - "clone-stats": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", - "replace-ext": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz" + "babel-helper-regex": "6.26.0", + "babel-runtime": "6.26.0", + "regexpu-core": "2.0.0" } - } - } - }, - "buffer-xor": { - "version": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" - }, - "bufferstreams": { - "version": "https://registry.npmjs.org/bufferstreams/-/bufferstreams-1.0.1.tgz", - "integrity": "sha1-z7GtlWjTujz+k1upq92VLeiKqyo=", - "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz" - }, - "dependencies": { - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "babel-plugin-transform-regenerator": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", + "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", + "requires": { + "regenerator-transform": "0.10.1" + } + }, + "babel-plugin-transform-strict-mode": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", + "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "requires": { + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "lodash": "4.17.4" + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "requires": { + "babel-code-frame": "6.26.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "debug": "2.6.9", + "globals": "9.18.0", + "invariant": "2.2.2", + "lodash": "4.17.4" + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "requires": { + "babel-runtime": "6.26.0", + "esutils": "2.0.2", + "lodash": "4.17.4", + "to-fast-properties": "1.0.3" + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "core-js": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", + "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + "requires": { + "loose-envify": "1.3.1" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=" + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==" + }, + "regenerate": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz", + "integrity": "sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg==" + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + }, + "regenerator-transform": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", + "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "private": "0.1.8" + } + }, + "regexpu-core": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", + "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", + "requires": { + "regenerate": "1.3.3", + "regjsgen": "0.2.0", + "regjsparser": "0.1.5" + } + }, + "regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=" + }, + "regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "requires": { + "jsesc": "0.5.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + "ansi-regex": "2.1.1" } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" } } }, - "builtin-modules": { - "version": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=" - }, - "builtin-status-codes": { - "version": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-2.0.0.tgz", - "integrity": "sha1-byIAO6rPADzNKHr+aHIVH93FhXk=" - }, - "cached-path-relative": { - "version": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.0.0.tgz", - "integrity": "sha1-0QlMV3+9mouL1DyWr2GIqiBdBfQ=" - }, - "camelcase": { - "version": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=" - }, - "camelcase-keys": { - "version": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "requires": { - "camelcase": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "map-obj": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz" - } - }, - "capture-stack-trace": { - "version": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz", - "integrity": "sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0=" - }, - "caw": { - "version": "https://registry.npmjs.org/caw/-/caw-1.2.0.tgz", - "integrity": "sha1-/7Im/n78VHKI3GLuPpcHPCEtEDQ=", + "babel-preset-flow": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-preset-flow/-/babel-preset-flow-6.23.0.tgz", + "integrity": "sha1-5xIYiHCFrpoktb5Baa/7WZgWxJ0=", "requires": { - "get-proxy": "https://registry.npmjs.org/get-proxy/-/get-proxy-1.1.0.tgz", - "is-obj": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", - "tunnel-agent": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz" + "babel-plugin-transform-flow-strip-types": "6.22.0" }, "dependencies": { - "object-assign": { - "version": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", - "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=" + "babel-plugin-syntax-flow": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz", + "integrity": "sha1-TDqyCiryaqIM0lmVw5jE63AxDI0=" + }, + "babel-plugin-transform-flow-strip-types": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz", + "integrity": "sha1-hMtnKTXUNxT9wyvOhFaNh0Qc988=", + "requires": { + "babel-plugin-syntax-flow": "6.18.0", + "babel-runtime": "6.26.0" + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "requires": { + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" + } + }, + "core-js": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", + "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=" + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" } } }, - "center-align": { - "version": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", - "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", - "requires": { - "align-text": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", - "lazy-cache": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz" - } - }, - "chalk": { - "version": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "requires": { - "ansi-styles": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "has-ansi": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "supports-color": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" - } - }, - "chokidar": { - "version": "https://registry.npmjs.org/chokidar/-/chokidar-1.6.1.tgz", - "integrity": "sha1-L0RHq16W5Q+z14n9kNTHLg5McMI=", - "requires": { - "anymatch": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.0.tgz", - "async-each": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", - "fsevents": "https://registry.npmjs.org/fsevents/-/fsevents-1.0.15.tgz", - "glob-parent": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "is-binary-path": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "is-glob": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "path-is-absolute": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "readdirp": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz" - } - }, - "cipher-base": { - "version": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.3.tgz", - "integrity": "sha1-7qvxlEGc6QDaMBjCB9IS8qbfCgc=", - "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" - } - }, - "clap": { - "version": "https://registry.npmjs.org/clap/-/clap-1.1.2.tgz", - "integrity": "sha1-MWVFvyIikiWizsqmgkzS9WqXCe0=", - "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz" - } - }, - "clean-css": { - "version": "https://registry.npmjs.org/clean-css/-/clean-css-3.4.22.tgz", - "integrity": "sha1-2zIwZPdSAod4IztYxUzYU1+GCJI=", + "babel-preset-react": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-react/-/babel-preset-react-6.24.1.tgz", + "integrity": "sha1-umnfrqRfw+xjm2pOzqbhdwLJE4A=", "requires": { - "commander": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz" + "babel-plugin-syntax-jsx": "6.18.0", + "babel-plugin-transform-react-display-name": "6.25.0", + "babel-plugin-transform-react-jsx": "6.24.1", + "babel-plugin-transform-react-jsx-self": "6.22.0", + "babel-plugin-transform-react-jsx-source": "6.22.0", + "babel-preset-flow": "6.23.0" }, "dependencies": { - "commander": { - "version": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", - "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", + "babel-helper-builder-react-jsx": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.26.0.tgz", + "integrity": "sha1-Of+DE7dci2Xc7/HzHTg+D/KkCKA=", "requires": { - "graceful-readlink": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz" + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "esutils": "2.0.2" } }, - "source-map": { - "version": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", - "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "babel-plugin-syntax-jsx": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", + "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=" + }, + "babel-plugin-transform-react-display-name": { + "version": "6.25.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.25.0.tgz", + "integrity": "sha1-Z+K/Hx6ck6sI25Z5LgU5K/LMKNE=", + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-react-jsx": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.24.1.tgz", + "integrity": "sha1-hAoCjn30YN/DotKfDA2R9jduZqM=", + "requires": { + "babel-helper-builder-react-jsx": "6.26.0", + "babel-plugin-syntax-jsx": "6.18.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-react-jsx-self": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.22.0.tgz", + "integrity": "sha1-322AqdomEqEh5t3XVYvL7PBuY24=", + "requires": { + "babel-plugin-syntax-jsx": "6.18.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-react-jsx-source": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.22.0.tgz", + "integrity": "sha1-ZqwSFT9c0tF7PBkmj0vwGX9E7NY=", + "requires": { + "babel-plugin-syntax-jsx": "6.18.0", + "babel-runtime": "6.26.0" + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", "requires": { - "amdefine": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz" + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "requires": { + "babel-runtime": "6.26.0", + "esutils": "2.0.2", + "lodash": "4.17.4", + "to-fast-properties": "1.0.3" + } + }, + "core-js": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", + "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=" + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" } } }, - "cli": { - "version": "https://registry.npmjs.org/cli/-/cli-1.0.1.tgz", - "integrity": "sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ=", - "dev": true, - "requires": { - "exit": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz" - } - }, - "cliui": { - "version": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "babel-preset-stage-2": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz", + "integrity": "sha1-2eKWD7PXEYfw5k7sYrwHdnIZvcE=", "requires": { - "center-align": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", - "right-align": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", - "wordwrap": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz" + "babel-plugin-syntax-dynamic-import": "6.18.0", + "babel-plugin-transform-class-properties": "6.24.1", + "babel-plugin-transform-decorators": "6.24.1", + "babel-preset-stage-3": "6.24.1" }, "dependencies": { - "wordwrap": { - "version": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=" - } - } - }, - "clone": { - "version": "https://registry.npmjs.org/clone/-/clone-1.0.2.tgz", - "integrity": "sha1-Jgt6meux7f4kdTgXX3gyQ8sZ0Uk=" - }, - "clone-stats": { - "version": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", - "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=" - }, - "co": { - "version": "https://registry.npmjs.org/co/-/co-3.1.0.tgz", - "integrity": "sha1-TqVOpaCJOBUxheFSEMaNkJK8G3g=" - }, - "coa": { - "version": "https://registry.npmjs.org/coa/-/coa-1.0.1.tgz", - "integrity": "sha1-f5WTRs/IcZ4/cjPNaFKFSnxn2KM=", - "requires": { - "q": "https://registry.npmjs.org/q/-/q-1.4.1.tgz" - } - }, - "colors": { - "version": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=" - }, - "combine-source-map": { - "version": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.7.2.tgz", - "integrity": "sha1-CHAxKFazB6h8xKxIbzqaYq7MwJ4=", - "requires": { - "convert-source-map": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz", - "inline-source-map": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz", - "lodash.memoize": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz" - }, - "dependencies": { - "convert-source-map": { - "version": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz", - "integrity": "sha1-SCnId+n+SbMWHzvzZziI4gRpmGA=" - } - } - }, - "commander": { - "version": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", - "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", - "requires": { - "graceful-readlink": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz" - } - }, - "concat-map": { - "version": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "concat-stream": { - "version": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", - "integrity": "sha1-cIl4Yk2FavQaWnQd790mHadSwmY=", - "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "typedarray": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz" - }, - "dependencies": { - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", - "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "process-nextick-args": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "util-deprecate": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" - } - } - } - }, - "console-browserify": { - "version": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", - "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", - "requires": { - "date-now": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz" - } - }, - "console-stream": { - "version": "https://registry.npmjs.org/console-stream/-/console-stream-0.1.1.tgz", - "integrity": "sha1-oJX+B7IEZZVfL6/Si11yvM2UnUQ=" - }, - "consolify": { - "version": "https://registry.npmjs.org/consolify/-/consolify-2.2.0.tgz", - "integrity": "sha1-YiHbEHSgjYQP8wpcDLvzxgmnT4w=", - "dev": true, - "requires": { - "ansi_up": "https://registry.npmjs.org/ansi_up/-/ansi_up-1.3.0.tgz", - "brout": "https://registry.npmjs.org/brout/-/brout-1.2.0.tgz", - "browser-reload": "https://registry.npmjs.org/browser-reload/-/browser-reload-1.1.0.tgz", - "source-mapper": "https://registry.npmjs.org/source-mapper/-/source-mapper-2.0.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz" - } - }, - "constants-browserify": { - "version": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" - }, - "convert-source-map": { - "version": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.3.0.tgz", - "integrity": "sha1-6fPpxuJyjvwmdmlqcOs4L3MQamc=" - }, - "core-js": { - "version": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "integrity": "sha1-TekR5mew6ukSTjQlS1OupvxhjT4=" - }, - "core-util-is": { - "version": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "coverify": { - "version": "https://registry.npmjs.org/coverify/-/coverify-1.4.1.tgz", - "integrity": "sha1-s+SwfsHOIJwOrJmliqvfZ9i2JyY=", - "dev": true, - "requires": { - "convert-source-map": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.3.0.tgz", - "falafel": "https://registry.npmjs.org/falafel/-/falafel-1.2.0.tgz", - "minimist": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "slash": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", - "split2": "https://registry.npmjs.org/split2/-/split2-0.2.1.tgz", - "stream-combiner2": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz" - }, - "dependencies": { - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" }, - "minimist": { - "version": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", - "dev": true, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.2" } }, - "source-map": { - "version": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", - "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", - "dev": true, + "babel-helper-bindify-decorators": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz", + "integrity": "sha1-FMGeXxQte0fxmlJDHlKxzLxAozA=", "requires": { - "amdefine": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz" + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" } }, - "through2": { - "version": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", - "dev": true, + "babel-helper-builder-binary-assignment-operator-visitor": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", + "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" + "babel-helper-explode-assignable-expression": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" } - } - } - }, - "create-ecdh": { - "version": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz", - "integrity": "sha1-iIxyNZbN92EvZJgjPuvXo1MBc30=", - "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "elliptic": "https://registry.npmjs.org/elliptic/-/elliptic-6.3.2.tgz" - } - }, - "create-error-class": { - "version": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", - "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", - "requires": { - "capture-stack-trace": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz" - } - }, - "create-hash": { - "version": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.2.tgz", - "integrity": "sha1-USEAYte7dHn2xlu0GpIgix1hq60=", - "requires": { - "cipher-base": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.3.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "ripemd160": "https://registry.npmjs.org/ripemd160/-/ripemd160-1.0.1.tgz", - "sha.js": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.8.tgz" - } - }, - "create-hmac": { - "version": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.4.tgz", - "integrity": "sha1-0/tLolPriz9W456i+8uK90e9MXA=", - "requires": { - "create-hash": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" - } - }, - "cropit": { - "version": "https://registry.npmjs.org/cropit/-/cropit-0.5.1.tgz", - "integrity": "sha1-w6ImPY6tRVEHEYVL8jYTuq6AmAU=", - "requires": { - "jquery": "https://registry.npmjs.org/jquery/-/jquery-2.2.4.tgz" - } - }, - "cross-spawn": { - "version": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-2.2.3.tgz", - "integrity": "sha1-+sViAt/T0N2GF3jy2iA79DS7ghw=", - "dev": true, - "requires": { - "cross-spawn-async": "https://registry.npmjs.org/cross-spawn-async/-/cross-spawn-async-2.2.5.tgz", - "spawn-sync": "https://registry.npmjs.org/spawn-sync/-/spawn-sync-1.0.15.tgz" - } - }, - "cross-spawn-async": { - "version": "https://registry.npmjs.org/cross-spawn-async/-/cross-spawn-async-2.2.5.tgz", - "integrity": "sha1-hF/wwINKPe2dFg2sptOQkGuyiMw=", - "dev": true, - "requires": { - "lru-cache": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.0.2.tgz", - "which": "https://registry.npmjs.org/which/-/which-1.2.12.tgz" - }, - "dependencies": { - "lru-cache": { - "version": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.0.2.tgz", - "integrity": "sha1-HRdnnAac2l0ECZGgnbwsDbN35V4=", - "dev": true, + }, + "babel-helper-explode-assignable-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", + "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", "requires": { - "pseudomap": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "yallist": "https://registry.npmjs.org/yallist/-/yallist-2.0.0.tgz" + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" } - } - } - }, - "crypto-browserify": { - "version": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.11.0.tgz", - "integrity": "sha1-NlKgkGq5sqfgw85mpAjpV6JIVSI=", - "requires": { - "browserify-cipher": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.0.tgz", - "browserify-sign": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.0.tgz", - "create-ecdh": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz", - "create-hash": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.2.tgz", - "create-hmac": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.4.tgz", - "diffie-hellman": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "pbkdf2": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.9.tgz", - "public-encrypt": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.0.tgz", - "randombytes": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.3.tgz" - } - }, - "css": { - "version": "https://registry.npmjs.org/css/-/css-2.2.1.tgz", - "integrity": "sha1-c6TIHehdtmTU7mdPfUcIXjstVdw=", - "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "source-map-resolve": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.3.1.tgz", - "urix": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz" - }, - "dependencies": { - "source-map": { - "version": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + }, + "babel-helper-explode-class": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz", + "integrity": "sha1-fcKjkQ3uAHBW4eMdZAztPVTqqes=", "requires": { - "amdefine": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz" + "babel-helper-bindify-decorators": "6.24.1", + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" } - } - } - }, - "csso": { - "version": "https://registry.npmjs.org/csso/-/csso-2.2.1.tgz", - "integrity": "sha1-Ufu1NH5Q6B5u1RZopISQrm/ir+I=", - "requires": { - "clap": "https://registry.npmjs.org/clap/-/clap-1.1.2.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz" - } - }, - "currently-unhandled": { - "version": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "requires": { - "array-find-index": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz" - } - }, - "date-now": { - "version": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", - "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=" - }, - "dateformat": { - "version": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", - "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=", - "requires": { - "get-stdin": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "meow": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz" - } - }, - "deap": { - "version": "https://registry.npmjs.org/deap/-/deap-1.0.0.tgz", - "integrity": "sha1-sUi/gkMKJ2mbdIOgPra2dYW/yIg=" - }, - "debug": { - "version": "https://registry.npmjs.org/debug/-/debug-2.4.4.tgz", - "integrity": "sha1-wE0XplTpICRkgD8JYVP3Cm8x9L4=", - "requires": { - "ms": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz" - } - }, - "debug-fabulous": { - "version": "https://registry.npmjs.org/debug-fabulous/-/debug-fabulous-0.0.4.tgz", - "integrity": "sha1-+gccXYdIRoVCSAdCHKSxawsaB2M=", - "requires": { - "debug": "https://registry.npmjs.org/debug/-/debug-2.4.4.tgz", - "lazy-debug-legacy": "https://registry.npmjs.org/lazy-debug-legacy/-/lazy-debug-legacy-0.0.1.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz" - } - }, - "decamelize": { - "version": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" - }, - "decompress": { - "version": "https://registry.npmjs.org/decompress/-/decompress-3.0.0.tgz", - "integrity": "sha1-rx3VDQbjv8QyRh033hGzjA2ZG+0=", - "requires": { - "buffer-to-vinyl": "https://registry.npmjs.org/buffer-to-vinyl/-/buffer-to-vinyl-1.1.0.tgz", - "concat-stream": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", - "decompress-tar": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-3.1.0.tgz", - "decompress-tarbz2": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-3.1.0.tgz", - "decompress-targz": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-3.1.0.tgz", - "decompress-unzip": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-3.4.0.tgz", - "stream-combiner2": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", - "vinyl-assign": "https://registry.npmjs.org/vinyl-assign/-/vinyl-assign-1.2.1.tgz", - "vinyl-fs": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-2.4.4.tgz" - }, - "dependencies": { - "glob": { - "version": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", "requires": { - "inflight": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", - "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "path-is-absolute": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" } }, - "glob-parent": { - "version": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", "requires": { - "is-glob": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "path-dirname": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz" + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" } }, - "glob-stream": { - "version": "https://registry.npmjs.org/glob-stream/-/glob-stream-5.3.5.tgz", - "integrity": "sha1-pVZlqajM3EGRWofHAeMtTgFvrSI=", + "babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", + "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", "requires": { - "extend": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz", - "glob": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "glob-parent": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "micromatch": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "ordered-read-streams": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "to-absolute-glob": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-0.1.1.tgz", - "unique-stream": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.2.1.tgz" - }, - "dependencies": { - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", - "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" - } - }, - "through2": { - "version": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", - "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" - } - } + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" } }, - "gulp-sourcemaps": { - "version": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-1.6.0.tgz", - "integrity": "sha1-uG/zSdgBzrVuHZ59x7vLS33uYAw=", + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", "requires": { - "convert-source-map": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.3.0.tgz", - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "strip-bom": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "vinyl": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz" + "babel-runtime": "6.26.0" } }, - "is-extglob": { - "version": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + "babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=" }, - "is-glob": { - "version": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "requires": { - "is-extglob": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" - } + "babel-plugin-syntax-async-generators": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz", + "integrity": "sha1-a8lj67FuzLrmuStZbrfzXDQqi5o=" }, - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + "babel-plugin-syntax-decorators": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz", + "integrity": "sha1-MSVjtNvePMgGzuPkFszurd0RrAs=" }, - "json-stable-stringify": { - "version": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "babel-plugin-syntax-dynamic-import": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz", + "integrity": "sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo=" + }, + "babel-plugin-syntax-exponentiation-operator": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", + "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=" + }, + "babel-plugin-syntax-object-rest-spread": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", + "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=" + }, + "babel-plugin-syntax-trailing-function-commas": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", + "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=" + }, + "babel-plugin-transform-async-generator-functions": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz", + "integrity": "sha1-8FiQAUX9PpkHpt3yjaWfIVJYpds=", "requires": { - "jsonify": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz" + "babel-helper-remap-async-to-generator": "6.24.1", + "babel-plugin-syntax-async-generators": "6.13.0", + "babel-runtime": "6.26.0" } }, - "ordered-read-streams": { - "version": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz", - "integrity": "sha1-cTfmmzKYuzQiR6G77jiByA4v14s=", + "babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", + "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", "requires": { - "is-stream": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz" + "babel-helper-remap-async-to-generator": "6.24.1", + "babel-plugin-syntax-async-functions": "6.13.0", + "babel-runtime": "6.26.0" } }, - "unique-stream": { - "version": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.2.1.tgz", - "integrity": "sha1-WqADz76Uxf+GbE59ZouxxNuts2k=", + "babel-plugin-transform-decorators": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz", + "integrity": "sha1-eIAT2PjGtSIr33s0Q5Df13Vp4k0=", "requires": { - "json-stable-stringify": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "through2-filter": "https://registry.npmjs.org/through2-filter/-/through2-filter-2.0.0.tgz" + "babel-helper-explode-class": "6.24.1", + "babel-plugin-syntax-decorators": "6.13.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-types": "6.26.0" } }, - "vinyl": { - "version": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", - "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", + "babel-plugin-transform-exponentiation-operator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", + "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", "requires": { - "clone": "https://registry.npmjs.org/clone/-/clone-1.0.2.tgz", - "clone-stats": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", - "replace-ext": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz" + "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", + "babel-plugin-syntax-exponentiation-operator": "6.13.0", + "babel-runtime": "6.26.0" } }, - "vinyl-fs": { - "version": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-2.4.4.tgz", - "integrity": "sha1-vm/zJwy1Xf19MGNkDegfJddTIjk=", + "babel-plugin-transform-object-rest-spread": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz", + "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=", "requires": { - "duplexify": "https://registry.npmjs.org/duplexify/-/duplexify-3.5.0.tgz", - "glob-stream": "https://registry.npmjs.org/glob-stream/-/glob-stream-5.3.5.tgz", - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "gulp-sourcemaps": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-1.6.0.tgz", - "is-valid-glob": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-0.3.0.tgz", - "lazystream": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", - "lodash.isequal": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.4.0.tgz", - "merge-stream": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz", - "strip-bom": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "strip-bom-stream": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-1.0.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "through2-filter": "https://registry.npmjs.org/through2-filter/-/through2-filter-2.0.0.tgz", - "vali-date": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", - "vinyl": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz" + "babel-plugin-syntax-object-rest-spread": "6.13.0", + "babel-runtime": "6.26.0" } - } - } - }, - "decompress-tar": { - "version": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-3.1.0.tgz", - "integrity": "sha1-IXx4n5uURQ76rcXF5TeXj8MzxGY=", - "requires": { - "is-tar": "https://registry.npmjs.org/is-tar/-/is-tar-1.0.0.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz", - "strip-dirs": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-1.1.1.tgz", - "tar-stream": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.2.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "vinyl": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz" - }, - "dependencies": { - "clone": { - "version": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", - "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=" }, - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + "babel-preset-stage-3": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz", + "integrity": "sha1-g2raCp56f6N8sTj7kyb4eTSkg5U=", + "requires": { + "babel-plugin-syntax-trailing-function-commas": "6.22.0", + "babel-plugin-transform-async-generator-functions": "6.24.1", + "babel-plugin-transform-async-to-generator": "6.24.1", + "babel-plugin-transform-exponentiation-operator": "6.24.1", + "babel-plugin-transform-object-rest-spread": "6.26.0" + } }, - "object-assign": { - "version": "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz", - "integrity": "sha1-Q8NuXVaf+OSBbE76i+AtJpZ8GKo=" + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "requires": { + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" + } }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "lodash": "4.17.4" } }, - "through2": { - "version": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" + "babel-code-frame": "6.26.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "debug": "2.6.9", + "globals": "9.18.0", + "invariant": "2.2.2", + "lodash": "4.17.4" } }, - "vinyl": { - "version": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", - "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", "requires": { - "clone": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", - "clone-stats": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz" + "babel-runtime": "6.26.0", + "esutils": "2.0.2", + "lodash": "4.17.4", + "to-fast-properties": "1.0.3" } - } - } - }, - "decompress-tarbz2": { - "version": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-3.1.0.tgz", - "integrity": "sha1-iyOTVoE1X58YnYclag+L3ZbZZm0=", - "requires": { - "is-bzip2": "https://registry.npmjs.org/is-bzip2/-/is-bzip2-1.0.0.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz", - "seek-bzip": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz", - "strip-dirs": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-1.1.1.tgz", - "tar-stream": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.2.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "vinyl": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz" - }, - "dependencies": { - "clone": { - "version": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", - "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=" }, - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" }, - "object-assign": { - "version": "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz", - "integrity": "sha1-Q8NuXVaf+OSBbE76i+AtJpZ8GKo=" + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "core-js": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", + "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + "ms": "2.0.0" } }, - "through2": { - "version": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" + "ansi-regex": "2.1.1" } }, - "vinyl": { - "version": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", - "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", "requires": { - "clone": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", - "clone-stats": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz" + "loose-envify": "1.3.1" } - } - } - }, - "decompress-targz": { - "version": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-3.1.0.tgz", - "integrity": "sha1-ssE9+YFmJomRtxXWRH9kLpaW9aA=", - "requires": { - "is-gzip": "https://registry.npmjs.org/is-gzip/-/is-gzip-1.0.0.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz", - "strip-dirs": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-1.1.1.tgz", - "tar-stream": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.2.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "vinyl": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz" - }, - "dependencies": { - "clone": { - "version": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", - "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=" }, - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" }, - "object-assign": { - "version": "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz", - "integrity": "sha1-Q8NuXVaf+OSBbE76i+AtJpZ8GKo=" + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + "js-tokens": "3.0.2" } }, - "through2": { - "version": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" + "ansi-regex": "2.1.1" } }, - "vinyl": { - "version": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", - "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", - "requires": { - "clone": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", - "clone-stats": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz" - } + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" } } }, - "decompress-unzip": { - "version": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-3.4.0.tgz", - "integrity": "sha1-YUdbQVIGa74/7hL51inRX+ZHjus=", + "babelify": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/babelify/-/babelify-7.3.0.tgz", + "integrity": "sha1-qlau3nBn/XvVSWZu4W3ChQh+iOU=", "requires": { - "is-zip": "https://registry.npmjs.org/is-zip/-/is-zip-1.0.0.tgz", - "read-all-stream": "https://registry.npmjs.org/read-all-stream/-/read-all-stream-3.1.0.tgz", - "stat-mode": "https://registry.npmjs.org/stat-mode/-/stat-mode-0.2.2.tgz", - "strip-dirs": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-1.1.1.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "vinyl": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", - "yauzl": "https://registry.npmjs.org/yauzl/-/yauzl-2.7.0.tgz" + "babel-core": "6.7.7", + "object-assign": "4.1.1" }, "dependencies": { - "vinyl": { - "version": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", - "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", - "requires": { - "clone": "https://registry.npmjs.org/clone/-/clone-1.0.2.tgz", - "clone-stats": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", - "replace-ext": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz" - } + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" } } }, - "deep-equal": { - "version": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=" - }, - "deep-extend": { - "version": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.1.tgz", - "integrity": "sha1-7+QRPQgIX05vlod1mBD4B0aeIlM=" - }, - "deep-is": { - "version": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" - }, - "defaults": { - "version": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", - "requires": { - "clone": "https://registry.npmjs.org/clone/-/clone-1.0.2.tgz" - } - }, - "defined": { - "version": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", - "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=" - }, - "del": { - "version": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", - "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", - "requires": { - "globby": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", - "is-path-cwd": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", - "is-path-in-cwd": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "pify": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "rimraf": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz" - } - }, - "deprecated": { - "version": "https://registry.npmjs.org/deprecated/-/deprecated-0.0.1.tgz", - "integrity": "sha1-+cmvVGSvoeepcUWKi97yqpTVuxk=" - }, - "deps-sort": { - "version": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.0.tgz", - "integrity": "sha1-CRckkC6EZYJg65EHSMzNGvbiH7U=", - "requires": { - "JSONStream": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.0.tgz", - "shasum": "https://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz", - "subarg": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz" - } - }, - "des.js": { - "version": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", - "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", - "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "minimalistic-assert": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz" - } - }, - "detect-file": { - "version": "https://registry.npmjs.org/detect-file/-/detect-file-0.1.0.tgz", - "integrity": "sha1-STXe39lIhkjgBrASlWbpOGcR6mM=", + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", "requires": { - "fs-exists-sync": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz" - } - }, - "detect-indent": { - "version": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "requires": { - "repeating": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz" - } - }, - "detect-newline": { - "version": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", - "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=" - }, - "detective": { - "version": "https://registry.npmjs.org/detective/-/detective-4.3.2.tgz", - "integrity": "sha1-d2l+LnlHrD/nyOJqbW8RUjWvqRw=", - "requires": { - "acorn": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "defined": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz" + "cache-base": "1.0.1", + "class-utils": "0.3.6", + "component-emitter": "1.2.1", + "define-property": "1.0.0", + "isobject": "3.0.1", + "mixin-deep": "1.3.0", + "pascalcase": "0.1.1" }, "dependencies": { - "acorn": { - "version": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=" + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" } } }, - "diff": { - "version": "https://registry.npmjs.org/diff/-/diff-1.4.0.tgz", - "integrity": "sha1-fyjS657nsVqX79ic5j3P2qPMur8=", - "dev": true - }, - "diffie-hellman": { - "version": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.2.tgz", - "integrity": "sha1-tYNXOScM/ias9jIJn97SoH8gnl4=", - "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "miller-rabin": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.0.tgz", - "randombytes": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.3.tgz" - } - }, - "dom-serializer": { - "version": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", - "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", - "dev": true, + "bcrypt-pbkdf": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", + "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", + "optional": true, "requires": { - "domelementtype": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", - "entities": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz" - }, - "dependencies": { - "domelementtype": { - "version": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", - "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=", - "dev": true - }, - "entities": { - "version": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", - "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=", - "dev": true - } + "tweetnacl": "0.14.5" } }, - "domain-browser": { - "version": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.7.tgz", - "integrity": "sha1-hnqksJP6oF8d4IwG9NeyH9+GmLw=" - }, - "domelementtype": { - "version": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz", - "integrity": "sha1-sXrtguirWeUt2cGbF1bg/BhyBMI=", - "dev": true - }, - "domhandler": { - "version": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz", - "integrity": "sha1-LeWaCCLVAn+r/28DLCsloqir5zg=", - "dev": true, + "boom": { + "version": "2.10.1", + "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", + "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", "requires": { - "domelementtype": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz" + "hoek": "2.16.3" } }, - "domutils": { - "version": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", - "dev": true, - "requires": { - "dom-serializer": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", - "domelementtype": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz" - } + "bootstrap": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.3.7.tgz", + "integrity": "sha1-WjiTlFSfIzMIdaOxUGVldPip63E=" }, - "dot-parts": { - "version": "https://registry.npmjs.org/dot-parts/-/dot-parts-1.0.1.tgz", - "integrity": "sha1-iEvXvPwwgv+tL+XbU+SU2PPgdD8=" + "bower": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/bower/-/bower-1.8.2.tgz", + "integrity": "sha1-rfU1KcjUrwLvJPuNU0HBQZ0z4vc=" }, - "download": { - "version": "https://registry.npmjs.org/download/-/download-4.4.3.tgz", - "integrity": "sha1-qlX9rTktldS2jowr4D4MKqIbqaw=", - "requires": { - "caw": "https://registry.npmjs.org/caw/-/caw-1.2.0.tgz", - "concat-stream": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", - "each-async": "https://registry.npmjs.org/each-async/-/each-async-1.1.1.tgz", - "filenamify": "https://registry.npmjs.org/filenamify/-/filenamify-1.2.1.tgz", - "got": "https://registry.npmjs.org/got/-/got-5.7.1.tgz", - "gulp-decompress": "https://registry.npmjs.org/gulp-decompress/-/gulp-decompress-1.2.0.tgz", - "gulp-rename": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-1.2.2.tgz", - "is-url": "https://registry.npmjs.org/is-url/-/is-url-1.2.2.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "read-all-stream": "https://registry.npmjs.org/read-all-stream/-/read-all-stream-3.1.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz", - "stream-combiner2": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", - "vinyl": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", - "vinyl-fs": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-2.4.4.tgz", - "ware": "https://registry.npmjs.org/ware/-/ware-1.3.0.tgz" - }, - "dependencies": { - "glob": { - "version": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "browserify": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/browserify/-/browserify-13.3.0.tgz", + "integrity": "sha1-tanJAgJD8McORnW+yCI7xifkFc4=", + "requires": { + "JSONStream": "1.3.2", + "assert": "1.4.1", + "browser-pack": "6.0.3", + "browser-resolve": "1.11.2", + "browserify-zlib": "0.1.4", + "buffer": "4.9.1", + "cached-path-relative": "1.0.1", + "concat-stream": "1.5.2", + "console-browserify": "1.1.0", + "constants-browserify": "1.0.0", + "crypto-browserify": "3.12.0", + "defined": "1.0.0", + "deps-sort": "2.0.0", + "domain-browser": "1.1.7", + "duplexer2": "0.1.4", + "events": "1.1.1", + "glob": "7.1.2", + "has": "1.0.1", + "htmlescape": "1.1.1", + "https-browserify": "0.0.1", + "inherits": "2.0.3", + "insert-module-globals": "7.0.1", + "labeled-stream-splicer": "2.0.0", + "module-deps": "4.1.1", + "os-browserify": "0.1.2", + "parents": "1.0.1", + "path-browserify": "0.0.0", + "process": "0.11.10", + "punycode": "1.4.1", + "querystring-es3": "0.2.1", + "read-only-stream": "2.0.0", + "readable-stream": "2.3.3", + "resolve": "1.5.0", + "shasum": "1.0.2", + "shell-quote": "1.6.1", + "stream-browserify": "2.0.1", + "stream-http": "2.8.0", + "string_decoder": "0.10.31", + "subarg": "1.0.0", + "syntax-error": "1.3.0", + "through2": "2.0.3", + "timers-browserify": "1.4.2", + "tty-browserify": "0.0.1", + "url": "0.11.0", + "util": "0.10.3", + "vm-browserify": "0.0.4", + "xtend": "4.0.1" + }, + "dependencies": { + "JSONStream": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.2.tgz", + "integrity": "sha1-wQI3G27Dp887hHygDCC7D85Mbeo=", + "requires": { + "jsonparse": "1.3.1", + "through": "2.3.8" + } + }, + "acorn": { + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" + }, + "array-filter": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", + "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=" + }, + "array-map": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", + "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=" + }, + "array-reduce": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", + "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=" + }, + "asn1.js": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.9.2.tgz", + "integrity": "sha512-b/OsSjvWEo8Pi8H0zsDd2P6Uqo2TK2pH8gNLSJtNLM2Db0v2QaAZ0pBQJXVjAn4gBuugeVDr7s63ZogpUIwWDg==", "requires": { - "inflight": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", - "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "path-is-absolute": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" + "bn.js": "4.11.8", + "inherits": "2.0.3", + "minimalistic-assert": "1.0.0" } }, - "glob-parent": { - "version": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "assert": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", + "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", "requires": { - "is-glob": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "path-dirname": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz" + "util": "0.10.3" } }, - "glob-stream": { - "version": "https://registry.npmjs.org/glob-stream/-/glob-stream-5.3.5.tgz", - "integrity": "sha1-pVZlqajM3EGRWofHAeMtTgFvrSI=", + "astw": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/astw/-/astw-2.2.0.tgz", + "integrity": "sha1-e9QXhNMkk5h66yOba04cV6hzuRc=", "requires": { - "extend": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz", - "glob": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "glob-parent": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "micromatch": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "ordered-read-streams": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "to-absolute-glob": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-0.1.1.tgz", - "unique-stream": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.2.1.tgz" + "acorn": "4.0.13" + } + }, + "base64-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.1.tgz", + "integrity": "sha512-dwVUVIXsBZXwTuwnXI9RK8sBmgq09NDHzyR9SAph9eqk76gKK2JSQmZARC2zRC81JC2QTtxD0ARU5qTS25gIGw==" + }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" + }, + "browser-pack": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.0.3.tgz", + "integrity": "sha512-Jo+RYsn8X8OhyP9tMXXg0ueR2fW696HUu1Hf3/DeiwNean1oGiPtdgGRNuUHBpPHzBH3x4n1kzAlgOgHSIq88g==", + "requires": { + "JSONStream": "1.3.2", + "combine-source-map": "0.8.0", + "defined": "1.0.0", + "safe-buffer": "5.1.1", + "through2": "2.0.3", + "umd": "3.0.1" + } + }, + "browser-resolve": { + "version": "1.11.2", + "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.2.tgz", + "integrity": "sha1-j/CbCixCFxihBRwmCzLkj0QpOM4=", + "requires": { + "resolve": "1.1.7" }, "dependencies": { - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", - "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" - } - }, - "through2": { - "version": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", - "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" - } + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=" } } }, - "gulp-sourcemaps": { - "version": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-1.6.0.tgz", - "integrity": "sha1-uG/zSdgBzrVuHZ59x7vLS33uYAw=", + "browserify-aes": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.1.1.tgz", + "integrity": "sha512-UGnTYAnB2a3YuYKIRy1/4FB2HdM866E0qC46JXvVTYKlBlZlnvfpSfY6OKfXZAkv70eJ2a1SqzpAo5CRhZGDFg==", "requires": { - "convert-source-map": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.3.0.tgz", - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "strip-bom": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "vinyl": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz" + "buffer-xor": "1.0.3", + "cipher-base": "1.0.4", + "create-hash": "1.1.3", + "evp_bytestokey": "1.0.3", + "inherits": "2.0.3", + "safe-buffer": "5.1.1" } }, - "is-extglob": { - "version": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + "browserify-cipher": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.0.tgz", + "integrity": "sha1-mYgkSHS/XtTijalWZtzWasj8Njo=", + "requires": { + "browserify-aes": "1.1.1", + "browserify-des": "1.0.0", + "evp_bytestokey": "1.0.3" + } }, - "is-glob": { - "version": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "browserify-des": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.0.tgz", + "integrity": "sha1-2qJ3cXRwki7S/hhZQRihdUOXId0=", "requires": { - "is-extglob": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" + "cipher-base": "1.0.4", + "des.js": "1.0.0", + "inherits": "2.0.3" } }, - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + "browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "requires": { + "bn.js": "4.11.8", + "randombytes": "2.0.6" + } }, - "json-stable-stringify": { - "version": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", "requires": { - "jsonify": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz" + "bn.js": "4.11.8", + "browserify-rsa": "4.0.1", + "create-hash": "1.1.3", + "create-hmac": "1.1.6", + "elliptic": "6.4.0", + "inherits": "2.0.3", + "parse-asn1": "5.1.0" } }, - "ordered-read-streams": { - "version": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz", - "integrity": "sha1-cTfmmzKYuzQiR6G77jiByA4v14s=", + "browserify-zlib": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", + "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=", "requires": { - "is-stream": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz" + "pako": "0.2.9" } }, - "unique-stream": { - "version": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.2.1.tgz", - "integrity": "sha1-WqADz76Uxf+GbE59ZouxxNuts2k=", + "buffer": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", "requires": { - "json-stable-stringify": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "through2-filter": "https://registry.npmjs.org/through2-filter/-/through2-filter-2.0.0.tgz" + "base64-js": "1.2.1", + "ieee754": "1.1.8", + "isarray": "1.0.0" } }, - "vinyl": { - "version": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", - "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" + }, + "cached-path-relative": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.0.1.tgz", + "integrity": "sha1-0JxLUoAKpMB44t2BqGmqyQ0uVOc=" + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", "requires": { - "clone": "https://registry.npmjs.org/clone/-/clone-1.0.2.tgz", - "clone-stats": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", - "replace-ext": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz" + "inherits": "2.0.3", + "safe-buffer": "5.1.1" } }, - "vinyl-fs": { - "version": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-2.4.4.tgz", - "integrity": "sha1-vm/zJwy1Xf19MGNkDegfJddTIjk=", + "combine-source-map": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz", + "integrity": "sha1-pY0N8ELBhvz4IqjoAV9UUNLXmos=", "requires": { - "duplexify": "https://registry.npmjs.org/duplexify/-/duplexify-3.5.0.tgz", - "glob-stream": "https://registry.npmjs.org/glob-stream/-/glob-stream-5.3.5.tgz", - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "gulp-sourcemaps": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-1.6.0.tgz", - "is-valid-glob": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-0.3.0.tgz", - "lazystream": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", - "lodash.isequal": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.4.0.tgz", - "merge-stream": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz", - "strip-bom": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "strip-bom-stream": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-1.0.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "through2-filter": "https://registry.npmjs.org/through2-filter/-/through2-filter-2.0.0.tgz", - "vali-date": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", - "vinyl": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz" + "convert-source-map": "1.1.3", + "inline-source-map": "0.6.2", + "lodash.memoize": "3.0.4", + "source-map": "0.5.7" } - } - } - }, - "dropzone": { - "version": "https://registry.npmjs.org/dropzone/-/dropzone-4.3.0.tgz", - "integrity": "sha1-SLC48q0JKHLktTW2cqfD8aHWfJE=" - }, - "duplexer2": { - "version": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", - "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz" - } - }, - "duplexify": { - "version": "https://registry.npmjs.org/duplexify/-/duplexify-3.5.0.tgz", - "integrity": "sha1-GqdzAC4VeEV+nZ1KULDMquvL1gQ=", - "requires": { - "end-of-stream": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.0.0.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz", - "stream-shift": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz" - }, - "dependencies": { - "end-of-stream": { - "version": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.0.0.tgz", - "integrity": "sha1-1FlucCc0qT5A6a+GQxnqvZn/Lw4=", + }, + "concat-stream": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", + "integrity": "sha1-cIl4Yk2FavQaWnQd790mHadSwmY=", "requires": { - "once": "https://registry.npmjs.org/once/-/once-1.3.3.tgz" + "inherits": "2.0.3", + "readable-stream": "2.0.6", + "typedarray": "0.0.6" + }, + "dependencies": { + "readable-stream": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", + "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "string_decoder": "0.10.31", + "util-deprecate": "1.0.2" + } + } } }, - "once": { - "version": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", - "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", "requires": { - "wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + "date-now": "0.1.4" } - } - } - }, - "each-async": { - "version": "https://registry.npmjs.org/each-async/-/each-async-1.1.1.tgz", - "integrity": "sha1-3uUim98KtrogEqOV4bhpq/iBNHM=", - "requires": { - "onetime": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "set-immediate-shim": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz" - } - }, - "elliptic": { - "version": "https://registry.npmjs.org/elliptic/-/elliptic-6.3.2.tgz", - "integrity": "sha1-5MgeCCnPCmWrcOmYuCMnI7XBvEg=", - "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "brorand": "https://registry.npmjs.org/brorand/-/brorand-1.0.6.tgz", - "hash.js": "https://registry.npmjs.org/hash.js/-/hash.js-1.0.3.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" - } - }, - "encoding": { - "version": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", - "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", - "requires": { - "iconv-lite": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.15.tgz" - } - }, - "end-of-stream": { - "version": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-0.1.5.tgz", - "integrity": "sha1-jhdyBsPICDfYVjLouTWd/osvbq8=", - "requires": { - "once": "https://registry.npmjs.org/once/-/once-1.3.3.tgz" - }, - "dependencies": { - "once": { - "version": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", - "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" + }, + "convert-source-map": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz", + "integrity": "sha1-SCnId+n+SbMWHzvzZziI4gRpmGA=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "create-ecdh": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz", + "integrity": "sha1-iIxyNZbN92EvZJgjPuvXo1MBc30=", "requires": { - "wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + "bn.js": "4.11.8", + "elliptic": "6.4.0" } - } - } - }, - "entities": { - "version": "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz", - "integrity": "sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY=", - "dev": true - }, - "errno": { - "version": "https://registry.npmjs.org/errno/-/errno-0.1.4.tgz", - "integrity": "sha1-uJbiOp5ei6M4cfyZar02NfyaHH0=", - "optional": true, - "requires": { - "prr": "https://registry.npmjs.org/prr/-/prr-0.0.0.tgz" - } - }, - "error-ex": { - "version": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.0.tgz", - "integrity": "sha1-5ntD8+gsluo6WE/+4Ln8MyXYAtk=", - "requires": { - "is-arrayish": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" - } - }, - "es5-shim": { - "version": "https://registry.npmjs.org/es5-shim/-/es5-shim-4.5.9.tgz", - "integrity": "sha1-Kh4rnlg/9f7Qwgo+4svz91IwpcA=", - "dev": true - }, - "escape-string-regexp": { - "version": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - }, - "escodegen": { - "version": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", - "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=", - "requires": { - "esprima": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "estraverse": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", - "esutils": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "optionator": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz" - }, - "dependencies": { - "source-map": { - "version": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", - "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=", - "optional": true, + }, + "create-hash": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", + "integrity": "sha1-YGBCrIuSYnUPSDyt2rD1gZFy2P0=", "requires": { - "amdefine": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz" + "cipher-base": "1.0.4", + "inherits": "2.0.3", + "ripemd160": "2.0.1", + "sha.js": "2.4.10" } - } - } - }, - "esprima": { - "version": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=" - }, - "estraverse": { - "version": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", - "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=" - }, - "esutils": { - "version": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" - }, - "events": { - "version": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", - "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=" - }, - "evp_bytestokey": { - "version": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.0.tgz", - "integrity": "sha1-SXtmrZ/vZc18CKYYCCS6FHa2blM=", - "requires": { - "create-hash": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.2.tgz" - } - }, - "exec-buffer": { - "version": "https://registry.npmjs.org/exec-buffer/-/exec-buffer-3.1.0.tgz", - "integrity": "sha1-hRtG0GL8qby8b/h4FpPijo2oBAI=", - "requires": { - "execa": "https://registry.npmjs.org/execa/-/execa-0.5.0.tgz", - "p-finally": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "pify": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "rimraf": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz", - "tempfile": "https://registry.npmjs.org/tempfile/-/tempfile-1.1.1.tgz" - } - }, - "exec-series": { - "version": "https://registry.npmjs.org/exec-series/-/exec-series-1.0.3.tgz", - "integrity": "sha1-bSV6m+rEgqhyx3g7yGFYOfx3FDo=", - "requires": { - "async-each-series": "https://registry.npmjs.org/async-each-series/-/async-each-series-1.1.0.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz" - } - }, - "execa": { - "version": "https://registry.npmjs.org/execa/-/execa-0.5.0.tgz", - "integrity": "sha1-pXRWdkuZDj5S9u/38Xqcwv8ufMw=", - "requires": { - "cross-spawn": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", - "get-stream": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", - "is-stream": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "npm-run-path": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "signal-exit": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "strip-eof": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz" - }, - "dependencies": { - "cross-spawn": { - "version": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", - "integrity": "sha1-e5JHYhwjrf3ThWAEqCPL45dCTUE=", + }, + "create-hmac": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.6.tgz", + "integrity": "sha1-rLniIaThe9sHbpBlfEK5PjcmzwY=", "requires": { - "lru-cache": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.0.2.tgz", - "which": "https://registry.npmjs.org/which/-/which-1.2.12.tgz" + "cipher-base": "1.0.4", + "create-hash": "1.1.3", + "inherits": "2.0.3", + "ripemd160": "2.0.1", + "safe-buffer": "5.1.1", + "sha.js": "2.4.10" } }, - "lru-cache": { - "version": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.0.2.tgz", - "integrity": "sha1-HRdnnAac2l0ECZGgnbwsDbN35V4=", + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", "requires": { - "pseudomap": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "yallist": "https://registry.npmjs.org/yallist/-/yallist-2.0.0.tgz" + "browserify-cipher": "1.0.0", + "browserify-sign": "4.0.4", + "create-ecdh": "4.0.0", + "create-hash": "1.1.3", + "create-hmac": "1.1.6", + "diffie-hellman": "5.0.2", + "inherits": "2.0.3", + "pbkdf2": "3.0.14", + "public-encrypt": "4.0.0", + "randombytes": "2.0.6", + "randomfill": "1.0.3" } - } - } - }, - "executable": { - "version": "https://registry.npmjs.org/executable/-/executable-1.1.0.tgz", - "integrity": "sha1-h3mA6REvM5EGbaNyZd562ENKtNk=", - "requires": { - "meow": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz" - } - }, - "exit": { - "version": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true - }, - "expand-brackets": { - "version": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", - "requires": { - "is-posix-bracket": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz" - } - }, - "expand-range": { - "version": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", - "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", - "requires": { - "fill-range": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz" - } - }, - "expand-tilde": { - "version": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-1.2.2.tgz", - "integrity": "sha1-C4HrqJflo9MdHD0QL48BRB5VlEk=", - "requires": { - "os-homedir": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz" - } - }, - "exposify": { - "version": "https://registry.npmjs.org/exposify/-/exposify-0.4.3.tgz", - "integrity": "sha1-GWPrNMSJ+L+6At/Sf8z7wRc4TJ4=", - "requires": { - "globo": "https://registry.npmjs.org/globo/-/globo-1.0.2.tgz", - "has-require": "https://registry.npmjs.org/has-require/-/has-require-1.1.0.tgz", - "map-obj": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "replace-requires": "https://registry.npmjs.org/replace-requires/-/replace-requires-1.0.3.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-0.4.2.tgz", - "transformify": "https://registry.npmjs.org/transformify/-/transformify-0.1.2.tgz" - }, - "dependencies": { - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=" + }, + "defined": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", + "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=" + }, + "deps-sort": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.0.tgz", + "integrity": "sha1-CRckkC6EZYJg65EHSMzNGvbiH7U=", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + "JSONStream": "1.3.2", + "shasum": "1.0.2", + "subarg": "1.0.0", + "through2": "2.0.3" } }, - "through2": { - "version": "https://registry.npmjs.org/through2/-/through2-0.4.2.tgz", - "integrity": "sha1-2/WGYDEVHsg1K7bE22SiKSqEC5s=", + "des.js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz" + "inherits": "2.0.3", + "minimalistic-assert": "1.0.0" } }, - "xtend": { - "version": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", - "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=", + "detective": { + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/detective/-/detective-4.7.1.tgz", + "integrity": "sha512-H6PmeeUcZloWtdt4DAkFyzFL94arpHr3NOwwmVILFiy+9Qd4JTxxXrzfyGk/lmct2qVGBwTSwSXagqu2BxmWig==", "requires": { - "object-keys": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz" + "acorn": "5.3.0", + "defined": "1.0.0" + }, + "dependencies": { + "acorn": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.3.0.tgz", + "integrity": "sha512-Yej+zOJ1Dm/IMZzzj78OntP/r3zHEaKcyNoU2lAaxPtrseM6rF0xwqoz5Q5ysAiED9hTjI2hgtvLXitlCN1/Ug==" + } } - } - } - }, - "extend": { - "version": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz", - "integrity": "sha1-WkdDU7nzNT3dgXbf03uRyDpG8dQ=" - }, - "extend-shallow": { - "version": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz" - } - }, - "extglob": { - "version": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", - "requires": { - "is-extglob": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz" - } - }, - "falafel": { - "version": "https://registry.npmjs.org/falafel/-/falafel-1.2.0.tgz", - "integrity": "sha1-wY0k71CRF0pJfzGM0ksCaiXN2rQ=", - "dev": true, - "requires": { - "acorn": "https://registry.npmjs.org/acorn/-/acorn-1.2.2.tgz", - "foreach": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "object-keys": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz" - }, - "dependencies": { - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true }, - "object-keys": { - "version": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz", - "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=", - "dev": true - } - } - }, - "fancy-log": { - "version": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.2.0.tgz", - "integrity": "sha1-1aUbU+mrIsoH1VjytnrlX9tfy9g=", - "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "time-stamp": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.0.1.tgz" - } - }, - "fast-levenshtein": { - "version": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.5.tgz", - "integrity": "sha1-vTMUV0RRmrHDbD7p8x8I6QebZ/I=" - }, - "fbjs": { - "version": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.6.tgz", - "integrity": "sha1-frZ9aYay1QB6m26S4OfLb3XK0pA=", - "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", - "isomorphic-fetch": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.0.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "promise": "https://registry.npmjs.org/promise/-/promise-7.1.1.tgz", - "ua-parser-js": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.12.tgz" - }, - "dependencies": { - "core-js": { - "version": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", - "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" - } - } - }, - "fd-slicer": { - "version": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", - "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", - "requires": { - "pend": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz" - } - }, - "figures": { - "version": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", - "requires": { - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz" - } - }, - "file-type": { - "version": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", - "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=" - }, - "filename-regex": { - "version": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.0.tgz", - "integrity": "sha1-mW4+gEebmLmJfxWopYs9CE6SZ3U=" - }, - "filename-reserved-regex": { - "version": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-1.0.0.tgz", - "integrity": "sha1-5hz4BfDeHJhFZ9A4bcXfUO5a9+Q=" - }, - "filenamify": { - "version": "https://registry.npmjs.org/filenamify/-/filenamify-1.2.1.tgz", - "integrity": "sha1-qfL/0RxQO+0wABUCknI3jx8TZaU=", - "requires": { - "filename-reserved-regex": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-1.0.0.tgz", - "strip-outer": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.0.tgz", - "trim-repeated": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz" - } - }, - "filesize": { - "version": "https://registry.npmjs.org/filesize/-/filesize-3.3.0.tgz", - "integrity": "sha1-UxSeo0YOOy4CSWKlFkiqVyz5gSI=" - }, - "fill-range": { - "version": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", - "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", - "requires": { - "is-number": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "isobject": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "randomatic": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.6.tgz", - "repeat-element": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", - "repeat-string": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz" - } - }, - "find-index": { - "version": "https://registry.npmjs.org/find-index/-/find-index-0.1.1.tgz", - "integrity": "sha1-Z101iyyjiS15Whq0cjL4tuLg3eQ=" - }, - "find-parent-dir": { - "version": "https://registry.npmjs.org/find-parent-dir/-/find-parent-dir-0.3.0.tgz", - "integrity": "sha1-M8RLQpqysvBkYpnF+fcY83b/jVQ=" - }, - "find-up": { - "version": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "requires": { - "path-exists": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" - }, - "dependencies": { - "path-exists": { - "version": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "diffie-hellman": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.2.tgz", + "integrity": "sha1-tYNXOScM/ias9jIJn97SoH8gnl4=", "requires": { - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" + "bn.js": "4.11.8", + "miller-rabin": "4.0.1", + "randombytes": "2.0.6" } - } - } - }, - "find-versions": { - "version": "https://registry.npmjs.org/find-versions/-/find-versions-1.2.1.tgz", - "integrity": "sha1-y96fEuOFdaCvG+G5osXV/Y8Ya2I=", - "requires": { - "array-uniq": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "get-stdin": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "meow": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "semver-regex": "https://registry.npmjs.org/semver-regex/-/semver-regex-1.0.0.tgz" - } - }, - "findup-sync": { - "version": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.4.3.tgz", - "integrity": "sha1-QAQ5Kee8YK3wt/SCfExudaDeyhI=", - "requires": { - "detect-file": "https://registry.npmjs.org/detect-file/-/detect-file-0.1.0.tgz", - "is-glob": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "micromatch": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "resolve-dir": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-0.1.1.tgz" - } - }, - "fined": { - "version": "https://registry.npmjs.org/fined/-/fined-1.0.2.tgz", - "integrity": "sha1-WyhCS3YNdZiWC374SA3/itNmDpc=", - "requires": { - "expand-tilde": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-1.2.2.tgz", - "lodash.assignwith": "https://registry.npmjs.org/lodash.assignwith/-/lodash.assignwith-4.2.0.tgz", - "lodash.isempty": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz", - "lodash.isplainobject": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "lodash.isstring": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", - "lodash.pick": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "parse-filepath": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.1.tgz" - } - }, - "first-chunk-stream": { - "version": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz", - "integrity": "sha1-Wb+1DNkF9g18OUzT2ayqtOatk04=" - }, - "flagged-respawn": { - "version": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-0.3.2.tgz", - "integrity": "sha1-/xke3c1wiKZ1smEP/8l2vpuAdLU=" - }, - "for-in": { - "version": "https://registry.npmjs.org/for-in/-/for-in-0.1.6.tgz", - "integrity": "sha1-yfluib+tGKVFr17D7TUqHZ5bTcg=" - }, - "for-own": { - "version": "https://registry.npmjs.org/for-own/-/for-own-0.1.4.tgz", - "integrity": "sha1-AUm0GjkIjHUV9R6+HBOG1F+TUHI=", - "requires": { - "for-in": "https://registry.npmjs.org/for-in/-/for-in-0.1.6.tgz" - } - }, - "foreach": { - "version": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", - "dev": true - }, - "fs-exists-sync": { - "version": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz", - "integrity": "sha1-mC1ok6+RjnLQjeyehnP/K1qNat0=" - }, - "fs.realpath": { - "version": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "fsevents": { - "version": "https://registry.npmjs.org/fsevents/-/fsevents-1.0.15.tgz", - "integrity": "sha1-+mP1kPPCrZEnXklyps6lRfsKrkQ=", - "optional": true, - "requires": { - "nan": "https://registry.npmjs.org/nan/-/nan-2.4.0.tgz", - "node-pre-gyp": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.6.29.tgz" - }, - "dependencies": { - "abbrev": { - "version": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", - "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=", - "optional": true }, - "ansi-regex": { - "version": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz", - "integrity": "sha1-xQYbbg74qBd15Q9dZhUb9r83EQc=" + "domain-browser": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.7.tgz", + "integrity": "sha1-hnqksJP6oF8d4IwG9NeyH9+GmLw=" }, - "ansi-styles": { - "version": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "optional": true + "duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "requires": { + "readable-stream": "2.3.3" + } }, - "aproba": { - "version": "https://registry.npmjs.org/aproba/-/aproba-1.0.4.tgz", - "integrity": "sha1-JxNoB3XnYUyLoYbAZdTi5S0QcsA=", - "optional": true + "elliptic": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", + "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=", + "requires": { + "bn.js": "4.11.8", + "brorand": "1.1.0", + "hash.js": "1.1.3", + "hmac-drbg": "1.0.1", + "inherits": "2.0.3", + "minimalistic-assert": "1.0.0", + "minimalistic-crypto-utils": "1.0.1" + } }, - "are-we-there-yet": { - "version": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.2.tgz", - "integrity": "sha1-gORw6VoIR5T+GJkmLFZnxuiN4bM=", - "optional": true, + "events": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", + "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=" + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", "requires": { - "delegates": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.1.4.tgz" + "md5.js": "1.3.4", + "safe-buffer": "5.1.1" } }, - "asn1": { - "version": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", - "optional": true + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, - "assert-plus": { - "version": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=", - "optional": true + "has": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", + "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", + "requires": { + "function-bind": "1.1.1" + } }, - "async": { - "version": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", - "optional": true + "hash.js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", + "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", + "requires": { + "inherits": "2.0.3", + "minimalistic-assert": "1.0.0" + } }, - "aws-sign2": { - "version": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=", - "optional": true + "htmlescape": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz", + "integrity": "sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E=" }, - "aws4": { - "version": "https://registry.npmjs.org/aws4/-/aws4-1.4.1.tgz", - "integrity": "sha1-/efVKSRm0jDl7g9OA42d+qsI/GE=", - "optional": true + "https-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.1.tgz", + "integrity": "sha1-P5E2XKvmC3ftDruiS0VOPgnZWoI=" }, - "balanced-match": { - "version": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", - "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=" + "ieee754": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz", + "integrity": "sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q=" }, - "bl": { - "version": "https://registry.npmjs.org/bl/-/bl-1.1.2.tgz", - "integrity": "sha1-/cqHGplxOqANGeO7ukHER4emU5g=", - "optional": true, + "indexof": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "inline-source-map": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz", + "integrity": "sha1-+Tk0ccGKedFyT4Y/o4tYY3Ct4qU=", + "requires": { + "source-map": "0.5.7" + } + }, + "insert-module-globals": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.0.1.tgz", + "integrity": "sha1-wDv04BywhtW15azorQr+eInWOMM=", "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz" + "JSONStream": "1.3.2", + "combine-source-map": "0.7.2", + "concat-stream": "1.5.2", + "is-buffer": "1.1.6", + "lexical-scope": "1.2.0", + "process": "0.11.10", + "through2": "2.0.3", + "xtend": "4.0.1" }, "dependencies": { - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", - "optional": true, + "combine-source-map": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.7.2.tgz", + "integrity": "sha1-CHAxKFazB6h8xKxIbzqaYq7MwJ4=", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "process-nextick-args": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "util-deprecate": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" + "convert-source-map": "1.1.3", + "inline-source-map": "0.6.2", + "lodash.memoize": "3.0.4", + "source-map": "0.5.7" } } } }, - "block-stream": { - "version": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" - } + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, - "boom": { - "version": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", - "requires": { - "hoek": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz" - } + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, - "brace-expansion": { - "version": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz", - "integrity": "sha1-9bStV04st8zB64Pm/nm47K33pSY=", + "json-stable-stringify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz", + "integrity": "sha1-YRwj6BTbN1Un34URk9tZ3Sryf0U=", "requires": { - "balanced-match": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", - "concat-map": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" + "jsonify": "0.0.0" } }, - "buffer-shims": { - "version": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz", - "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=" + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" }, - "caseless": { - "version": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz", - "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=", - "optional": true + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=" }, - "chalk": { - "version": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "optional": true, + "labeled-stream-splicer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.0.tgz", + "integrity": "sha1-pS4dE4AkwAuGscDJH2d5GLiuClk=", "requires": { - "ansi-styles": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "has-ansi": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "supports-color": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" + "inherits": "2.0.3", + "isarray": "0.0.1", + "stream-splicer": "2.0.0" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + } } }, - "code-point-at": { - "version": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.0.0.tgz", - "integrity": "sha1-9psZLT99keOC5Lcb3bd4eGGasMY=", + "lexical-scope": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/lexical-scope/-/lexical-scope-1.2.0.tgz", + "integrity": "sha1-/Ope3HBKSzqHls3KQZw6CvryLfQ=", "requires": { - "number-is-nan": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.0.tgz" + "astw": "2.2.0" } }, - "combined-stream": { - "version": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", - "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", + "lodash.memoize": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz", + "integrity": "sha1-LcvSwofLwKVcxCMovQxzYVDVPj8=" + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", "requires": { - "delayed-stream": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" + "bn.js": "4.11.8", + "brorand": "1.1.0" } }, - "commander": { - "version": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", - "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", - "optional": true, + "minimalistic-assert": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", + "integrity": "sha1-cCvi3aazf0g2vLP121ZkG2Sh09M=" + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "module-deps": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-4.1.1.tgz", + "integrity": "sha1-IyFYM/HaE/1gbMuAh7RIUty4If0=", + "requires": { + "JSONStream": "1.3.2", + "browser-resolve": "1.11.2", + "cached-path-relative": "1.0.1", + "concat-stream": "1.5.2", + "defined": "1.0.0", + "detective": "4.7.1", + "duplexer2": "0.1.4", + "inherits": "2.0.3", + "parents": "1.0.1", + "readable-stream": "2.3.3", + "resolve": "1.5.0", + "stream-combiner2": "1.1.1", + "subarg": "1.0.0", + "through2": "2.0.3", + "xtend": "4.0.1" + } + }, + "os-browserify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.1.2.tgz", + "integrity": "sha1-ScoCk+CxlZCl9d4Qx/JlphfY/lQ=" + }, + "pako": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", + "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=" + }, + "parents": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz", + "integrity": "sha1-/t1NK/GTp3dF/nHjcdc8MwfZx1E=", + "requires": { + "path-platform": "0.11.15" + } + }, + "parse-asn1": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.0.tgz", + "integrity": "sha1-N8T5t+06tlx0gXtfJICTf7+XxxI=", + "requires": { + "asn1.js": "4.9.2", + "browserify-aes": "1.1.1", + "create-hash": "1.1.3", + "evp_bytestokey": "1.0.3", + "pbkdf2": "3.0.14" + } + }, + "path-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", + "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=" + }, + "path-platform": { + "version": "0.11.15", + "resolved": "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz", + "integrity": "sha1-6GQhf3TDaFDwhSt43Hv31KVyG/I=" + }, + "pbkdf2": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.14.tgz", + "integrity": "sha512-gjsZW9O34fm0R7PaLHRJmLLVfSoesxztjPjE9o6R+qtVJij90ltg1joIovN9GKrRW3t1PzhDDG3UMEMFfZ+1wA==", + "requires": { + "create-hash": "1.1.3", + "create-hmac": "1.1.6", + "ripemd160": "2.0.1", + "safe-buffer": "5.1.1", + "sha.js": "2.4.10" + } + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "public-encrypt": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.0.tgz", + "integrity": "sha1-OfaZ86RlYN1eusvKaTyvfGXBjMY=", "requires": { - "graceful-readlink": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz" + "bn.js": "4.11.8", + "browserify-rsa": "4.0.1", + "create-hash": "1.1.3", + "parse-asn1": "5.1.0", + "randombytes": "2.0.6" } }, - "concat-map": { - "version": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" }, - "console-control-strings": { - "version": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" }, - "core-util-is": { - "version": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" }, - "cryptiles": { - "version": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", - "optional": true, + "randombytes": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", + "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", "requires": { - "boom": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz" + "safe-buffer": "5.1.1" } }, - "dashdash": { - "version": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.0.tgz", - "integrity": "sha1-KeSGxUGL8PNWA0qZPVFoajPoQUE=", - "optional": true, + "read-only-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz", + "integrity": "sha1-JyT9aoET1zdkrCiNQ4YnDB2/F/A=", "requires": { - "assert-plus": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" + "readable-stream": "2.3.3" + } + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" }, "dependencies": { - "assert-plus": { - "version": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "optional": true + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } } } }, - "debug": { - "version": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", - "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", - "optional": true, + "resolve": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.5.0.tgz", + "integrity": "sha512-hgoSGrc3pjzAPHNBg+KnFcK2HwlHTs/YrAGUr6qgTVUZmXv1UEXXl0bZNBKMA9fud6lRYFdPGz0xXxycPzmmiw==", "requires": { - "ms": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz" + "path-parse": "1.0.5" } }, - "deep-extend": { - "version": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.1.tgz", - "integrity": "sha1-7+QRPQgIX05vlod1mBD4B0aeIlM=", - "optional": true - }, - "delayed-stream": { - "version": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "delegates": { - "version": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "optional": true - }, - "ecc-jsbn": { - "version": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", - "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", - "optional": true, + "ripemd160": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", + "integrity": "sha1-D0WEKVxTo2KK9+bXmsohzlfRxuc=", "requires": { - "jsbn": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.0.tgz" + "hash-base": "2.0.2", + "inherits": "2.0.3" } }, - "escape-string-regexp": { - "version": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "optional": true - }, - "extend": { - "version": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz", - "integrity": "sha1-WkdDU7nzNT3dgXbf03uRyDpG8dQ=", - "optional": true - }, - "extsprintf": { - "version": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz", - "integrity": "sha1-4QgOBljjALBilJkMxw4VAiNf1VA=" + "sha.js": { + "version": "2.4.10", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.10.tgz", + "integrity": "sha512-vnwmrFDlOExK4Nm16J2KMWHLrp14lBrjxMxBJpu++EnsuBmpiYaM/MEs46Vxxm/4FvdP5yTwuCTO9it5FSjrqA==", + "requires": { + "inherits": "2.0.3", + "safe-buffer": "5.1.1" + } }, - "forever-agent": { - "version": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "optional": true + "shasum": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz", + "integrity": "sha1-5wEjENj0F/TetXEhUOVni4euVl8=", + "requires": { + "json-stable-stringify": "0.0.1", + "sha.js": "2.4.10" + } }, - "form-data": { - "version": "https://registry.npmjs.org/form-data/-/form-data-1.0.0-rc4.tgz", - "integrity": "sha1-BaxrwiIntD5EYfSIFhVUaZ1Pi14=", - "optional": true, + "shell-quote": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", + "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", "requires": { - "async": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "combined-stream": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", - "mime-types": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.11.tgz" + "array-filter": "0.0.1", + "array-map": "0.0.0", + "array-reduce": "0.0.0", + "jsonify": "0.0.0" } }, - "fs.realpath": { - "version": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" }, - "fstream": { - "version": "https://registry.npmjs.org/fstream/-/fstream-1.0.10.tgz", - "integrity": "sha1-YE6Kkv4m/9n2+uMDmdSYThqyKCI=", + "stream-browserify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", + "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", "requires": { - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.4.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "rimraf": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.3.tgz" + "inherits": "2.0.3", + "readable-stream": "2.3.3" } }, - "fstream-ignore": { - "version": "https://registry.npmjs.org/fstream-ignore/-/fstream-ignore-1.0.5.tgz", - "integrity": "sha1-nDHa40dnAY/h0kmyTa2mfQktoQU=", - "optional": true, + "stream-combiner2": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", + "integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=", "requires": { - "fstream": "https://registry.npmjs.org/fstream/-/fstream-1.0.10.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz" + "duplexer2": "0.1.4", + "readable-stream": "2.3.3" } }, - "gauge": { - "version": "https://registry.npmjs.org/gauge/-/gauge-2.6.0.tgz", - "integrity": "sha1-01MBrRjpaQK0dR3LvkD0IYuUKkY=", - "optional": true, + "stream-http": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.0.tgz", + "integrity": "sha512-sZOFxI/5xw058XIRHl4dU3dZ+TTOIGJR78Dvo0oEAejIt4ou27k+3ne1zYmCV+v7UucbxIFQuOgnkTVHh8YPnw==", "requires": { - "aproba": "https://registry.npmjs.org/aproba/-/aproba-1.0.4.tgz", - "console-control-strings": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "has-color": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "has-unicode": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "signal-exit": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.0.tgz", - "string-width": "https://registry.npmjs.org/string-width/-/string-width-1.0.1.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "wide-align": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.0.tgz" + "builtin-status-codes": "3.0.0", + "inherits": "2.0.3", + "readable-stream": "2.3.3", + "to-arraybuffer": "1.0.1", + "xtend": "4.0.1" } }, - "generate-function": { - "version": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz", - "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=", - "optional": true - }, - "generate-object-property": { - "version": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", - "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", - "optional": true, + "stream-splicer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-2.0.0.tgz", + "integrity": "sha1-G2O+Q4oTPktnHMGTUZdgAXWRDYM=", "requires": { - "is-property": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz" + "inherits": "2.0.3", + "readable-stream": "2.3.3" } }, - "getpass": { - "version": "https://registry.npmjs.org/getpass/-/getpass-0.1.6.tgz", - "integrity": "sha1-KD/9n8ElaECHUxHBtg6MQBhxEOY=", - "optional": true, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "subarg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", + "integrity": "sha1-9izxdYHplrSPyWVpn1TAauJouNI=", "requires": { - "assert-plus": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" - }, - "dependencies": { - "assert-plus": { - "version": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "optional": true - } + "minimist": "1.2.0" } }, - "glob": { - "version": "https://registry.npmjs.org/glob/-/glob-7.0.5.tgz", - "integrity": "sha1-tCAqaQmbu00pKnwblbZoK2fr3JU=", + "syntax-error": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.3.0.tgz", + "integrity": "sha1-HtkmbE1AvnXcVb+bsct3Biu5bKE=", "requires": { - "fs.realpath": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "inflight": "https://registry.npmjs.org/inflight/-/inflight-1.0.5.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", - "once": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", - "path-is-absolute": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz" + "acorn": "4.0.13" } }, - "graceful-fs": { - "version": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.4.tgz", - "integrity": "sha1-7widKIDwM7ARgjzlyPrnmNp3Xb0=" - }, - "graceful-readlink": { - "version": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", - "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=", - "optional": true + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" }, - "har-validator": { - "version": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", - "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=", - "optional": true, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "commander": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", - "is-my-json-valid": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.13.1.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" + "readable-stream": "2.3.3", + "xtend": "4.0.1" } }, - "has-ansi": { - "version": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "optional": true, + "timers-browserify": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz", + "integrity": "sha1-ycWLV1voQHN1y14kYtrO50NZ9B0=", "requires": { - "ansi-regex": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" + "process": "0.11.10" } }, - "has-color": { - "version": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", - "optional": true + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=" }, - "has-unicode": { - "version": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "optional": true + "tty-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", + "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" }, - "hawk": { - "version": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", - "optional": true, - "requires": { - "boom": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "cryptiles": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "hoek": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "sntp": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz" - } + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" }, - "hoek": { - "version": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" + "umd": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/umd/-/umd-3.0.1.tgz", + "integrity": "sha1-iuVW4RAR9jwllnCKiDclnwGz1g4=" }, - "http-signature": { - "version": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", - "optional": true, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", "requires": { - "assert-plus": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "jsprim": "https://registry.npmjs.org/jsprim/-/jsprim-1.3.0.tgz", - "sshpk": "https://registry.npmjs.org/sshpk/-/sshpk-1.8.3.tgz" + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" + } } }, - "inflight": { - "version": "https://registry.npmjs.org/inflight/-/inflight-1.0.5.tgz", - "integrity": "sha1-2zIEzVqd4ubNiQuFxuL2a89PYgo=", + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", "requires": { - "once": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", - "wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + "inherits": "2.0.1" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + } } }, - "inherits": { - "version": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" - }, - "ini": { - "version": "https://registry.npmjs.org/ini/-/ini-1.3.4.tgz", - "integrity": "sha1-BTfLedr1m1mhpRff9wbIbsA5Fi4=", - "optional": true + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, - "is-fullwidth-code-point": { - "version": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "vm-browserify": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", + "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", "requires": { - "number-is-nan": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.0.tgz" + "indexof": "0.0.1" } }, - "is-my-json-valid": { - "version": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.13.1.tgz", - "integrity": "sha1-1Vd4qC/rawlj/0vhEdXRaE6JBwc=", - "optional": true, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + } + } + }, + "browserify-shim": { + "version": "3.8.14", + "resolved": "https://registry.npmjs.org/browserify-shim/-/browserify-shim-3.8.14.tgz", + "integrity": "sha1-vxBXAmky0yU8de991xTzuHft7Gs=", + "requires": { + "exposify": "0.5.0", + "mothership": "0.2.0", + "rename-function-calls": "0.1.1", + "resolve": "0.6.3", + "through": "2.3.8" + }, + "dependencies": { + "accessory": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/accessory/-/accessory-1.1.0.tgz", + "integrity": "sha1-eDPpg5oy3tdtJgIfNqQXB6Ug9ZM=", "requires": { - "generate-function": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz", - "generate-object-property": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", - "jsonpointer": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-2.0.0.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" + "ap": "0.2.0", + "balanced-match": "0.2.1", + "dot-parts": "1.0.1" } }, - "is-property": { - "version": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", - "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=", + "acorn": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.3.0.tgz", + "integrity": "sha512-Yej+zOJ1Dm/IMZzzj78OntP/r3zHEaKcyNoU2lAaxPtrseM6rF0xwqoz5Q5ysAiED9hTjI2hgtvLXitlCN1/Ug==" + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", "optional": true }, - "is-typedarray": { - "version": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "optional": true + "balanced-match": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.2.1.tgz", + "integrity": "sha1-e8ZYtL7WHu5CStdPdfXD4sTfPMc=" }, - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, - "isstream": { - "version": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "optional": true + "defined": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", + "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=" }, - "jodid25519": { - "version": "https://registry.npmjs.org/jodid25519/-/jodid25519-1.0.2.tgz", - "integrity": "sha1-BtSRIlUJNBlHfUJWM2BuDpB4KWc=", - "optional": true, + "detective": { + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/detective/-/detective-4.7.1.tgz", + "integrity": "sha512-H6PmeeUcZloWtdt4DAkFyzFL94arpHr3NOwwmVILFiy+9Qd4JTxxXrzfyGk/lmct2qVGBwTSwSXagqu2BxmWig==", "requires": { - "jsbn": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.0.tgz" + "acorn": "5.3.0", + "defined": "1.0.0" } }, - "jsbn": { - "version": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.0.tgz", - "integrity": "sha1-ZQmH2g3XT06/WhE3eiqi0nPpff0=", - "optional": true + "dot-parts": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dot-parts/-/dot-parts-1.0.1.tgz", + "integrity": "sha1-iEvXvPwwgv+tL+XbU+SU2PPgdD8=" }, - "json-schema": { - "version": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.2.tgz", - "integrity": "sha1-UDVPGfYDkXxpX3C4Wvp3w7DyNQY=", - "optional": true + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" }, - "json-stringify-safe": { - "version": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "optional": true + "escodegen": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.1.0.tgz", + "integrity": "sha1-xmOSP24gqtSNDA+knzHG1PSTYM8=", + "requires": { + "esprima": "1.0.4", + "estraverse": "1.5.1", + "esutils": "1.0.0", + "source-map": "0.1.43" + } }, - "jsonpointer": { - "version": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-2.0.0.tgz", - "integrity": "sha1-OvHdIP6FRjkQ1GmjheMwF9KgMNk=", - "optional": true + "esprima": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz", + "integrity": "sha1-n1V+CPw7TSbs6d00+Pv0drYlha0=" }, - "jsprim": { - "version": "https://registry.npmjs.org/jsprim/-/jsprim-1.3.0.tgz", - "integrity": "sha1-zi4b74NSBLTzCZkoxgL4tq5hVlA=", - "optional": true, + "estraverse": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.5.1.tgz", + "integrity": "sha1-hno+jlip+EYYr7bC3bzZFrfLr3E=" + }, + "esutils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-1.0.0.tgz", + "integrity": "sha1-gVHTWOIMisx/t0XnRywAJf5JZXA=" + }, + "exposify": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/exposify/-/exposify-0.5.0.tgz", + "integrity": "sha1-+S0AlMJls/VT4fpFagOhiD0QWcw=", "requires": { - "extsprintf": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz", - "json-schema": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.2.tgz", - "verror": "https://registry.npmjs.org/verror/-/verror-1.3.6.tgz" + "globo": "1.1.0", + "map-obj": "1.0.1", + "replace-requires": "1.0.4", + "through2": "0.4.2", + "transformify": "0.1.2" } }, - "mime-db": { - "version": "https://registry.npmjs.org/mime-db/-/mime-db-1.23.0.tgz", - "integrity": "sha1-oxtAcK2uon1zLqMzdApk0OyaZlk=" + "find-parent-dir": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/find-parent-dir/-/find-parent-dir-0.3.0.tgz", + "integrity": "sha1-M8RLQpqysvBkYpnF+fcY83b/jVQ=" }, - "mime-types": { - "version": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.11.tgz", - "integrity": "sha1-wlnEcb2oCKhdbNGTtDCl+uRHOzw=", + "globo": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/globo/-/globo-1.1.0.tgz", + "integrity": "sha1-DSYJiVXepCLrIAGxBImLChAcqvM=", "requires": { - "mime-db": "https://registry.npmjs.org/mime-db/-/mime-db-1.23.0.tgz" + "accessory": "1.1.0", + "is-defined": "1.0.0", + "ternary": "1.0.0" } }, - "minimatch": { - "version": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.2.tgz", - "integrity": "sha1-DzmKcwDqRB6cNIyD2Yq4ydv5xAo=", + "has-require": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/has-require/-/has-require-1.2.2.tgz", + "integrity": "sha1-khZ1qxMNvZdo/I2o8ajiQt+kF3Q=", "requires": { - "brace-expansion": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.5.tgz" + "escape-string-regexp": "1.0.5" } }, - "minimist": { - "version": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" }, - "mkdirp": { - "version": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "requires": { - "minimist": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" - } + "is-defined": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-defined/-/is-defined-1.0.0.tgz", + "integrity": "sha1-HwfKZ9Vx9ZTEsUQVpF9774j5K/U=" }, - "ms": { - "version": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", - "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", - "optional": true + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" }, - "node-pre-gyp": { - "version": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.6.29.tgz", - "integrity": "sha1-sL0TY1uvfRvnriM8FvvPMwms03w=", - "optional": true, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" + }, + "mothership": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/mothership/-/mothership-0.2.0.tgz", + "integrity": "sha1-k9SKL7w+UOKl/I7VhvW8RMZfmpk=", "requires": { - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "nopt": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "npmlog": "https://registry.npmjs.org/npmlog/-/npmlog-3.1.2.tgz", - "rc": "https://registry.npmjs.org/rc/-/rc-1.1.6.tgz", - "request": "https://registry.npmjs.org/request/-/request-2.73.0.tgz", - "rimraf": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.3.tgz", - "semver": "https://registry.npmjs.org/semver/-/semver-5.2.0.tgz", - "tar": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", - "tar-pack": "https://registry.npmjs.org/tar-pack/-/tar-pack-3.1.4.tgz" + "find-parent-dir": "0.3.0" } }, - "node-uuid": { - "version": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.7.tgz", - "integrity": "sha1-baWhdmjEs91ZYjvaEc9/pMH2Cm8=", - "optional": true + "object-keys": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", + "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=" }, - "nopt": { - "version": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", - "optional": true, + "patch-text": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/patch-text/-/patch-text-1.0.2.tgz", + "integrity": "sha1-S/NuZeUXM9bpjwz2LgkDTaoDSKw=" + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", "requires": { - "abbrev": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz" + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" } }, - "npmlog": { - "version": "https://registry.npmjs.org/npmlog/-/npmlog-3.1.2.tgz", - "integrity": "sha1-LUb6h0M3r5SYovErtD2NC+SjaHM=", - "optional": true, + "rename-function-calls": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/rename-function-calls/-/rename-function-calls-0.1.1.tgz", + "integrity": "sha1-f4M2nAB6MAf2q+MDPM+BaGoQjgE=", "requires": { - "are-we-there-yet": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.2.tgz", - "console-control-strings": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "gauge": "https://registry.npmjs.org/gauge/-/gauge-2.6.0.tgz", - "set-blocking": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz" + "detective": "3.1.0" + }, + "dependencies": { + "detective": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detective/-/detective-3.1.0.tgz", + "integrity": "sha1-d3gkRKt1K4jKG+Lp0KA5Xx2iXu0=", + "requires": { + "escodegen": "1.1.0", + "esprima-fb": "3001.1.0-dev-harmony-fb" + } + } } }, - "number-is-nan": { - "version": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.0.tgz", - "integrity": "sha1-wCD1KcUoKt/dIz2R1LGBw9aG3Es=" - }, - "oauth-sign": { - "version": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", - "optional": true - }, - "object-assign": { - "version": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "integrity": "sha1-ejs9DpgGPUP0wD8uiubNUahog6A=", - "optional": true - }, - "once": { - "version": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", - "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", + "replace-requires": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/replace-requires/-/replace-requires-1.0.4.tgz", + "integrity": "sha1-AUtzMLa54lV7cQQ7ZvsCZgw79mc=", "requires": { - "wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + "detective": "4.7.1", + "has-require": "1.2.2", + "patch-text": "1.0.2", + "xtend": "4.0.1" } }, - "path-is-absolute": { - "version": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz", - "integrity": "sha1-Jj2tpmqz8vsQv3+dJN2PPlcO+RI=" - }, - "pinkie": { - "version": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "optional": true + "resolve": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-0.6.3.tgz", + "integrity": "sha1-3ZV5gufnNt699TtYpN2RdUV13UY=" }, - "pinkie-promise": { - "version": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", "optional": true, "requires": { - "pinkie": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" + "amdefine": "1.0.1" } }, - "process-nextick-args": { - "version": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" }, - "qs": { - "version": "https://registry.npmjs.org/qs/-/qs-6.2.0.tgz", - "integrity": "sha1-O3hIwDwt7OaalSKw+ujEEm10Xzs=", - "optional": true + "ternary": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ternary/-/ternary-1.0.0.tgz", + "integrity": "sha1-RXAnJWCMlJnUapYQ6bDkn/JveJ4=" }, - "rc": { - "version": "https://registry.npmjs.org/rc/-/rc-1.1.6.tgz", - "integrity": "sha1-Q2UbdrauU7XIAvEVH6P8OwWZack=", - "optional": true, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + }, + "through2": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.4.2.tgz", + "integrity": "sha1-2/WGYDEVHsg1K7bE22SiKSqEC5s=", "requires": { - "deep-extend": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.1.tgz", - "ini": "https://registry.npmjs.org/ini/-/ini-1.3.4.tgz", - "minimist": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "strip-json-comments": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz" + "readable-stream": "1.0.34", + "xtend": "2.1.2" }, "dependencies": { - "minimist": { - "version": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "optional": true + "xtend": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", + "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=", + "requires": { + "object-keys": "0.4.0" + } } } }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.1.4.tgz", - "integrity": "sha1-cLl5HG/LhIDbRL0VWg9rtY8XJGg=", + "transformify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/transformify/-/transformify-0.1.2.tgz", + "integrity": "sha1-mk9CoVRDPdcnuAV1Qoo8nlSJ6/E=", "requires": { - "buffer-shims": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz", - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "process-nextick-args": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "util-deprecate": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" + "readable-stream": "1.1.14" + }, + "dependencies": { + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + } } }, - "request": { - "version": "https://registry.npmjs.org/request/-/request-2.73.0.tgz", - "integrity": "sha1-X3ip/eQ3CryP9kedeoSnGhS4eKI=", - "optional": true, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + } + } + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "requires": { + "collection-visit": "1.0.0", + "component-emitter": "1.2.1", + "get-value": "2.0.6", + "has-value": "1.0.0", + "isobject": "3.0.1", + "set-value": "2.0.0", + "to-object-path": "0.3.0", + "union-value": "1.0.0", + "unset-value": "1.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + } + } + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "optional": true + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "requires": { + "arr-union": "3.1.0", + "define-property": "0.2.5", + "isobject": "3.0.1", + "static-extend": "0.1.2" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "requires": { - "aws-sign2": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "aws4": "https://registry.npmjs.org/aws4/-/aws4-1.4.1.tgz", - "bl": "https://registry.npmjs.org/bl/-/bl-1.1.2.tgz", - "caseless": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz", - "combined-stream": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", - "extend": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz", - "forever-agent": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "form-data": "https://registry.npmjs.org/form-data/-/form-data-1.0.0-rc4.tgz", - "har-validator": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", - "hawk": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "http-signature": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "is-typedarray": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "isstream": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "json-stringify-safe": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "mime-types": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.11.tgz", - "node-uuid": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.7.tgz", - "oauth-sign": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "qs": "https://registry.npmjs.org/qs/-/qs-6.2.0.tgz", - "stringstream": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", - "tough-cookie": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.2.2.tgz", - "tunnel-agent": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz" + "is-descriptor": "0.1.6" } }, - "rimraf": { - "version": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.3.tgz", - "integrity": "sha1-bl792kqi8DQX9rKldK7Cn0tlJwU=", + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "requires": { - "glob": "https://registry.npmjs.org/glob/-/glob-7.0.5.tgz" + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } } }, - "semver": { - "version": "https://registry.npmjs.org/semver/-/semver-5.2.0.tgz", - "integrity": "sha1-KBmVuAwUSCCUFd28TPUMJpzvVcU=", - "optional": true - }, - "set-blocking": { - "version": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "optional": true - }, - "signal-exit": { - "version": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.0.tgz", - "integrity": "sha1-PAVDtl17T7xgts2UWT2b9DZzm+g=", - "optional": true - }, - "sntp": { - "version": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", - "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", - "optional": true, - "requires": { - "hoek": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz" - } + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, - "sshpk": { - "version": "https://registry.npmjs.org/sshpk/-/sshpk-1.8.3.tgz", - "integrity": "sha1-iQzJ1hTcUpLlyxpUOwPJq6pcN04=", - "optional": true, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "requires": { - "asn1": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "assert-plus": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "dashdash": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.0.tgz", - "ecc-jsbn": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", - "getpass": "https://registry.npmjs.org/getpass/-/getpass-0.1.6.tgz", - "jodid25519": "https://registry.npmjs.org/jodid25519/-/jodid25519-1.0.2.tgz", - "jsbn": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.0.tgz", - "tweetnacl": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.13.3.tgz" + "kind-of": "3.2.2" }, "dependencies": { - "assert-plus": { - "version": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "optional": true + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } } } }, - "string_decoder": { - "version": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - }, - "string-width": { - "version": "https://registry.npmjs.org/string-width/-/string-width-1.0.1.tgz", - "integrity": "sha1-ySEptvHX9SrPmvQkom44ZKBc6wo=", + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "requires": { - "code-point-at": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.0.0.tgz", - "is-fullwidth-code-point": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz" + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" } }, - "stringstream": { - "version": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", - "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=", - "optional": true - }, - "strip-ansi": { - "version": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" - } + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" }, - "strip-json-comments": { - "version": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz", - "integrity": "sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=", - "optional": true + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "requires": { + "map-visit": "1.0.0", + "object-visit": "1.0.1" + } + }, + "color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==" + }, + "combined-stream": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", + "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", + "requires": { + "delayed-stream": "1.0.0" + } + }, + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=" + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + }, + "create-react-class": { + "version": "15.6.2", + "resolved": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.6.2.tgz", + "integrity": "sha1-zx7RXxKq1/FO9fLf4F5sQvke8Co=", + "requires": { + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1" + }, + "dependencies": { + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" }, - "supports-color": { - "version": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "optional": true + "core-js": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", + "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" }, - "tar": { - "version": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", - "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", "requires": { - "block-stream": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "fstream": "https://registry.npmjs.org/fstream/-/fstream-1.0.10.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" + "iconv-lite": "0.4.19" } }, - "tar-pack": { - "version": "https://registry.npmjs.org/tar-pack/-/tar-pack-3.1.4.tgz", - "integrity": "sha1-vIz5oi9YMnOfEvORDaweuXtJcIw=", - "optional": true, + "fbjs": { + "version": "0.8.16", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz", + "integrity": "sha1-XmdDL1UNxBtXK/VYR7ispk5TN9s=", "requires": { - "debug": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", - "fstream": "https://registry.npmjs.org/fstream/-/fstream-1.0.10.tgz", - "fstream-ignore": "https://registry.npmjs.org/fstream-ignore/-/fstream-ignore-1.0.5.tgz", - "once": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.1.4.tgz", - "rimraf": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.3.tgz", - "tar": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", - "uid-number": "https://registry.npmjs.org/uid-number/-/uid-number-0.0.6.tgz" + "core-js": "1.2.7", + "isomorphic-fetch": "2.2.1", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "promise": "7.3.1", + "setimmediate": "1.0.5", + "ua-parser-js": "0.7.17" } }, - "tough-cookie": { - "version": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.2.2.tgz", - "integrity": "sha1-yDoYMPTl7wuT7yo0iOck+N4Basc=", - "optional": true + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" }, - "tunnel-agent": { - "version": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", - "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=", - "optional": true + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" }, - "tweetnacl": { - "version": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.13.3.tgz", - "integrity": "sha1-1ii1bzvMPVrnS6nUwacE3vWrS1Y=", - "optional": true + "isomorphic-fetch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "requires": { + "node-fetch": "1.7.3", + "whatwg-fetch": "2.0.3" + } }, - "uid-number": { - "version": "https://registry.npmjs.org/uid-number/-/uid-number-0.0.6.tgz", - "integrity": "sha1-DqEOgDXo61uOREnwbaHHMGY7qoE=", - "optional": true + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" }, - "util-deprecate": { - "version": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } }, - "verror": { - "version": "https://registry.npmjs.org/verror/-/verror-1.3.6.tgz", - "integrity": "sha1-z/XfEpRtKX0rqu+qJoniW+AcAFw=", - "optional": true, + "node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", "requires": { - "extsprintf": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz" + "encoding": "0.1.12", + "is-stream": "1.1.0" } }, - "wide-align": { - "version": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.0.tgz", - "integrity": "sha1-QO3egCpx/qHwcNo+YtzaLnrdlq0=", - "optional": true, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", "requires": { - "string-width": "https://registry.npmjs.org/string-width/-/string-width-1.0.1.tgz" + "asap": "2.0.6" } }, - "wrappy": { - "version": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "ua-parser-js": { + "version": "0.7.17", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz", + "integrity": "sha512-uRdSdu1oA1rncCQL7sCj8vSyZkgtL7faaw9Tc9rZ3mGgraQ7+Pdx7w5mnOSF3gw9ZNG6oc+KXfkon3bKuROm0g==" }, - "xtend": { - "version": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", - "optional": true + "whatwg-fetch": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz", + "integrity": "sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ=" } } }, - "function-bind": { - "version": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.0.tgz", - "integrity": "sha1-FhdnFMgBeY5Ojyz391KUZ7tKV3E=" - }, - "gaze": { - "version": "https://registry.npmjs.org/gaze/-/gaze-0.5.2.tgz", - "integrity": "sha1-QLcJU30k0dRXZ9takIaJ3+aaxE8=", - "requires": { - "globule": "https://registry.npmjs.org/globule/-/globule-0.1.0.tgz" - } - }, - "get-proxy": { - "version": "https://registry.npmjs.org/get-proxy/-/get-proxy-1.1.0.tgz", - "integrity": "sha1-iUhUSRvFkbDxR9euVw9cZ4tyVus=", - "requires": { - "rc": "https://registry.npmjs.org/rc/-/rc-1.1.6.tgz" - } - }, - "get-stdin": { - "version": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=" - }, - "get-stream": { - "version": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", - "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", + "cropit": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/cropit/-/cropit-0.5.1.tgz", + "integrity": "sha1-w6ImPY6tRVEHEYVL8jYTuq6AmAU=", "requires": { - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" + "jquery": "2.2.4" } }, - "gifsicle": { - "version": "https://registry.npmjs.org/gifsicle/-/gifsicle-3.0.4.tgz", - "integrity": "sha1-9Fy17RAWW2ZdySng6TKLbIId+js=", + "cryptiles": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", + "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", + "optional": true, "requires": { - "bin-build": "https://registry.npmjs.org/bin-build/-/bin-build-2.2.0.tgz", - "bin-wrapper": "https://registry.npmjs.org/bin-wrapper/-/bin-wrapper-3.0.2.tgz", - "logalot": "https://registry.npmjs.org/logalot/-/logalot-2.1.0.tgz" + "boom": "2.10.1" } }, - "glob": { - "version": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", - "integrity": "sha1-gFIR3wT6rxxjo2ADBs31reULLsg=", + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "optional": true, "requires": { - "fs.realpath": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "inflight": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", - "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "path-is-absolute": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" + "assert-plus": "1.0.0" }, "dependencies": { - "minimatch": { - "version": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha1-Kk5AkLlrLbBqnX3wEFWmKnfJt3Q=", - "requires": { - "brace-expansion": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.6.tgz" - } + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "optional": true } } }, - "glob-base": { - "version": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", - "requires": { - "glob-parent": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "is-glob": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz" - } + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" }, - "glob-parent": { - "version": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "requires": { - "is-glob": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz" + "is-descriptor": "1.0.2" } }, - "glob-stream": { - "version": "https://registry.npmjs.org/glob-stream/-/glob-stream-3.1.18.tgz", - "integrity": "sha1-kXCl8St5Awb9/lmPMT+PeVT9FDs=", + "del": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", + "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", "requires": { - "glob": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz", - "glob2base": "https://registry.npmjs.org/glob2base/-/glob2base-0.0.12.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", - "ordered-read-streams": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.1.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "unique-stream": "https://registry.npmjs.org/unique-stream/-/unique-stream-1.0.0.tgz" + "globby": "5.0.0", + "is-path-cwd": "1.0.0", + "is-path-in-cwd": "1.0.0", + "object-assign": "4.1.1", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "rimraf": "2.6.2" }, "dependencies": { - "glob": { - "version": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz", - "integrity": "sha1-xstz0yJsHv7wTePFbQEvAzd+4V8=", + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", "requires": { - "inflight": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", - "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz" + "array-uniq": "1.0.3" } }, - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" + }, + "globby": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", + "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + "array-union": "1.0.2", + "arrify": "1.0.1", + "glob": "7.1.2", + "object-assign": "4.1.1", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" } }, - "through2": { - "version": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "is-path-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", + "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=" + }, + "is-path-in-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", + "integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=", + "requires": { + "is-path-inside": "1.0.1" + } + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "requires": { + "path-is-inside": "1.0.2" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" + "pinkie": "2.0.4" + } + }, + "rimraf": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", + "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "requires": { + "glob": "7.1.2" } } } }, - "glob-watcher": { - "version": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-0.0.6.tgz", - "integrity": "sha1-uVtKjfdLOcgymLDAXJeLTZo7cQs=", - "requires": { - "gaze": "https://registry.npmjs.org/gaze/-/gaze-0.5.2.tgz" - } + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" }, - "glob2base": { - "version": "https://registry.npmjs.org/glob2base/-/glob2base-0.0.12.tgz", - "integrity": "sha1-nUGbPijxLoOjYhZKJ3BVkiycDVY=", - "requires": { - "find-index": "https://registry.npmjs.org/find-index/-/find-index-0.1.1.tgz" - } + "dropzone": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/dropzone/-/dropzone-4.3.0.tgz", + "integrity": "sha1-SLC48q0JKHLktTW2cqfD8aHWfJE=" }, - "global-modules": { - "version": "https://registry.npmjs.org/global-modules/-/global-modules-0.2.3.tgz", - "integrity": "sha1-6lo77ULG1s6ZWk+KEmm12uIjgo0=", + "ecc-jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", + "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", + "optional": true, "requires": { - "global-prefix": "https://registry.npmjs.org/global-prefix/-/global-prefix-0.1.5.tgz", - "is-windows": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz" + "jsbn": "0.1.1" } }, - "global-prefix": { - "version": "https://registry.npmjs.org/global-prefix/-/global-prefix-0.1.5.tgz", - "integrity": "sha1-jTvGuNo8qBEqFg2NSW/wRiv+948=", + "esprima-fb": { + "version": "3001.1.0-dev-harmony-fb", + "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-3001.0001.0000-dev-harmony-fb.tgz", + "integrity": "sha1-t303q8046gt3Qmu4vCkizmtCZBE=" + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "optional": true + }, + "form-data": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", + "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", + "optional": true, "requires": { - "homedir-polyfill": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz", - "ini": "https://registry.npmjs.org/ini/-/ini-1.3.4.tgz", - "is-windows": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz", - "which": "https://registry.npmjs.org/which/-/which-1.2.12.tgz" + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.17" } }, - "globals": { - "version": "https://registry.npmjs.org/globals/-/globals-9.14.0.tgz", - "integrity": "sha1-iFmTavADh0EmMFOznQ52yiQeQDQ=" - }, - "globby": { - "version": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", - "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", "requires": { - "array-union": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "arrify": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "pify": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" + "map-cache": "0.2.2" + }, + "dependencies": { + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + } } }, - "globo": { - "version": "https://registry.npmjs.org/globo/-/globo-1.0.2.tgz", - "integrity": "sha1-aPdc4qBFRA06cEExeG+I1CBfSb0=", + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "optional": true, "requires": { - "accessory": "https://registry.npmjs.org/accessory/-/accessory-1.0.1.tgz", - "is-defined": "https://registry.npmjs.org/is-defined/-/is-defined-1.0.0.tgz", - "ternary": "https://registry.npmjs.org/ternary/-/ternary-1.0.0.tgz" + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "optional": true + } } }, - "globule": { - "version": "https://registry.npmjs.org/globule/-/globule-0.1.0.tgz", - "integrity": "sha1-2cjt3h2nnRJaFRt5UzuXhnY0auU=", + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", "requires": { - "glob": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-1.0.2.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz" + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" }, "dependencies": { - "glob": { - "version": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz", - "integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=", + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", "requires": { - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz" + "balanced-match": "1.0.0", + "concat-map": "0.0.1" } }, - "graceful-fs": { - "version": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz", - "integrity": "sha1-FaSAaldUfLLS2/J/QuiajDRRs2Q=" + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, - "inherits": { - "version": "https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz", - "integrity": "sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=" + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-1.0.2.tgz", - "integrity": "sha1-j1dWDIO1n8JwvT1WG2kAQ0MOJVE=" + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" }, "minimatch": { - "version": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz", - "integrity": "sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "requires": { - "lru-cache": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz", - "sigmund": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz" + "brace-expansion": "1.1.8" } - } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1.0.2" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + } + } + }, + "guetzli": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/guetzli/-/guetzli-1.0.1.tgz", + "integrity": "sha1-SM0B0Y29YPtHMYoXJKKVoDXZufI=", + "requires": { + "bin-build": "2.2.0", + "bin-wrapper": "3.0.2", + "logalot": "2.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + }, + "archive-type": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/archive-type/-/archive-type-3.2.0.tgz", + "integrity": "sha1-nNnABpV+vpX62tW9YJiUKoE3N/Y=", + "requires": { + "file-type": "3.9.0" + } + }, + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "requires": { + "arr-flatten": "1.1.0" + } + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=" + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=" + }, + "async-each-series": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/async-each-series/-/async-each-series-1.1.0.tgz", + "integrity": "sha1-9C/YFV048hpbjqB8KOBj7RcAsTg=" + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "bin-build": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/bin-build/-/bin-build-2.2.0.tgz", + "integrity": "sha1-EfjdYfcP/Por3KpbRvXo/t1CIcw=", + "requires": { + "archive-type": "3.2.0", + "decompress": "3.0.0", + "download": "4.4.3", + "exec-series": "1.0.3", + "rimraf": "2.6.2", + "tempfile": "1.1.1", + "url-regex": "3.2.0" + } + }, + "bin-check": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bin-check/-/bin-check-2.0.0.tgz", + "integrity": "sha1-hvjm9CU4k99g3DFpV/WvAqywWTA=", + "requires": { + "executable": "1.1.0" + } + }, + "bin-version": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/bin-version/-/bin-version-1.0.4.tgz", + "integrity": "sha1-nrSY7m/Xb3q5p8FgQ2+JV5Q1144=", + "requires": { + "find-versions": "1.2.1" + } + }, + "bin-version-check": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/bin-version-check/-/bin-version-check-2.1.0.tgz", + "integrity": "sha1-5OXfKQuQaffRETJAMe/BP90RpbA=", + "requires": { + "bin-version": "1.0.4", + "minimist": "1.2.0", + "semver": "4.3.6", + "semver-truncate": "1.1.2" + }, + "dependencies": { + "semver": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz", + "integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=" + } + } + }, + "bin-wrapper": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/bin-wrapper/-/bin-wrapper-3.0.2.tgz", + "integrity": "sha1-Z9MwYmLksaXy+I7iNGT2plVneus=", + "requires": { + "bin-check": "2.0.0", + "bin-version-check": "2.1.0", + "download": "4.4.3", + "each-async": "1.1.1", + "lazy-req": "1.1.0", + "os-filter-obj": "1.0.3" + } + }, + "bl": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", + "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=", + "requires": { + "readable-stream": "2.3.3" + } + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "requires": { + "expand-range": "1.8.2", + "preserve": "0.2.0", + "repeat-element": "1.1.2" + } + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" + }, + "buffer-to-vinyl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-to-vinyl/-/buffer-to-vinyl-1.1.0.tgz", + "integrity": "sha1-APFfruOreh3aLN5tkSG//dB7ImI=", + "requires": { + "file-type": "3.9.0", + "readable-stream": "2.3.3", + "uuid": "2.0.3", + "vinyl": "1.2.0" + } + }, + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=" + }, + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=" + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "requires": { + "camelcase": "2.1.1", + "map-obj": "1.0.1" + } + }, + "capture-stack-trace": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz", + "integrity": "sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0=" + }, + "caw": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/caw/-/caw-1.2.0.tgz", + "integrity": "sha1-/7Im/n78VHKI3GLuPpcHPCEtEDQ=", + "requires": { + "get-proxy": "1.1.0", + "is-obj": "1.0.1", + "object-assign": "3.0.0", + "tunnel-agent": "0.4.3" + }, + "dependencies": { + "object-assign": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", + "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=" + } + } + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "clone": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.3.tgz", + "integrity": "sha1-KY1+IjFmD0DAA8LtMUDezz9TCF8=" + }, + "clone-stats": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", + "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=" + }, + "co": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/co/-/co-3.1.0.tgz", + "integrity": "sha1-TqVOpaCJOBUxheFSEMaNkJK8G3g=" + }, + "commander": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", + "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", + "requires": { + "graceful-readlink": "1.0.1" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "concat-stream": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz", + "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=", + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.3", + "typedarray": "0.0.6" + } + }, + "console-stream": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/console-stream/-/console-stream-0.1.1.tgz", + "integrity": "sha1-oJX+B7IEZZVfL6/Si11yvM2UnUQ=" + }, + "convert-source-map": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "create-error-class": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", + "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", + "requires": { + "capture-stack-trace": "1.0.0" + } + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "requires": { + "array-find-index": "1.0.2" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + }, + "decompress": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/decompress/-/decompress-3.0.0.tgz", + "integrity": "sha1-rx3VDQbjv8QyRh033hGzjA2ZG+0=", + "requires": { + "buffer-to-vinyl": "1.1.0", + "concat-stream": "1.6.0", + "decompress-tar": "3.1.0", + "decompress-tarbz2": "3.1.0", + "decompress-targz": "3.1.0", + "decompress-unzip": "3.4.0", + "stream-combiner2": "1.1.1", + "vinyl-assign": "1.2.1", + "vinyl-fs": "2.4.4" + } + }, + "decompress-tar": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-3.1.0.tgz", + "integrity": "sha1-IXx4n5uURQ76rcXF5TeXj8MzxGY=", + "requires": { + "is-tar": "1.0.0", + "object-assign": "2.1.1", + "strip-dirs": "1.1.1", + "tar-stream": "1.5.5", + "through2": "0.6.5", + "vinyl": "0.4.6" + }, + "dependencies": { + "clone": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", + "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=" + }, + "vinyl": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", + "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", + "requires": { + "clone": "0.2.0", + "clone-stats": "0.0.1" + } + } + } + }, + "decompress-tarbz2": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-3.1.0.tgz", + "integrity": "sha1-iyOTVoE1X58YnYclag+L3ZbZZm0=", + "requires": { + "is-bzip2": "1.0.0", + "object-assign": "2.1.1", + "seek-bzip": "1.0.5", + "strip-dirs": "1.1.1", + "tar-stream": "1.5.5", + "through2": "0.6.5", + "vinyl": "0.4.6" + }, + "dependencies": { + "clone": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", + "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=" + }, + "vinyl": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", + "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", + "requires": { + "clone": "0.2.0", + "clone-stats": "0.0.1" + } + } + } + }, + "decompress-targz": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-3.1.0.tgz", + "integrity": "sha1-ssE9+YFmJomRtxXWRH9kLpaW9aA=", + "requires": { + "is-gzip": "1.0.0", + "object-assign": "2.1.1", + "strip-dirs": "1.1.1", + "tar-stream": "1.5.5", + "through2": "0.6.5", + "vinyl": "0.4.6" + }, + "dependencies": { + "clone": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", + "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=" + }, + "vinyl": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", + "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", + "requires": { + "clone": "0.2.0", + "clone-stats": "0.0.1" + } + } + } + }, + "decompress-unzip": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-3.4.0.tgz", + "integrity": "sha1-YUdbQVIGa74/7hL51inRX+ZHjus=", + "requires": { + "is-zip": "1.0.0", + "read-all-stream": "3.1.0", + "stat-mode": "0.2.2", + "strip-dirs": "1.1.1", + "through2": "2.0.3", + "vinyl": "1.2.0", + "yauzl": "2.9.1" + }, + "dependencies": { + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + } + } + }, + "deep-extend": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz", + "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=" + }, + "download": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/download/-/download-4.4.3.tgz", + "integrity": "sha1-qlX9rTktldS2jowr4D4MKqIbqaw=", + "requires": { + "caw": "1.2.0", + "concat-stream": "1.6.0", + "each-async": "1.1.1", + "filenamify": "1.2.1", + "got": "5.7.1", + "gulp-decompress": "1.2.0", + "gulp-rename": "1.2.2", + "is-url": "1.2.2", + "object-assign": "4.1.1", + "read-all-stream": "3.1.0", + "readable-stream": "2.3.3", + "stream-combiner2": "1.1.1", + "vinyl": "1.2.0", + "vinyl-fs": "2.4.4", + "ware": "1.3.0" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + } + } + }, + "duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "requires": { + "readable-stream": "2.3.3" + } + }, + "duplexify": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.5.3.tgz", + "integrity": "sha512-g8ID9OroF9hKt2POf8YLayy+9594PzmM3scI00/uBXocX3TWNgoB67hjzkFe9ITAbQOne/lLdBxHXvYUM4ZgGA==", + "requires": { + "end-of-stream": "1.4.1", + "inherits": "2.0.3", + "readable-stream": "2.3.3", + "stream-shift": "1.0.0" + } + }, + "each-async": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/each-async/-/each-async-1.1.1.tgz", + "integrity": "sha1-3uUim98KtrogEqOV4bhpq/iBNHM=", + "requires": { + "onetime": "1.1.0", + "set-immediate-shim": "1.0.1" + } + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "requires": { + "once": "1.4.0" + } + }, + "error-ex": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", + "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", + "requires": { + "is-arrayish": "0.2.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "exec-series": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/exec-series/-/exec-series-1.0.3.tgz", + "integrity": "sha1-bSV6m+rEgqhyx3g7yGFYOfx3FDo=", + "requires": { + "async-each-series": "1.1.0", + "object-assign": "4.1.1" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + } + } + }, + "executable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/executable/-/executable-1.1.0.tgz", + "integrity": "sha1-h3mA6REvM5EGbaNyZd562ENKtNk=", + "requires": { + "meow": "3.7.0" + } + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "requires": { + "is-posix-bracket": "0.1.1" + } + }, + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "requires": { + "fill-range": "2.2.3" + } + }, + "extend": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "requires": { + "is-extglob": "1.0.0" + }, + "dependencies": { + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + } + } + }, + "fd-slicer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", + "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", + "requires": { + "pend": "1.2.0" + } + }, + "figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "requires": { + "escape-string-regexp": "1.0.5", + "object-assign": "4.1.1" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + } + } + }, + "file-type": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=" + }, + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=" + }, + "filename-reserved-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-1.0.0.tgz", + "integrity": "sha1-5hz4BfDeHJhFZ9A4bcXfUO5a9+Q=" + }, + "filenamify": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/filenamify/-/filenamify-1.2.1.tgz", + "integrity": "sha1-qfL/0RxQO+0wABUCknI3jx8TZaU=", + "requires": { + "filename-reserved-regex": "1.0.0", + "strip-outer": "1.0.0", + "trim-repeated": "1.0.0" + } + }, + "fill-range": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", + "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", + "requires": { + "is-number": "2.1.0", + "isobject": "2.1.0", + "randomatic": "1.1.7", + "repeat-element": "1.1.2", + "repeat-string": "1.6.1" + } + }, + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } + }, + "find-versions": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-1.2.1.tgz", + "integrity": "sha1-y96fEuOFdaCvG+G5osXV/Y8Ya2I=", + "requires": { + "array-uniq": "1.0.3", + "get-stdin": "4.0.1", + "meow": "3.7.0", + "semver-regex": "1.0.0" + } + }, + "first-chunk-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz", + "integrity": "sha1-Wb+1DNkF9g18OUzT2ayqtOatk04=" + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "requires": { + "for-in": "1.0.2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "get-proxy": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-proxy/-/get-proxy-1.1.0.tgz", + "integrity": "sha1-iUhUSRvFkbDxR9euVw9cZ4tyVus=", + "requires": { + "rc": "1.2.4" + } + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=" + }, + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "requires": { + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "requires": { + "glob-parent": "2.0.0", + "is-glob": "2.0.1" + }, + "dependencies": { + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "requires": { + "is-glob": "2.0.1" + } + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "requires": { + "is-extglob": "1.0.0" + } + } + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "requires": { + "is-glob": "3.1.0", + "path-dirname": "1.0.2" + } + }, + "glob-stream": { + "version": "5.3.5", + "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-5.3.5.tgz", + "integrity": "sha1-pVZlqajM3EGRWofHAeMtTgFvrSI=", + "requires": { + "extend": "3.0.1", + "glob": "5.0.15", + "glob-parent": "3.1.0", + "micromatch": "2.3.11", + "ordered-read-streams": "0.3.0", + "through2": "0.6.5", + "to-absolute-glob": "0.1.1", + "unique-stream": "2.2.1" + } + }, + "got": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/got/-/got-5.7.1.tgz", + "integrity": "sha1-X4FjWmHkplifGAVp6k44FoClHzU=", + "requires": { + "create-error-class": "3.0.2", + "duplexer2": "0.1.4", + "is-redirect": "1.0.0", + "is-retry-allowed": "1.1.0", + "is-stream": "1.1.0", + "lowercase-keys": "1.0.0", + "node-status-codes": "1.0.0", + "object-assign": "4.1.1", + "parse-json": "2.2.0", + "pinkie-promise": "2.0.1", + "read-all-stream": "3.1.0", + "readable-stream": "2.3.3", + "timed-out": "3.1.3", + "unzip-response": "1.0.2", + "url-parse-lax": "1.0.0" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + } + } + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" + }, + "graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" + }, + "gulp-decompress": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gulp-decompress/-/gulp-decompress-1.2.0.tgz", + "integrity": "sha1-jutlpeAV+O2FMsr+KEVJYGJvDcc=", + "requires": { + "archive-type": "3.2.0", + "decompress": "3.0.0", + "gulp-util": "3.0.8", + "readable-stream": "2.3.3" + } + }, + "gulp-sourcemaps": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-1.6.0.tgz", + "integrity": "sha1-uG/zSdgBzrVuHZ59x7vLS33uYAw=", + "requires": { + "convert-source-map": "1.5.1", + "graceful-fs": "4.1.11", + "strip-bom": "2.0.0", + "through2": "2.0.3", + "vinyl": "1.2.0" + }, + "dependencies": { + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + } + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "hosted-git-info": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz", + "integrity": "sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg==" + }, + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "requires": { + "repeating": "2.0.1" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" + }, + "ip-regex": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-1.0.3.tgz", + "integrity": "sha1-3FiQdvZZ9BnCIgOaMzFvHHOH7/0=" + }, + "is-absolute": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-0.1.7.tgz", + "integrity": "sha1-hHSREZ/MtftDYhfMc39/qtUPYD8=", + "requires": { + "is-relative": "0.1.3" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-builtin-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", + "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", + "requires": { + "builtin-modules": "1.1.1" + } + }, + "is-bzip2": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-bzip2/-/is-bzip2-1.0.0.tgz", + "integrity": "sha1-XuWOqlounIDiFAe+3yOuWsCRs/w=" + }, + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=" + }, + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "requires": { + "is-primitive": "2.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "requires": { + "is-extglob": "2.1.1" + } + }, + "is-gzip": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-gzip/-/is-gzip-1.0.0.tgz", + "integrity": "sha1-bKiwe5nHeZgCWQDlVc7Y7YCHmoM=" + }, + "is-natural-number": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-2.1.1.tgz", + "integrity": "sha1-fUxXKDd+84bD4ZSpkRv1fG3DNec=" + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "requires": { + "kind-of": "3.2.2" + } + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=" + }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=" + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=" + }, + "is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=" + }, + "is-relative": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-0.1.3.tgz", + "integrity": "sha1-kF/uiuhvRbPsYUvDwVyGnfCHboI=" + }, + "is-retry-allowed": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", + "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=" + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "is-tar": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-tar/-/is-tar-1.0.0.tgz", + "integrity": "sha1-L2suF5LB9bs2UZrKqdZcDSb+hT0=" + }, + "is-url": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.2.tgz", + "integrity": "sha1-SYkFpZO/R8wtnn9zg3K792lsfyY=" + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" + }, + "is-valid-glob": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-0.3.0.tgz", + "integrity": "sha1-1LVcafUYhvm2XHDWwmItN+KfSP4=" + }, + "is-zip": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-zip/-/is-zip-1.0.0.tgz", + "integrity": "sha1-R7Co/004p2QxzP2ZqOFaTIa6IyU=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "requires": { + "isarray": "1.0.0" + } + }, + "json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "requires": { + "jsonify": "0.0.0" + } + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + }, + "lazy-req": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/lazy-req/-/lazy-req-1.1.0.tgz", + "integrity": "sha1-va6+rTD42CQDnODOFJ1Nqge6H6w=" + }, + "lazystream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", + "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "requires": { + "readable-stream": "2.3.3" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + } + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" + }, + "logalot": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/logalot/-/logalot-2.1.0.tgz", + "integrity": "sha1-X46MkNME7fElMJUaVVSruMXj9VI=", + "requires": { + "figures": "1.7.0", + "squeak": "1.3.0" + } + }, + "longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=" + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "requires": { + "currently-unhandled": "0.4.1", + "signal-exit": "3.0.2" + } + }, + "lowercase-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", + "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=" + }, + "lpad-align": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/lpad-align/-/lpad-align-1.1.2.tgz", + "integrity": "sha1-IfYArBwwlcPG5JfuZyce4ISB/p4=", + "requires": { + "get-stdin": "4.0.1", + "indent-string": "2.1.0", + "longest": "1.0.1", + "meow": "3.7.0" + } + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "requires": { + "camelcase-keys": "2.1.0", + "decamelize": "1.2.0", + "loud-rejection": "1.6.0", + "map-obj": "1.0.1", + "minimist": "1.2.0", + "normalize-package-data": "2.4.0", + "object-assign": "4.1.1", + "read-pkg-up": "1.0.1", + "redent": "1.0.0", + "trim-newlines": "1.0.0" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + } + } + }, + "merge-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", + "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", + "requires": { + "readable-stream": "2.3.3" + } + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "requires": { + "arr-diff": "2.0.0", + "array-unique": "0.2.1", + "braces": "1.8.5", + "expand-brackets": "0.1.5", + "extglob": "0.3.2", + "filename-regex": "2.0.1", + "is-extglob": "1.0.0", + "is-glob": "2.0.1", + "kind-of": "3.2.2", + "normalize-path": "2.1.1", + "object.omit": "2.0.1", + "parse-glob": "3.0.4", + "regex-cache": "0.4.4" + }, + "dependencies": { + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "requires": { + "is-extglob": "1.0.0" + } + } + } + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "1.1.8" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + } + } + }, + "node-status-codes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-status-codes/-/node-status-codes-1.0.0.tgz", + "integrity": "sha1-WuVUHQJGRdMqWPzdyc7s6nrjrC8=" + }, + "normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "requires": { + "hosted-git-info": "2.5.0", + "is-builtin-module": "1.0.0", + "semver": "5.5.0", + "validate-npm-package-license": "3.0.1" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "requires": { + "remove-trailing-separator": "1.1.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "object-assign": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz", + "integrity": "sha1-Q8NuXVaf+OSBbE76i+AtJpZ8GKo=" + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "requires": { + "for-own": "0.1.5", + "is-extendable": "0.1.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1.0.2" + } + }, + "onetime": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=" + }, + "ordered-read-streams": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz", + "integrity": "sha1-cTfmmzKYuzQiR6G77jiByA4v14s=", + "requires": { + "is-stream": "1.1.0", + "readable-stream": "2.3.3" + } + }, + "os-filter-obj": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/os-filter-obj/-/os-filter-obj-1.0.3.tgz", + "integrity": "sha1-WRUzDZDs7VV9LZOKMcbdIU2cY60=" + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "requires": { + "glob-base": "0.3.0", + "is-dotfile": "1.0.3", + "is-extglob": "1.0.0", + "is-glob": "2.0.1" + }, + "dependencies": { + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "requires": { + "is-extglob": "1.0.0" + } + } + } + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "requires": { + "error-ex": "1.3.1" + } + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "requires": { + "pinkie-promise": "2.0.1" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "requires": { + "graceful-fs": "4.1.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "requires": { + "pinkie": "2.0.4" + } + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=" + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "randomatic": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz", + "integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==", + "requires": { + "is-number": "3.0.0", + "kind-of": "4.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "rc": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.4.tgz", + "integrity": "sha1-oPYGyq4qO4YrvQ74VILAElsxX6M=", + "requires": { + "deep-extend": "0.4.2", + "ini": "1.3.5", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + } + }, + "read-all-stream": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/read-all-stream/-/read-all-stream-3.1.0.tgz", + "integrity": "sha1-NcPhd/IHjveJ7kv6+kNzB06u9Po=", + "requires": { + "pinkie-promise": "2.0.1", + "readable-stream": "2.3.3" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "requires": { + "load-json-file": "1.1.0", + "normalize-package-data": "2.4.0", + "path-type": "1.1.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "requires": { + "find-up": "1.1.2", + "read-pkg": "1.1.0" + } + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "requires": { + "indent-string": "2.1.0", + "strip-indent": "1.0.1" + } + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "requires": { + "is-equal-shallow": "0.1.3" + } + }, + "repeat-element": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", + "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=" + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "requires": { + "is-finite": "1.0.2" + } + }, + "replace-ext": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", + "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=" + }, + "rimraf": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", + "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "requires": { + "glob": "7.1.2" + }, + "dependencies": { + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + } + } + }, + "seek-bzip": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz", + "integrity": "sha1-z+kXyz0nS8/6x5J1ivUxc+sfq9w=", + "requires": { + "commander": "2.8.1" + } + }, + "semver": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", + "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==" + }, + "semver-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-1.0.0.tgz", + "integrity": "sha1-kqSWkGX5xwxpR1PVUkj8aPj2Usk=" + }, + "semver-truncate": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/semver-truncate/-/semver-truncate-1.1.2.tgz", + "integrity": "sha1-V/Qd5pcHpicJp+AQS6IRcQnqR+g=", + "requires": { + "semver": "5.5.0" + } + }, + "set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=" + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "spdx-correct": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz", + "integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=", + "requires": { + "spdx-license-ids": "1.2.2" + } + }, + "spdx-expression-parse": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz", + "integrity": "sha1-m98vIOH0DtRH++JzJmGR/O1RYmw=" + }, + "spdx-license-ids": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz", + "integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=" + }, + "squeak": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/squeak/-/squeak-1.3.0.tgz", + "integrity": "sha1-MwRQN7ZDiLVnZ0uEMiplIQc5FsM=", + "requires": { + "chalk": "1.1.3", + "console-stream": "0.1.1", + "lpad-align": "1.1.2" + } + }, + "stat-mode": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/stat-mode/-/stat-mode-0.2.2.tgz", + "integrity": "sha1-5sgLYjEj19gM8TLOU480YokHJQI=" + }, + "stream-combiner2": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", + "integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=", + "requires": { + "duplexer2": "0.1.4", + "readable-stream": "2.3.3" + } + }, + "stream-shift": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", + "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=" + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "requires": { + "is-utf8": "0.2.1" + } + }, + "strip-bom-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-1.0.0.tgz", + "integrity": "sha1-5xRDmFd9Uaa+0PoZlPoF9D/ZiO4=", + "requires": { + "first-chunk-stream": "1.0.0", + "strip-bom": "2.0.0" + } + }, + "strip-dirs": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-1.1.1.tgz", + "integrity": "sha1-lgu9EoeETzl1pFWKoQOoJV4kVqA=", + "requires": { + "chalk": "1.1.3", + "get-stdin": "4.0.1", + "is-absolute": "0.1.7", + "is-natural-number": "2.1.1", + "minimist": "1.2.0", + "sum-up": "1.0.3" + } + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "requires": { + "get-stdin": "4.0.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, + "strip-outer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.0.tgz", + "integrity": "sha1-qsC6YNLpDF1PJ1/Yhp/ZotMQ/7g=", + "requires": { + "escape-string-regexp": "1.0.5" + } + }, + "sum-up": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sum-up/-/sum-up-1.0.3.tgz", + "integrity": "sha1-HGYfZnBX9jvLeHWqFDi8FiUlFW4=", + "requires": { + "chalk": "1.1.3" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + }, + "tar-stream": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", + "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", + "requires": { + "bl": "1.2.1", + "end-of-stream": "1.4.1", + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "tempfile": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-1.1.1.tgz", + "integrity": "sha1-W8xOrsxKsscH2LwR2ZzMmiyyh/I=", + "requires": { + "os-tmpdir": "1.0.2", + "uuid": "2.0.3" + } + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "requires": { + "readable-stream": "1.0.34", + "xtend": "4.0.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + } + } + }, + "through2-filter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-2.0.0.tgz", + "integrity": "sha1-YLxVoNrLdghdsfna6Zq0P4PWIuw=", + "requires": { + "through2": "2.0.3", + "xtend": "4.0.1" + }, + "dependencies": { + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + } + } + }, + "timed-out": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-3.1.3.tgz", + "integrity": "sha1-lYYL/MXHbCd/j4Mm/Q9bLiDrohc=" + }, + "to-absolute-glob": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-0.1.1.tgz", + "integrity": "sha1-HN+kcqnvUMI57maZm2YsoOs5k38=", + "requires": { + "extend-shallow": "2.0.1" + } + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=" + }, + "trim-repeated": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz", + "integrity": "sha1-42RqLqTokTEr9+rObPsFOAvAHCE=", + "requires": { + "escape-string-regexp": "1.0.5" + } + }, + "tunnel-agent": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", + "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=" + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + }, + "unique-stream": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.2.1.tgz", + "integrity": "sha1-WqADz76Uxf+GbE59ZouxxNuts2k=", + "requires": { + "json-stable-stringify": "1.0.1", + "through2-filter": "2.0.0" + } + }, + "unzip-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz", + "integrity": "sha1-uYTwh3/AqJwsdzzB73tbIytbBv4=" + }, + "url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "requires": { + "prepend-http": "1.0.4" + } + }, + "url-regex": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/url-regex/-/url-regex-3.2.0.tgz", + "integrity": "sha1-260eDJ4p4QXdCx8J9oYvf9tIJyQ=", + "requires": { + "ip-regex": "1.0.3" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "uuid": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", + "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=" + }, + "vali-date": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", + "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=" + }, + "validate-npm-package-license": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz", + "integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=", + "requires": { + "spdx-correct": "1.0.2", + "spdx-expression-parse": "1.0.4" + } + }, + "vinyl": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", + "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", + "requires": { + "clone": "1.0.3", + "clone-stats": "0.0.1", + "replace-ext": "0.0.1" + } + }, + "vinyl-assign": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/vinyl-assign/-/vinyl-assign-1.2.1.tgz", + "integrity": "sha1-TRmIkbVRWRHXcajNnFSApGoHSkU=", + "requires": { + "object-assign": "4.1.1", + "readable-stream": "2.3.3" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + } + } + }, + "vinyl-fs": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-2.4.4.tgz", + "integrity": "sha1-vm/zJwy1Xf19MGNkDegfJddTIjk=", + "requires": { + "duplexify": "3.5.3", + "glob-stream": "5.3.5", + "graceful-fs": "4.1.11", + "gulp-sourcemaps": "1.6.0", + "is-valid-glob": "0.3.0", + "lazystream": "1.0.0", + "lodash.isequal": "4.5.0", + "merge-stream": "1.0.1", + "mkdirp": "0.5.1", + "object-assign": "4.1.1", + "readable-stream": "2.3.3", + "strip-bom": "2.0.0", + "strip-bom-stream": "1.0.0", + "through2": "2.0.3", + "through2-filter": "2.0.0", + "vali-date": "1.0.0", + "vinyl": "1.2.0" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + } + } + }, + "ware": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/ware/-/ware-1.3.0.tgz", + "integrity": "sha1-0bFPOdLiy0q4xAmPdW/ksWTkc9Q=", + "requires": { + "wrap-fn": "0.1.5" + } + }, + "wrap-fn": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/wrap-fn/-/wrap-fn-0.1.5.tgz", + "integrity": "sha1-8htuQQFv9KfjFyDbxjoJAWvfmEU=", + "requires": { + "co": "3.1.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + }, + "yauzl": { + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.9.1.tgz", + "integrity": "sha1-qBmB6nCleUYTOIPwKcWCGok1mn8=", + "requires": { + "buffer-crc32": "0.2.13", + "fd-slicer": "1.0.1" + } + } + } + }, + "gulp": { + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/gulp/-/gulp-3.9.1.tgz", + "integrity": "sha1-VxzkWSjdQK9lFPxAEYZgFsE4RbQ=", + "requires": { + "archy": "1.0.0", + "chalk": "1.1.3", + "deprecated": "0.0.1", + "gulp-util": "3.0.8", + "interpret": "1.1.0", + "liftoff": "2.5.0", + "minimist": "1.2.0", + "orchestrator": "0.3.8", + "pretty-hrtime": "1.0.3", + "semver": "4.3.6", + "tildify": "1.2.0", + "v8flags": "2.1.1", + "vinyl-fs": "0.3.14" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + }, + "archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=" + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.0.tgz", + "integrity": "sha512-P4O8UQRdGiMLWSizsApmXVQDBS6KCt7dSexgLKBmH5Hr1CZq7vsnscFh8oR1sP1ab1Zj0uCHCEzZeV6SfUf3rA==", + "requires": { + "arr-flatten": "1.1.0", + "array-unique": "0.3.2", + "define-property": "1.0.0", + "extend-shallow": "2.0.1", + "fill-range": "4.0.0", + "isobject": "3.0.1", + "repeat-element": "1.1.2", + "snapdragon": "0.8.1", + "snapdragon-node": "2.1.1", + "split-string": "3.1.0", + "to-regex": "3.0.1" + } + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "clone": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.3.tgz", + "integrity": "sha1-KY1+IjFmD0DAA8LtMUDezz9TCF8=" + }, + "clone-stats": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", + "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=" + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "requires": { + "clone": "1.0.3" + } + }, + "deprecated": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/deprecated/-/deprecated-0.0.1.tgz", + "integrity": "sha1-+cmvVGSvoeepcUWKi97yqpTVuxk=" + }, + "detect-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", + "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=" + }, + "end-of-stream": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-0.1.5.tgz", + "integrity": "sha1-jhdyBsPICDfYVjLouTWd/osvbq8=", + "requires": { + "once": "1.3.3" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "requires": { + "debug": "2.6.9", + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "posix-character-classes": "0.1.1", + "regex-not": "1.0.0", + "snapdragon": "0.8.1", + "to-regex": "3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + } + } + }, + "expand-tilde": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", + "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "requires": { + "homedir-polyfill": "1.0.1" + } + }, + "extend": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "requires": { + "array-unique": "0.3.2", + "define-property": "1.0.0", + "expand-brackets": "2.1.4", + "extend-shallow": "2.0.1", + "fragment-cache": "0.2.1", + "regex-not": "1.0.0", + "snapdragon": "0.8.1", + "to-regex": "3.0.1" + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "requires": { + "extend-shallow": "2.0.1", + "is-number": "3.0.0", + "repeat-string": "1.6.1", + "to-regex-range": "2.1.1" + } + }, + "find-index": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/find-index/-/find-index-0.1.1.tgz", + "integrity": "sha1-Z101iyyjiS15Whq0cjL4tuLg3eQ=" + }, + "findup-sync": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", + "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "requires": { + "detect-file": "1.0.0", + "is-glob": "3.1.0", + "micromatch": "3.1.5", + "resolve-dir": "1.0.1" + } + }, + "fined": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fined/-/fined-1.1.0.tgz", + "integrity": "sha1-s33IRLdqL15wgeiE98CuNE8VNHY=", + "requires": { + "expand-tilde": "2.0.2", + "is-plain-object": "2.0.4", + "object.defaults": "1.1.0", + "object.pick": "1.3.0", + "parse-filepath": "1.0.2" + } + }, + "first-chunk-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz", + "integrity": "sha1-Wb+1DNkF9g18OUzT2ayqtOatk04=" + }, + "flagged-respawn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.0.tgz", + "integrity": "sha1-Tnmumy6zi/hrO7Vr8+ClaqX8q9c=" + }, + "gaze": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-0.5.2.tgz", + "integrity": "sha1-QLcJU30k0dRXZ9takIaJ3+aaxE8=", + "requires": { + "globule": "0.1.0" + } + }, + "glob": { + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-4.5.3.tgz", + "integrity": "sha1-xstz0yJsHv7wTePFbQEvAzd+4V8=", + "requires": { + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "2.0.10", + "once": "1.3.3" + } + }, + "glob-stream": { + "version": "3.1.18", + "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-3.1.18.tgz", + "integrity": "sha1-kXCl8St5Awb9/lmPMT+PeVT9FDs=", + "requires": { + "glob": "4.5.3", + "glob2base": "0.0.12", + "minimatch": "2.0.10", + "ordered-read-streams": "0.1.0", + "through2": "0.6.5", + "unique-stream": "1.0.0" + } + }, + "glob-watcher": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-0.0.6.tgz", + "integrity": "sha1-uVtKjfdLOcgymLDAXJeLTZo7cQs=", + "requires": { + "gaze": "0.5.2" + } + }, + "glob2base": { + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/glob2base/-/glob2base-0.0.12.tgz", + "integrity": "sha1-nUGbPijxLoOjYhZKJ3BVkiycDVY=", + "requires": { + "find-index": "0.1.1" + } + }, + "global-modules": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", + "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "requires": { + "global-prefix": "1.0.2", + "is-windows": "1.0.1", + "resolve-dir": "1.0.1" + } + }, + "global-prefix": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", + "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "requires": { + "expand-tilde": "2.0.2", + "homedir-polyfill": "1.0.1", + "ini": "1.3.5", + "is-windows": "1.0.1", + "which": "1.3.0" + } + }, + "globule": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/globule/-/globule-0.1.0.tgz", + "integrity": "sha1-2cjt3h2nnRJaFRt5UzuXhnY0auU=", + "requires": { + "glob": "3.1.21", + "lodash": "1.0.2", + "minimatch": "0.2.14" + }, + "dependencies": { + "glob": { + "version": "3.1.21", + "resolved": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz", + "integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=", + "requires": { + "graceful-fs": "1.2.3", + "inherits": "1.0.2", + "minimatch": "0.2.14" + } + }, + "graceful-fs": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz", + "integrity": "sha1-FaSAaldUfLLS2/J/QuiajDRRs2Q=" + }, + "inherits": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz", + "integrity": "sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=" + }, + "minimatch": { + "version": "0.2.14", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz", + "integrity": "sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=", + "requires": { + "lru-cache": "2.7.3", + "sigmund": "1.0.1" + } + } + } + }, + "graceful-fs": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.11.tgz", + "integrity": "sha1-dhPHeKGv6mLyXGMKCG1/Osu92Bg=", + "requires": { + "natives": "1.1.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "homedir-polyfill": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz", + "integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=", + "requires": { + "parse-passwd": "1.0.0" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "1.3.3", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" + }, + "interpret": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", + "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=" + }, + "is-absolute": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", + "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", + "requires": { + "is-relative": "1.0.0", + "is-windows": "1.0.1" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "requires": { + "is-extglob": "2.1.1" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-relative": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", + "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", + "requires": { + "is-unc-path": "1.0.0" + } + }, + "is-unc-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", + "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", + "requires": { + "unc-path-regex": "0.1.2" + } + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" + }, + "is-windows": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.1.tgz", + "integrity": "sha1-MQ23D3QtJZoWo2kgK1GvhCMzENk=" + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + }, + "liftoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz", + "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=", + "requires": { + "extend": "3.0.1", + "findup-sync": "2.0.0", + "fined": "1.1.0", + "flagged-respawn": "1.0.0", + "is-plain-object": "2.0.4", + "object.map": "1.0.1", + "rechoir": "0.6.2", + "resolve": "1.5.0" + } + }, + "lodash": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-1.0.2.tgz", + "integrity": "sha1-j1dWDIO1n8JwvT1WG2kAQ0MOJVE=" + }, + "lru-cache": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz", + "integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI=" + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + }, + "micromatch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.5.tgz", + "integrity": "sha512-ykttrLPQrz1PUJcXjwsTUjGoPJ64StIGNE2lGVD1c9CuguJ+L7/navsE8IcDNndOoCMvYV0qc/exfVbMHkUhvA==", + "requires": { + "arr-diff": "4.0.0", + "array-unique": "0.3.2", + "braces": "2.3.0", + "define-property": "1.0.0", + "extend-shallow": "2.0.1", + "extglob": "2.0.4", + "fragment-cache": "0.2.1", + "kind-of": "6.0.2", + "nanomatch": "1.2.7", + "object.pick": "1.3.0", + "regex-not": "1.0.0", + "snapdragon": "0.8.1", + "to-regex": "3.0.1" + } + }, + "minimatch": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", + "integrity": "sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=", + "requires": { + "brace-expansion": "1.1.8" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + } + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "natives": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/natives/-/natives-1.1.1.tgz", + "integrity": "sha512-8eRaxn8u/4wN8tGkhlc2cgwwvOLMLUMUn4IYTexMgWd+LyUDfeXVkk2ygQR0hvIHbJQXgHujia3ieUUDwNGkEA==" + }, + "once": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", + "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", + "requires": { + "wrappy": "1.0.2" + } + }, + "orchestrator": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/orchestrator/-/orchestrator-0.3.8.tgz", + "integrity": "sha1-FOfp4nZPcxX7rBhOUGx6pt+UrX4=", + "requires": { + "end-of-stream": "0.1.5", + "sequencify": "0.0.7", + "stream-consume": "0.1.0" + } + }, + "ordered-read-streams": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.1.0.tgz", + "integrity": "sha1-/VZamvjrRHO6abbtijQ1LLVS8SY=" + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + }, + "parse-filepath": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", + "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", + "requires": { + "is-absolute": "1.0.0", + "map-cache": "0.2.2", + "path-root": "0.1.1" + } + }, + "parse-passwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", + "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=" + }, + "path-root": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", + "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", + "requires": { + "path-root-regex": "0.1.2" + } + }, + "path-root-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", + "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=" + }, + "pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", + "requires": { + "resolve": "1.5.0" + } + }, + "repeat-element": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", + "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=" + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "resolve": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.5.0.tgz", + "integrity": "sha512-hgoSGrc3pjzAPHNBg+KnFcK2HwlHTs/YrAGUr6qgTVUZmXv1UEXXl0bZNBKMA9fud6lRYFdPGz0xXxycPzmmiw==", + "requires": { + "path-parse": "1.0.5" + } + }, + "resolve-dir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", + "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "requires": { + "expand-tilde": "2.0.2", + "global-modules": "1.0.0" + } + }, + "semver": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz", + "integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=" + }, + "sequencify": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/sequencify/-/sequencify-0.0.7.tgz", + "integrity": "sha1-kM/xnQLgcCf9dn9erT57ldHnOAw=" + }, + "sigmund": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", + "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=" + }, + "stream-consume": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.0.tgz", + "integrity": "sha1-pB6tGm1ggc63n2WwYZAbbY89HQ8=" + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-bom": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-1.0.0.tgz", + "integrity": "sha1-hbiGLzhEtabV7IRnqTWYFzo295Q=", + "requires": { + "first-chunk-stream": "1.0.0", + "is-utf8": "0.2.1" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "requires": { + "readable-stream": "1.0.34", + "xtend": "4.0.1" + } + }, + "tildify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/tildify/-/tildify-1.2.0.tgz", + "integrity": "sha1-3OwD9V3Km3qj5bBPIYF+tW5jWIo=", + "requires": { + "os-homedir": "1.0.2" + } + }, + "unc-path-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", + "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=" + }, + "unique-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-1.0.0.tgz", + "integrity": "sha1-1ZpKdUJ0R9mqbJHnAmP40mpLEEs=" + }, + "user-home": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz", + "integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=" + }, + "v8flags": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz", + "integrity": "sha1-qrGh+jDUX4jdMhFIh1rALAtV5bQ=", + "requires": { + "user-home": "1.1.1" + } + }, + "vinyl": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", + "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", + "requires": { + "clone": "0.2.0", + "clone-stats": "0.0.1" + }, + "dependencies": { + "clone": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", + "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=" + } + } + }, + "vinyl-fs": { + "version": "0.3.14", + "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-0.3.14.tgz", + "integrity": "sha1-mmhRzhysHBzqX+hsCTHWIMLPqeY=", + "requires": { + "defaults": "1.0.3", + "glob-stream": "3.1.18", + "glob-watcher": "0.0.6", + "graceful-fs": "3.0.11", + "mkdirp": "0.5.1", + "strip-bom": "1.0.0", + "through2": "0.6.5", + "vinyl": "0.4.6" + } + }, + "which": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", + "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", + "requires": { + "isexe": "2.0.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + } + } + }, + "gulp-image": { + "version": "2.10.1", + "resolved": "https://registry.npmjs.org/gulp-image/-/gulp-image-2.10.1.tgz", + "integrity": "sha512-gSKDwy7po/pztP/G+AqUmoat28+o3fFDZhNi5rizKaAXC7lhEnpbaGjoSwXi0Dduylkm+n6OKin/qyE66npJUg==", + "requires": { + "exec-buffer": "3.2.0", + "execa": "0.7.0", + "filesize": "3.5.11", + "gifsicle": "3.0.4", + "guetzli": "1.0.1", + "gulp-util": "3.0.8", + "is-gif": "1.0.0", + "is-jpg": "1.0.0", + "is-png": "1.1.0", + "is-svg": "2.1.0", + "jpeg-recompress-bin": "3.0.1", + "jpegoptim-bin": "3.0.0", + "mozjpeg": "4.1.1", + "optipng-bin": "4.0.0", + "pngquant-bin": "3.1.1", + "svgo": "0.7.2", + "through2-concurrent": "1.1.1", + "zopflipng-bin": "4.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + }, + "archive-type": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/archive-type/-/archive-type-3.2.0.tgz", + "integrity": "sha1-nNnABpV+vpX62tW9YJiUKoE3N/Y=", + "requires": { + "file-type": "3.9.0" + } + }, + "argparse": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz", + "integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=", + "requires": { + "sprintf-js": "1.0.3" + } + }, + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "requires": { + "arr-flatten": "1.1.0" + } + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=" + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=" + }, + "async-each-series": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/async-each-series/-/async-each-series-1.1.0.tgz", + "integrity": "sha1-9C/YFV048hpbjqB8KOBj7RcAsTg=" + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "bin-build": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/bin-build/-/bin-build-2.2.0.tgz", + "integrity": "sha1-EfjdYfcP/Por3KpbRvXo/t1CIcw=", + "requires": { + "archive-type": "3.2.0", + "decompress": "3.0.0", + "download": "4.4.3", + "exec-series": "1.0.3", + "rimraf": "2.6.2", + "tempfile": "1.1.1", + "url-regex": "3.2.0" + }, + "dependencies": { + "tempfile": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-1.1.1.tgz", + "integrity": "sha1-W8xOrsxKsscH2LwR2ZzMmiyyh/I=", + "requires": { + "os-tmpdir": "1.0.2", + "uuid": "2.0.3" + } + }, + "uuid": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", + "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=" + } + } + }, + "bin-check": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bin-check/-/bin-check-2.0.0.tgz", + "integrity": "sha1-hvjm9CU4k99g3DFpV/WvAqywWTA=", + "requires": { + "executable": "1.1.0" + } + }, + "bin-version": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/bin-version/-/bin-version-1.0.4.tgz", + "integrity": "sha1-nrSY7m/Xb3q5p8FgQ2+JV5Q1144=", + "requires": { + "find-versions": "1.2.1" + } + }, + "bin-version-check": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/bin-version-check/-/bin-version-check-2.1.0.tgz", + "integrity": "sha1-5OXfKQuQaffRETJAMe/BP90RpbA=", + "requires": { + "bin-version": "1.0.4", + "minimist": "1.2.0", + "semver": "4.3.6", + "semver-truncate": "1.1.2" + }, + "dependencies": { + "semver": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz", + "integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=" + } + } + }, + "bin-wrapper": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/bin-wrapper/-/bin-wrapper-3.0.2.tgz", + "integrity": "sha1-Z9MwYmLksaXy+I7iNGT2plVneus=", + "requires": { + "bin-check": "2.0.0", + "bin-version-check": "2.1.0", + "download": "4.4.3", + "each-async": "1.1.1", + "lazy-req": "1.1.0", + "os-filter-obj": "1.0.3" + } + }, + "bl": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", + "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=", + "requires": { + "readable-stream": "2.3.3" + } + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "requires": { + "expand-range": "1.8.2", + "preserve": "0.2.0", + "repeat-element": "1.1.2" + } + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" + }, + "buffer-to-vinyl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-to-vinyl/-/buffer-to-vinyl-1.1.0.tgz", + "integrity": "sha1-APFfruOreh3aLN5tkSG//dB7ImI=", + "requires": { + "file-type": "3.9.0", + "readable-stream": "2.3.3", + "uuid": "2.0.3", + "vinyl": "1.2.0" + }, + "dependencies": { + "uuid": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", + "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=" + } + } + }, + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=" + }, + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=" + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "requires": { + "camelcase": "2.1.1", + "map-obj": "1.0.1" + } + }, + "capture-stack-trace": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz", + "integrity": "sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0=" + }, + "caw": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/caw/-/caw-1.2.0.tgz", + "integrity": "sha1-/7Im/n78VHKI3GLuPpcHPCEtEDQ=", + "requires": { + "get-proxy": "1.1.0", + "is-obj": "1.0.1", + "object-assign": "3.0.0", + "tunnel-agent": "0.4.3" + }, + "dependencies": { + "object-assign": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", + "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=" + } + } + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "clap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/clap/-/clap-1.2.3.tgz", + "integrity": "sha512-4CoL/A3hf90V3VIEjeuhSvlGFEHKzOz+Wfc2IVZc+FaUgU0ZQafJTP49fvnULipOPcAfqhyI2duwQyns6xqjYA==", + "requires": { + "chalk": "1.1.3" + } + }, + "clone": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.3.tgz", + "integrity": "sha1-KY1+IjFmD0DAA8LtMUDezz9TCF8=" + }, + "clone-stats": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", + "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=" + }, + "co": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/co/-/co-3.1.0.tgz", + "integrity": "sha1-TqVOpaCJOBUxheFSEMaNkJK8G3g=" + }, + "coa": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/coa/-/coa-1.0.4.tgz", + "integrity": "sha1-qe8VNmDWqGqL3sAomlxoTSF0Mv0=", + "requires": { + "q": "1.5.1" + } + }, + "colors": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", + "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=" + }, + "commander": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", + "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", + "requires": { + "graceful-readlink": "1.0.1" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "concat-stream": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz", + "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=", + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.3", + "typedarray": "0.0.6" + } + }, + "console-stream": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/console-stream/-/console-stream-0.1.1.tgz", + "integrity": "sha1-oJX+B7IEZZVfL6/Si11yvM2UnUQ=" + }, + "convert-source-map": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "create-error-class": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", + "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", + "requires": { + "capture-stack-trace": "1.0.0" + } + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "requires": { + "lru-cache": "4.1.1", + "shebang-command": "1.2.0", + "which": "1.3.0" + } + }, + "csso": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/csso/-/csso-2.3.2.tgz", + "integrity": "sha1-3dUsWHAz9J6Utx/FVWnyUuj/X4U=", + "requires": { + "clap": "1.2.3", + "source-map": "0.5.7" + } + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "requires": { + "array-find-index": "1.0.2" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + }, + "decompress": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/decompress/-/decompress-3.0.0.tgz", + "integrity": "sha1-rx3VDQbjv8QyRh033hGzjA2ZG+0=", + "requires": { + "buffer-to-vinyl": "1.1.0", + "concat-stream": "1.6.0", + "decompress-tar": "3.1.0", + "decompress-tarbz2": "3.1.0", + "decompress-targz": "3.1.0", + "decompress-unzip": "3.4.0", + "stream-combiner2": "1.1.1", + "vinyl-assign": "1.2.1", + "vinyl-fs": "2.4.4" + } + }, + "decompress-tar": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-3.1.0.tgz", + "integrity": "sha1-IXx4n5uURQ76rcXF5TeXj8MzxGY=", + "requires": { + "is-tar": "1.0.0", + "object-assign": "2.1.1", + "strip-dirs": "1.1.1", + "tar-stream": "1.5.5", + "through2": "0.6.5", + "vinyl": "0.4.6" + }, + "dependencies": { + "clone": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", + "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=" + }, + "vinyl": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", + "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", + "requires": { + "clone": "0.2.0", + "clone-stats": "0.0.1" + } + } + } + }, + "decompress-tarbz2": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-3.1.0.tgz", + "integrity": "sha1-iyOTVoE1X58YnYclag+L3ZbZZm0=", + "requires": { + "is-bzip2": "1.0.0", + "object-assign": "2.1.1", + "seek-bzip": "1.0.5", + "strip-dirs": "1.1.1", + "tar-stream": "1.5.5", + "through2": "0.6.5", + "vinyl": "0.4.6" + }, + "dependencies": { + "clone": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", + "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=" + }, + "vinyl": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", + "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", + "requires": { + "clone": "0.2.0", + "clone-stats": "0.0.1" + } + } + } + }, + "decompress-targz": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-3.1.0.tgz", + "integrity": "sha1-ssE9+YFmJomRtxXWRH9kLpaW9aA=", + "requires": { + "is-gzip": "1.0.0", + "object-assign": "2.1.1", + "strip-dirs": "1.1.1", + "tar-stream": "1.5.5", + "through2": "0.6.5", + "vinyl": "0.4.6" + }, + "dependencies": { + "clone": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", + "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=" + }, + "vinyl": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", + "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", + "requires": { + "clone": "0.2.0", + "clone-stats": "0.0.1" + } + } + } + }, + "decompress-unzip": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-3.4.0.tgz", + "integrity": "sha1-YUdbQVIGa74/7hL51inRX+ZHjus=", + "requires": { + "is-zip": "1.0.0", + "read-all-stream": "3.1.0", + "stat-mode": "0.2.2", + "strip-dirs": "1.1.1", + "through2": "2.0.3", + "vinyl": "1.2.0", + "yauzl": "2.9.1" + }, + "dependencies": { + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + } + } + }, + "deep-extend": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz", + "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=" + }, + "download": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/download/-/download-4.4.3.tgz", + "integrity": "sha1-qlX9rTktldS2jowr4D4MKqIbqaw=", + "requires": { + "caw": "1.2.0", + "concat-stream": "1.6.0", + "each-async": "1.1.1", + "filenamify": "1.2.1", + "got": "5.7.1", + "gulp-decompress": "1.2.0", + "gulp-rename": "1.2.2", + "is-url": "1.2.2", + "object-assign": "4.1.1", + "read-all-stream": "3.1.0", + "readable-stream": "2.3.3", + "stream-combiner2": "1.1.1", + "vinyl": "1.2.0", + "vinyl-fs": "2.4.4", + "ware": "1.3.0" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + } + } + }, + "duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "requires": { + "readable-stream": "2.3.3" + } + }, + "duplexify": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.5.3.tgz", + "integrity": "sha512-g8ID9OroF9hKt2POf8YLayy+9594PzmM3scI00/uBXocX3TWNgoB67hjzkFe9ITAbQOne/lLdBxHXvYUM4ZgGA==", + "requires": { + "end-of-stream": "1.4.1", + "inherits": "2.0.3", + "readable-stream": "2.3.3", + "stream-shift": "1.0.0" + } + }, + "each-async": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/each-async/-/each-async-1.1.1.tgz", + "integrity": "sha1-3uUim98KtrogEqOV4bhpq/iBNHM=", + "requires": { + "onetime": "1.1.0", + "set-immediate-shim": "1.0.1" + } + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "requires": { + "once": "1.4.0" + } + }, + "error-ex": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", + "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", + "requires": { + "is-arrayish": "0.2.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=" + }, + "exec-buffer": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/exec-buffer/-/exec-buffer-3.2.0.tgz", + "integrity": "sha512-wsiD+2Tp6BWHoVv3B+5Dcx6E7u5zky+hUwOHjuH2hKSLR3dvRmX8fk8UD8uqQixHs4Wk6eDmiegVrMPjKj7wpA==", + "requires": { + "execa": "0.7.0", + "p-finally": "1.0.0", + "pify": "3.0.0", + "rimraf": "2.6.2", + "tempfile": "2.0.0" + } + }, + "exec-series": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/exec-series/-/exec-series-1.0.3.tgz", + "integrity": "sha1-bSV6m+rEgqhyx3g7yGFYOfx3FDo=", + "requires": { + "async-each-series": "1.1.0", + "object-assign": "4.1.1" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + } + } + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "requires": { + "cross-spawn": "5.1.0", + "get-stream": "3.0.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.2", + "strip-eof": "1.0.0" + } + }, + "executable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/executable/-/executable-1.1.0.tgz", + "integrity": "sha1-h3mA6REvM5EGbaNyZd562ENKtNk=", + "requires": { + "meow": "3.7.0" + } + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "requires": { + "is-posix-bracket": "0.1.1" + } + }, + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "requires": { + "fill-range": "2.2.3" + } + }, + "extend": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "requires": { + "is-extglob": "1.0.0" + }, + "dependencies": { + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + } + } + }, + "fd-slicer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", + "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", + "requires": { + "pend": "1.2.0" + } + }, + "figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "requires": { + "escape-string-regexp": "1.0.5", + "object-assign": "4.1.1" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + } + } + }, + "file-type": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=" + }, + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=" + }, + "filename-reserved-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-1.0.0.tgz", + "integrity": "sha1-5hz4BfDeHJhFZ9A4bcXfUO5a9+Q=" + }, + "filenamify": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/filenamify/-/filenamify-1.2.1.tgz", + "integrity": "sha1-qfL/0RxQO+0wABUCknI3jx8TZaU=", + "requires": { + "filename-reserved-regex": "1.0.0", + "strip-outer": "1.0.0", + "trim-repeated": "1.0.0" + } + }, + "filesize": { + "version": "3.5.11", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.5.11.tgz", + "integrity": "sha512-ZH7loueKBoDb7yG9esn1U+fgq7BzlzW6NRi5/rMdxIZ05dj7GFD/Xc5rq2CDt5Yq86CyfSYVyx4242QQNZbx1g==" + }, + "fill-range": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", + "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", + "requires": { + "is-number": "2.1.0", + "isobject": "2.1.0", + "randomatic": "1.1.7", + "repeat-element": "1.1.2", + "repeat-string": "1.6.1" + } + }, + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } + }, + "find-versions": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-1.2.1.tgz", + "integrity": "sha1-y96fEuOFdaCvG+G5osXV/Y8Ya2I=", + "requires": { + "array-uniq": "1.0.3", + "get-stdin": "4.0.1", + "meow": "3.7.0", + "semver-regex": "1.0.0" + } + }, + "first-chunk-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz", + "integrity": "sha1-Wb+1DNkF9g18OUzT2ayqtOatk04=" + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "requires": { + "for-in": "1.0.2" + } + }, + "get-proxy": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-proxy/-/get-proxy-1.1.0.tgz", + "integrity": "sha1-iUhUSRvFkbDxR9euVw9cZ4tyVus=", + "requires": { + "rc": "1.2.4" + } + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=" + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" + }, + "gifsicle": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/gifsicle/-/gifsicle-3.0.4.tgz", + "integrity": "sha1-9Fy17RAWW2ZdySng6TKLbIId+js=", + "requires": { + "bin-build": "2.2.0", + "bin-wrapper": "3.0.2", + "logalot": "2.1.0" + } + }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "requires": { + "glob-parent": "2.0.0", + "is-glob": "2.0.1" + }, + "dependencies": { + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "requires": { + "is-glob": "2.0.1" + } + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "requires": { + "is-extglob": "1.0.0" + } + } + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "requires": { + "is-glob": "3.1.0", + "path-dirname": "1.0.2" + } + }, + "glob-stream": { + "version": "5.3.5", + "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-5.3.5.tgz", + "integrity": "sha1-pVZlqajM3EGRWofHAeMtTgFvrSI=", + "requires": { + "extend": "3.0.1", + "glob": "5.0.15", + "glob-parent": "3.1.0", + "micromatch": "2.3.11", + "ordered-read-streams": "0.3.0", + "through2": "0.6.5", + "to-absolute-glob": "0.1.1", + "unique-stream": "2.2.1" + }, + "dependencies": { + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "requires": { + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + } + } + }, + "got": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/got/-/got-5.7.1.tgz", + "integrity": "sha1-X4FjWmHkplifGAVp6k44FoClHzU=", + "requires": { + "create-error-class": "3.0.2", + "duplexer2": "0.1.4", + "is-redirect": "1.0.0", + "is-retry-allowed": "1.1.0", + "is-stream": "1.1.0", + "lowercase-keys": "1.0.0", + "node-status-codes": "1.0.0", + "object-assign": "4.1.1", + "parse-json": "2.2.0", + "pinkie-promise": "2.0.1", + "read-all-stream": "3.1.0", + "readable-stream": "2.3.3", + "timed-out": "3.1.3", + "unzip-response": "1.0.2", + "url-parse-lax": "1.0.0" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + } + } + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" + }, + "graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" + }, + "gulp-decompress": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gulp-decompress/-/gulp-decompress-1.2.0.tgz", + "integrity": "sha1-jutlpeAV+O2FMsr+KEVJYGJvDcc=", + "requires": { + "archive-type": "3.2.0", + "decompress": "3.0.0", + "gulp-util": "3.0.8", + "readable-stream": "2.3.3" + } + }, + "gulp-sourcemaps": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-1.6.0.tgz", + "integrity": "sha1-uG/zSdgBzrVuHZ59x7vLS33uYAw=", + "requires": { + "convert-source-map": "1.5.1", + "graceful-fs": "4.1.11", + "strip-bom": "2.0.0", + "through2": "2.0.3", + "vinyl": "1.2.0" + }, + "dependencies": { + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + } + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "hosted-git-info": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz", + "integrity": "sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg==" + }, + "html-comment-regex": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/html-comment-regex/-/html-comment-regex-1.1.1.tgz", + "integrity": "sha1-ZouTd26q5V696POtRkswekljYl4=" + }, + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "requires": { + "repeating": "2.0.1" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" + }, + "ip-regex": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-1.0.3.tgz", + "integrity": "sha1-3FiQdvZZ9BnCIgOaMzFvHHOH7/0=" + }, + "is-absolute": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-0.1.7.tgz", + "integrity": "sha1-hHSREZ/MtftDYhfMc39/qtUPYD8=", + "requires": { + "is-relative": "0.1.3" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-builtin-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", + "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", + "requires": { + "builtin-modules": "1.1.1" + } + }, + "is-bzip2": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-bzip2/-/is-bzip2-1.0.0.tgz", + "integrity": "sha1-XuWOqlounIDiFAe+3yOuWsCRs/w=" + }, + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=" + }, + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "requires": { + "is-primitive": "2.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-gif": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-gif/-/is-gif-1.0.0.tgz", + "integrity": "sha1-ptKumIkwB7/6l6HYwB1jIFgyCX4=" + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "requires": { + "is-extglob": "2.1.1" + } + }, + "is-gzip": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-gzip/-/is-gzip-1.0.0.tgz", + "integrity": "sha1-bKiwe5nHeZgCWQDlVc7Y7YCHmoM=" + }, + "is-jpg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-jpg/-/is-jpg-1.0.0.tgz", + "integrity": "sha1-KVnBfnNDDbOCZNp1uQ3VTy2G2hw=" + }, + "is-natural-number": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-2.1.1.tgz", + "integrity": "sha1-fUxXKDd+84bD4ZSpkRv1fG3DNec=" + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "requires": { + "kind-of": "3.2.2" + } + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=" + }, + "is-png": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-png/-/is-png-1.1.0.tgz", + "integrity": "sha1-1XSxK/J1wDUEVVcLDltXqwYgd84=" + }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=" + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=" + }, + "is-redirect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", + "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=" + }, + "is-relative": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-0.1.3.tgz", + "integrity": "sha1-kF/uiuhvRbPsYUvDwVyGnfCHboI=" + }, + "is-retry-allowed": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", + "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=" + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "is-svg": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-2.1.0.tgz", + "integrity": "sha1-z2EJDaDZ77yrhyLeum8DIgjbsOk=", + "requires": { + "html-comment-regex": "1.1.1" + } + }, + "is-tar": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-tar/-/is-tar-1.0.0.tgz", + "integrity": "sha1-L2suF5LB9bs2UZrKqdZcDSb+hT0=" + }, + "is-url": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.2.tgz", + "integrity": "sha1-SYkFpZO/R8wtnn9zg3K792lsfyY=" + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" + }, + "is-valid-glob": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-0.3.0.tgz", + "integrity": "sha1-1LVcafUYhvm2XHDWwmItN+KfSP4=" + }, + "is-zip": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-zip/-/is-zip-1.0.0.tgz", + "integrity": "sha1-R7Co/004p2QxzP2ZqOFaTIa6IyU=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "requires": { + "isarray": "1.0.0" + } + }, + "jpeg-recompress-bin": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/jpeg-recompress-bin/-/jpeg-recompress-bin-3.0.1.tgz", + "integrity": "sha1-RqPnMAzKt5WxuNsnroAsJ6KDM6Q=", + "requires": { + "bin-wrapper": "3.0.2", + "logalot": "2.1.0" + } + }, + "jpegoptim-bin": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/jpegoptim-bin/-/jpegoptim-bin-3.0.0.tgz", + "integrity": "sha1-n3oF2DswK9GZE97PM5qdrhvaDCs=", + "requires": { + "bin-build": "2.2.0", + "bin-wrapper": "3.0.2", + "logalot": "2.1.0" + } + }, + "js-yaml": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.7.0.tgz", + "integrity": "sha1-XJZ93YN6m/3KXy3oQlOr6KHAO4A=", + "requires": { + "argparse": "1.0.9", + "esprima": "2.7.3" + } + }, + "json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "requires": { + "jsonify": "0.0.0" + } + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + }, + "lazy-req": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/lazy-req/-/lazy-req-1.1.0.tgz", + "integrity": "sha1-va6+rTD42CQDnODOFJ1Nqge6H6w=" + }, + "lazystream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", + "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "requires": { + "readable-stream": "2.3.3" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + } + } + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" + }, + "logalot": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/logalot/-/logalot-2.1.0.tgz", + "integrity": "sha1-X46MkNME7fElMJUaVVSruMXj9VI=", + "requires": { + "figures": "1.7.0", + "squeak": "1.3.0" + } + }, + "longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=" + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "requires": { + "currently-unhandled": "0.4.1", + "signal-exit": "3.0.2" + } + }, + "lowercase-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", + "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=" + }, + "lpad-align": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/lpad-align/-/lpad-align-1.1.2.tgz", + "integrity": "sha1-IfYArBwwlcPG5JfuZyce4ISB/p4=", + "requires": { + "get-stdin": "4.0.1", + "indent-string": "2.1.0", + "longest": "1.0.1", + "meow": "3.7.0" + } + }, + "lru-cache": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", + "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", + "requires": { + "pseudomap": "1.0.2", + "yallist": "2.1.2" + } + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "requires": { + "camelcase-keys": "2.1.0", + "decamelize": "1.2.0", + "loud-rejection": "1.6.0", + "map-obj": "1.0.1", + "minimist": "1.2.0", + "normalize-package-data": "2.4.0", + "object-assign": "4.1.1", + "read-pkg-up": "1.0.1", + "redent": "1.0.0", + "trim-newlines": "1.0.0" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + } + } + }, + "merge-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", + "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", + "requires": { + "readable-stream": "2.3.3" + } + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "requires": { + "arr-diff": "2.0.0", + "array-unique": "0.2.1", + "braces": "1.8.5", + "expand-brackets": "0.1.5", + "extglob": "0.3.2", + "filename-regex": "2.0.1", + "is-extglob": "1.0.0", + "is-glob": "2.0.1", + "kind-of": "3.2.2", + "normalize-path": "2.1.1", + "object.omit": "2.0.1", + "parse-glob": "3.0.4", + "regex-cache": "0.4.4" + }, + "dependencies": { + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "requires": { + "is-extglob": "1.0.0" + } + } + } + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "1.1.8" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + } + } + }, + "mozjpeg": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/mozjpeg/-/mozjpeg-4.1.1.tgz", + "integrity": "sha1-hZAwsk9omlPbm0DwFg2JGVuI/VA=", + "requires": { + "bin-build": "2.2.0", + "bin-wrapper": "3.0.2", + "logalot": "2.1.0" + } + }, + "node-status-codes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-status-codes/-/node-status-codes-1.0.0.tgz", + "integrity": "sha1-WuVUHQJGRdMqWPzdyc7s6nrjrC8=" + }, + "normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "requires": { + "hosted-git-info": "2.5.0", + "is-builtin-module": "1.0.0", + "semver": "5.5.0", + "validate-npm-package-license": "3.0.1" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "requires": { + "remove-trailing-separator": "1.1.0" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "requires": { + "path-key": "2.0.1" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "object-assign": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz", + "integrity": "sha1-Q8NuXVaf+OSBbE76i+AtJpZ8GKo=" + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "requires": { + "for-own": "0.1.5", + "is-extendable": "0.1.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1.0.2" + } + }, + "onetime": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=" + }, + "optipng-bin": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/optipng-bin/-/optipng-bin-4.0.0.tgz", + "integrity": "sha1-krk32X7mf+ii0pu87GuM7o8ahn4=", + "requires": { + "bin-build": "2.2.0", + "bin-wrapper": "3.0.2", + "logalot": "2.1.0" + } + }, + "ordered-read-streams": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz", + "integrity": "sha1-cTfmmzKYuzQiR6G77jiByA4v14s=", + "requires": { + "is-stream": "1.1.0", + "readable-stream": "2.3.3" + } + }, + "os-filter-obj": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/os-filter-obj/-/os-filter-obj-1.0.3.tgz", + "integrity": "sha1-WRUzDZDs7VV9LZOKMcbdIU2cY60=" + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "requires": { + "glob-base": "0.3.0", + "is-dotfile": "1.0.3", + "is-extglob": "1.0.0", + "is-glob": "2.0.1" + }, + "dependencies": { + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "requires": { + "is-extglob": "1.0.0" + } + } + } + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "requires": { + "error-ex": "1.3.1" + } + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "requires": { + "pinkie-promise": "2.0.1" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "requires": { + "graceful-fs": "4.1.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + } + } + }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "requires": { + "pinkie": "2.0.4" + } + }, + "pngquant-bin": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/pngquant-bin/-/pngquant-bin-3.1.1.tgz", + "integrity": "sha1-0STZinWpSH9AwWQLTb/Lsr1aH9E=", + "requires": { + "bin-build": "2.2.0", + "bin-wrapper": "3.0.2", + "logalot": "2.1.0" + } + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=" + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" + }, + "q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=" + }, + "randomatic": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz", + "integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==", + "requires": { + "is-number": "3.0.0", + "kind-of": "4.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "rc": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.4.tgz", + "integrity": "sha1-oPYGyq4qO4YrvQ74VILAElsxX6M=", + "requires": { + "deep-extend": "0.4.2", + "ini": "1.3.5", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + } + }, + "read-all-stream": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/read-all-stream/-/read-all-stream-3.1.0.tgz", + "integrity": "sha1-NcPhd/IHjveJ7kv6+kNzB06u9Po=", + "requires": { + "pinkie-promise": "2.0.1", + "readable-stream": "2.3.3" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "requires": { + "load-json-file": "1.1.0", + "normalize-package-data": "2.4.0", + "path-type": "1.1.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "requires": { + "find-up": "1.1.2", + "read-pkg": "1.1.0" + } + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "requires": { + "indent-string": "2.1.0", + "strip-indent": "1.0.1" + } + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "requires": { + "is-equal-shallow": "0.1.3" + } + }, + "repeat-element": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", + "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=" + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "requires": { + "is-finite": "1.0.2" + } + }, + "replace-ext": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", + "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=" + }, + "rimraf": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", + "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "requires": { + "glob": "7.1.2" + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "seek-bzip": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz", + "integrity": "sha1-z+kXyz0nS8/6x5J1ivUxc+sfq9w=", + "requires": { + "commander": "2.8.1" + } + }, + "semver": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", + "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==" + }, + "semver-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-1.0.0.tgz", + "integrity": "sha1-kqSWkGX5xwxpR1PVUkj8aPj2Usk=" + }, + "semver-truncate": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/semver-truncate/-/semver-truncate-1.1.2.tgz", + "integrity": "sha1-V/Qd5pcHpicJp+AQS6IRcQnqR+g=", + "requires": { + "semver": "5.5.0" + } + }, + "set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=" + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "spdx-correct": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz", + "integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=", + "requires": { + "spdx-license-ids": "1.2.2" + } + }, + "spdx-expression-parse": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz", + "integrity": "sha1-m98vIOH0DtRH++JzJmGR/O1RYmw=" + }, + "spdx-license-ids": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz", + "integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=" + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "squeak": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/squeak/-/squeak-1.3.0.tgz", + "integrity": "sha1-MwRQN7ZDiLVnZ0uEMiplIQc5FsM=", + "requires": { + "chalk": "1.1.3", + "console-stream": "0.1.1", + "lpad-align": "1.1.2" + } + }, + "stat-mode": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/stat-mode/-/stat-mode-0.2.2.tgz", + "integrity": "sha1-5sgLYjEj19gM8TLOU480YokHJQI=" + }, + "stream-combiner2": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", + "integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=", + "requires": { + "duplexer2": "0.1.4", + "readable-stream": "2.3.3" + } + }, + "stream-shift": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", + "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=" + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "requires": { + "is-utf8": "0.2.1" + } + }, + "strip-bom-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-1.0.0.tgz", + "integrity": "sha1-5xRDmFd9Uaa+0PoZlPoF9D/ZiO4=", + "requires": { + "first-chunk-stream": "1.0.0", + "strip-bom": "2.0.0" + } + }, + "strip-dirs": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-1.1.1.tgz", + "integrity": "sha1-lgu9EoeETzl1pFWKoQOoJV4kVqA=", + "requires": { + "chalk": "1.1.3", + "get-stdin": "4.0.1", + "is-absolute": "0.1.7", + "is-natural-number": "2.1.1", + "minimist": "1.2.0", + "sum-up": "1.0.3" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "requires": { + "get-stdin": "4.0.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + }, + "strip-outer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.0.tgz", + "integrity": "sha1-qsC6YNLpDF1PJ1/Yhp/ZotMQ/7g=", + "requires": { + "escape-string-regexp": "1.0.5" + } + }, + "sum-up": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sum-up/-/sum-up-1.0.3.tgz", + "integrity": "sha1-HGYfZnBX9jvLeHWqFDi8FiUlFW4=", + "requires": { + "chalk": "1.1.3" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + }, + "svgo": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-0.7.2.tgz", + "integrity": "sha1-n1dyQTlSE1xv779Ar+ak+qiLS7U=", + "requires": { + "coa": "1.0.4", + "colors": "1.1.2", + "csso": "2.3.2", + "js-yaml": "3.7.0", + "mkdirp": "0.5.1", + "sax": "1.2.4", + "whet.extend": "0.9.9" + } + }, + "tar-stream": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", + "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", + "requires": { + "bl": "1.2.1", + "end-of-stream": "1.4.1", + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "tempfile": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz", + "integrity": "sha1-awRGhWqbERTRhW/8vlCczLCXcmU=", + "requires": { + "temp-dir": "1.0.0", + "uuid": "3.2.1" + } + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "requires": { + "readable-stream": "1.0.34", + "xtend": "4.0.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + } + } + }, + "through2-concurrent": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/through2-concurrent/-/through2-concurrent-1.1.1.tgz", + "integrity": "sha1-EctOpMnjG8puTB5tukjRxyjDUks=", + "requires": { + "through2": "2.0.3" + }, + "dependencies": { + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + } + } + }, + "through2-filter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-2.0.0.tgz", + "integrity": "sha1-YLxVoNrLdghdsfna6Zq0P4PWIuw=", + "requires": { + "through2": "2.0.3", + "xtend": "4.0.1" + }, + "dependencies": { + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + } + } + }, + "timed-out": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-3.1.3.tgz", + "integrity": "sha1-lYYL/MXHbCd/j4Mm/Q9bLiDrohc=" + }, + "to-absolute-glob": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-0.1.1.tgz", + "integrity": "sha1-HN+kcqnvUMI57maZm2YsoOs5k38=", + "requires": { + "extend-shallow": "2.0.1" + } + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=" + }, + "trim-repeated": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz", + "integrity": "sha1-42RqLqTokTEr9+rObPsFOAvAHCE=", + "requires": { + "escape-string-regexp": "1.0.5" + } + }, + "tunnel-agent": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", + "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=" + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + }, + "unique-stream": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.2.1.tgz", + "integrity": "sha1-WqADz76Uxf+GbE59ZouxxNuts2k=", + "requires": { + "json-stable-stringify": "1.0.1", + "through2-filter": "2.0.0" + } + }, + "unzip-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz", + "integrity": "sha1-uYTwh3/AqJwsdzzB73tbIytbBv4=" + }, + "url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "requires": { + "prepend-http": "1.0.4" + } + }, + "url-regex": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/url-regex/-/url-regex-3.2.0.tgz", + "integrity": "sha1-260eDJ4p4QXdCx8J9oYvf9tIJyQ=", + "requires": { + "ip-regex": "1.0.3" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "uuid": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz", + "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==" + }, + "vali-date": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", + "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=" + }, + "validate-npm-package-license": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz", + "integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=", + "requires": { + "spdx-correct": "1.0.2", + "spdx-expression-parse": "1.0.4" + } + }, + "vinyl": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", + "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", + "requires": { + "clone": "1.0.3", + "clone-stats": "0.0.1", + "replace-ext": "0.0.1" + } + }, + "vinyl-assign": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/vinyl-assign/-/vinyl-assign-1.2.1.tgz", + "integrity": "sha1-TRmIkbVRWRHXcajNnFSApGoHSkU=", + "requires": { + "object-assign": "4.1.1", + "readable-stream": "2.3.3" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + } + } + }, + "vinyl-fs": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-2.4.4.tgz", + "integrity": "sha1-vm/zJwy1Xf19MGNkDegfJddTIjk=", + "requires": { + "duplexify": "3.5.3", + "glob-stream": "5.3.5", + "graceful-fs": "4.1.11", + "gulp-sourcemaps": "1.6.0", + "is-valid-glob": "0.3.0", + "lazystream": "1.0.0", + "lodash.isequal": "4.5.0", + "merge-stream": "1.0.1", + "mkdirp": "0.5.1", + "object-assign": "4.1.1", + "readable-stream": "2.3.3", + "strip-bom": "2.0.0", + "strip-bom-stream": "1.0.0", + "through2": "2.0.3", + "through2-filter": "2.0.0", + "vali-date": "1.0.0", + "vinyl": "1.2.0" + }, + "dependencies": { + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + } + } + }, + "ware": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/ware/-/ware-1.3.0.tgz", + "integrity": "sha1-0bFPOdLiy0q4xAmPdW/ksWTkc9Q=", + "requires": { + "wrap-fn": "0.1.5" + } + }, + "whet.extend": { + "version": "0.9.9", + "resolved": "https://registry.npmjs.org/whet.extend/-/whet.extend-0.9.9.tgz", + "integrity": "sha1-+HfVv2SMl+WqVC+twW1qJZucEaE=" + }, + "which": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", + "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", + "requires": { + "isexe": "2.0.0" + } + }, + "wrap-fn": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/wrap-fn/-/wrap-fn-0.1.5.tgz", + "integrity": "sha1-8htuQQFv9KfjFyDbxjoJAWvfmEU=", + "requires": { + "co": "3.1.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + }, + "yauzl": { + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.9.1.tgz", + "integrity": "sha1-qBmB6nCleUYTOIPwKcWCGok1mn8=", + "requires": { + "buffer-crc32": "0.2.13", + "fd-slicer": "1.0.1" + } + }, + "zopflipng-bin": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/zopflipng-bin/-/zopflipng-bin-4.1.0.tgz", + "integrity": "sha1-RrzVgzOB5k7OF/FMbv/qIOY5cwA=", + "requires": { + "bin-build": "2.2.0", + "bin-wrapper": "3.0.2", + "logalot": "2.1.0" + } + } + } + }, + "gulp-jshint": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/gulp-jshint/-/gulp-jshint-2.1.0.tgz", + "integrity": "sha512-sP3NK8Y/1e58O0PH9t6s7DAr/lKDSUbIY207oWSeufM6/VclB7jJrIBcPCsyhrFTCDUl9DauePbt6VqP2vPM5w==", + "requires": { + "lodash": "4.17.4", + "minimatch": "3.0.4", + "plugin-error": "0.1.2", + "rcloader": "0.2.2", + "through2": "2.0.3" + }, + "dependencies": { + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" + }, + "lodash.assign": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", + "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=" + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" + }, + "lodash.merge": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.0.tgz", + "integrity": "sha1-aYhLoUSsM/5plzemCG3v+t0PicU=" + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "1.1.8" + } + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "rcfinder": { + "version": "0.1.9", + "resolved": "https://registry.npmjs.org/rcfinder/-/rcfinder-0.1.9.tgz", + "integrity": "sha1-8+gPOH3fmugK4wpBADKWQuroERU=", + "requires": { + "lodash.clonedeep": "4.5.0" + } + }, + "rcloader": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/rcloader/-/rcloader-0.2.2.tgz", + "integrity": "sha1-WNIpi0YtC5v9ITPSoex0+9cFxxc=", + "requires": { + "lodash.assign": "4.2.0", + "lodash.isobject": "3.0.2", + "lodash.merge": "4.6.0", + "rcfinder": "0.1.9" + } + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + } + } + }, + "gulp-less": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/gulp-less/-/gulp-less-3.4.0.tgz", + "integrity": "sha512-qRaENWGzZlzb5xDuocsS51y6An1LWjTmCitOSfCNLTGH2O3/owqAjF0z11wUvlYu7OV6bo7R1KV55vOiQtuEWw==", + "requires": { + "accord": "0.27.3", + "less": "2.7.3", + "object-assign": "4.1.1", + "plugin-error": "0.1.2", + "replace-ext": "1.0.0", + "through2": "2.0.3", + "vinyl-sourcemaps-apply": "0.2.1" + }, + "dependencies": { + "accord": { + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/accord/-/accord-0.27.3.tgz", + "integrity": "sha1-f7kSlwkoXK6oTrNyxOiCAxtxOOg=", + "requires": { + "convert-source-map": "1.5.1", + "glob": "7.1.2", + "indx": "0.2.3", + "lodash.clone": "4.5.0", + "lodash.defaults": "4.2.0", + "lodash.flatten": "4.4.0", + "lodash.merge": "4.6.0", + "lodash.partialright": "4.2.1", + "lodash.pick": "4.4.0", + "lodash.uniq": "4.5.0", + "resolve": "1.5.0", + "semver": "5.5.0", + "uglify-js": "2.8.29", + "when": "3.7.8" + } + }, + "align-text": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", + "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", + "requires": { + "kind-of": "3.2.2", + "longest": "1.0.1", + "repeat-string": "1.6.1" + } + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", + "optional": true + }, + "camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=" + }, + "center-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", + "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", + "requires": { + "align-text": "0.1.4", + "lazy-cache": "1.0.4" + } + }, + "cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "requires": { + "center-align": "0.1.3", + "right-align": "0.1.3", + "wordwrap": "0.0.2" + } + }, + "convert-source-map": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + }, + "errno": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.6.tgz", + "integrity": "sha512-IsORQDpaaSwcDP4ZZnHxgE85werpo34VYn1Ud3mq+eUsF593faR8oCZNXrROVkpFu2TsbrNhHin0aUrTsQ9vNw==", + "optional": true, + "requires": { + "prr": "1.0.1" + } + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "optional": true + }, + "image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", + "optional": true + }, + "indx": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/indx/-/indx-0.2.3.tgz", + "integrity": "sha1-Fdz1bunPZcAjTFE8J/vVgOcPvFA=" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + }, + "lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" + }, + "less": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/less/-/less-2.7.3.tgz", + "integrity": "sha512-KPdIJKWcEAb02TuJtaLrhue0krtRLoRoo7x6BNJIBelO00t/CCdJQUnHW5V34OnHMWzIktSalJxRO+FvytQlCQ==", + "requires": { + "errno": "0.1.6", + "graceful-fs": "4.1.11", + "image-size": "0.5.5", + "mime": "1.6.0", + "mkdirp": "0.5.1", + "promise": "7.3.1", + "request": "2.81.0", + "source-map": "0.5.7" + } + }, + "lodash.clone": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", + "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=" + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" + }, + "lodash.merge": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.0.tgz", + "integrity": "sha1-aYhLoUSsM/5plzemCG3v+t0PicU=" + }, + "lodash.partialright": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.partialright/-/lodash.partialright-4.2.1.tgz", + "integrity": "sha1-ATDYDoM2MmTUAHTzKbij56ihzEs=" + }, + "lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" + }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=" + }, + "longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=" + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "optional": true + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "optional": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "optional": true, + "requires": { + "minimist": "0.0.8" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "optional": true, + "requires": { + "asap": "2.0.6" + } + }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "optional": true + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "replace-ext": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", + "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=" + }, + "resolve": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.5.0.tgz", + "integrity": "sha512-hgoSGrc3pjzAPHNBg+KnFcK2HwlHTs/YrAGUr6qgTVUZmXv1UEXXl0bZNBKMA9fud6lRYFdPGz0xXxycPzmmiw==", + "requires": { + "path-parse": "1.0.5" + } + }, + "right-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", + "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", + "requires": { + "align-text": "0.1.4" + } + }, + "semver": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", + "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "uglify-js": { + "version": "2.8.29", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", + "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", + "requires": { + "source-map": "0.5.7", + "uglify-to-browserify": "1.0.2", + "yargs": "3.10.0" + } + }, + "uglify-to-browserify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", + "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", + "optional": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "vinyl-sourcemaps-apply": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz", + "integrity": "sha1-q2VJ1h0XLCsbh75cUI0jnI74dwU=", + "requires": { + "source-map": "0.5.7" + } + }, + "when": { + "version": "3.7.8", + "resolved": "https://registry.npmjs.org/when/-/when-3.7.8.tgz", + "integrity": "sha1-xxMLan6gRpPoQs3J56Hyqjmjn4I=" + }, + "window-size": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=" + }, + "wordwrap": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + }, + "yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "requires": { + "camelcase": "1.2.1", + "cliui": "2.1.0", + "decamelize": "1.2.0", + "window-size": "0.1.0" + } + } + } + }, + "gulp-minify-css": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/gulp-minify-css/-/gulp-minify-css-1.2.4.tgz", + "integrity": "sha1-thZJV2Auon+eWtiCJ2ld0gV3jAY=", + "requires": { + "clean-css": "3.4.28", + "gulp-util": "3.0.8", + "object-assign": "4.1.1", + "readable-stream": "2.3.3", + "vinyl-bufferstream": "1.0.1", + "vinyl-sourcemaps-apply": "0.2.1" + }, + "dependencies": { + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" + }, + "bufferstreams": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/bufferstreams/-/bufferstreams-1.0.1.tgz", + "integrity": "sha1-z7GtlWjTujz+k1upq92VLeiKqyo=", + "requires": { + "readable-stream": "1.1.14" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + } + } + }, + "clean-css": { + "version": "3.4.28", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-3.4.28.tgz", + "integrity": "sha1-vxlF6C/ICPVWlebd6uwBQA79A/8=", + "requires": { + "commander": "2.8.1", + "source-map": "0.4.4" + } + }, + "commander": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", + "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", + "requires": { + "graceful-readlink": "1.0.1" + } + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "requires": { + "amdefine": "1.0.1" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "vinyl-bufferstream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/vinyl-bufferstream/-/vinyl-bufferstream-1.0.1.tgz", + "integrity": "sha1-BTeGn1gO/6TKRay0dXnkuf5jCBo=", + "requires": { + "bufferstreams": "1.0.1" + } + }, + "vinyl-sourcemaps-apply": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz", + "integrity": "sha1-q2VJ1h0XLCsbh75cUI0jnI74dwU=", + "requires": { + "source-map": "0.5.7" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + } + } + } + } + }, + "gulp-rename": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-1.2.2.tgz", + "integrity": "sha1-OtRCh2PwXidk3sHGfYaNsnVoeBc=" + }, + "gulp-sourcemaps": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-1.12.1.tgz", + "integrity": "sha1-tDfR89mAzyboEYSCNxjOFa5ll7Y=", + "requires": { + "@gulp-sourcemaps/map-sources": "1.0.0", + "acorn": "4.0.13", + "convert-source-map": "1.5.1", + "css": "2.2.1", + "debug-fabulous": "0.0.4", + "detect-newline": "2.1.0", + "graceful-fs": "4.1.11", + "source-map": "0.6.1", + "strip-bom": "2.0.0", + "through2": "2.0.3", + "vinyl": "1.2.0" + }, + "dependencies": { + "acorn": { + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" + }, + "atob": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/atob/-/atob-1.1.3.tgz", + "integrity": "sha1-lfE2KbEsOlGl0hWr3OKqnzL4B3M=" + }, + "clone": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.3.tgz", + "integrity": "sha1-KY1+IjFmD0DAA8LtMUDezz9TCF8=" + }, + "clone-stats": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", + "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=" + }, + "convert-source-map": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "css": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.1.tgz", + "integrity": "sha1-c6TIHehdtmTU7mdPfUcIXjstVdw=", + "requires": { + "inherits": "2.0.3", + "source-map": "0.1.43", + "source-map-resolve": "0.3.1", + "urix": "0.1.0" + }, + "dependencies": { + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "requires": { + "amdefine": "1.0.1" + } + } + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "debug-fabulous": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/debug-fabulous/-/debug-fabulous-0.0.4.tgz", + "integrity": "sha1-+gccXYdIRoVCSAdCHKSxawsaB2M=", + "requires": { + "debug": "2.6.9", + "lazy-debug-legacy": "0.0.1", + "object-assign": "4.1.0" + } + }, + "detect-newline": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", + "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=" + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "lazy-debug-legacy": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/lazy-debug-legacy/-/lazy-debug-legacy-0.0.1.tgz", + "integrity": "sha1-U3cWwHduTPeePtG2IfdljCkRsbE=" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "object-assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", + "integrity": "sha1-ejs9DpgGPUP0wD8uiubNUahog6A=" + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "replace-ext": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", + "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=" + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + }, + "source-map-resolve": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.3.1.tgz", + "integrity": "sha1-YQ9hIqRFuN1RU1oqcbeD38Ekh2E=", + "requires": { + "atob": "1.1.3", + "resolve-url": "0.2.1", + "source-map-url": "0.3.0", + "urix": "0.1.0" + } + }, + "source-map-url": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.3.0.tgz", + "integrity": "sha1-fsrxO1e80J2opAxdJp2zN5nUqvk=" + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "requires": { + "is-utf8": "0.2.1" + } + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "vinyl": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", + "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", + "requires": { + "clone": "1.0.3", + "clone-stats": "0.0.1", + "replace-ext": "0.0.1" + } + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + } + } + }, + "gulp-uglify": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/gulp-uglify/-/gulp-uglify-1.5.4.tgz", + "integrity": "sha1-UkeI2HZm0J+dDCH7IXf5ADmmWMk=", + "requires": { + "deap": "1.0.0", + "fancy-log": "1.3.2", + "gulp-util": "3.0.8", + "isobject": "2.1.0", + "through2": "2.0.3", + "uglify-js": "2.6.4", + "uglify-save-license": "0.4.1", + "vinyl-sourcemaps-apply": "0.2.1" + }, + "dependencies": { + "align-text": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", + "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", + "requires": { + "kind-of": "3.2.2", + "longest": "1.0.1", + "repeat-string": "1.6.1" + } + }, + "async": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", + "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=" + }, + "camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=" + }, + "center-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", + "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", + "requires": { + "align-text": "0.1.4", + "lazy-cache": "1.0.4" + } + }, + "cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "requires": { + "center-align": "0.1.3", + "right-align": "0.1.3", + "wordwrap": "0.0.2" + } + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "deap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/deap/-/deap-1.0.0.tgz", + "integrity": "sha1-sUi/gkMKJ2mbdIOgPra2dYW/yIg=" + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + }, + "fancy-log": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.2.tgz", + "integrity": "sha1-9BEl49hPLn2JpD0G2VjI94vha+E=", + "requires": { + "ansi-gray": "0.1.1", + "color-support": "1.1.3", + "time-stamp": "1.1.0" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "requires": { + "isarray": "1.0.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + }, + "lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" + }, + "longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=" + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "right-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", + "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", + "requires": { + "align-text": "0.1.4" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "time-stamp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", + "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=" + }, + "uglify-js": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.6.4.tgz", + "integrity": "sha1-ZeovswWck5RpLxX+2HwrNsFrmt8=", + "requires": { + "async": "0.2.10", + "source-map": "0.5.7", + "uglify-to-browserify": "1.0.2", + "yargs": "3.10.0" + } + }, + "uglify-save-license": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/uglify-save-license/-/uglify-save-license-0.4.1.tgz", + "integrity": "sha1-lXJsF8xv0XHDYX479NjYKqjEzOE=" + }, + "uglify-to-browserify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", + "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "vinyl-sourcemaps-apply": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz", + "integrity": "sha1-q2VJ1h0XLCsbh75cUI0jnI74dwU=", + "requires": { + "source-map": "0.5.7" + } + }, + "window-size": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=" + }, + "wordwrap": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + }, + "yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "requires": { + "camelcase": "1.2.1", + "cliui": "2.1.0", + "decamelize": "1.2.0", + "window-size": "0.1.0" + } + } + } + }, + "gulp-util": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.8.tgz", + "integrity": "sha1-AFTh50RQLifATBh8PsxQXdVLu08=", + "requires": { + "array-differ": "1.0.0", + "array-uniq": "1.0.3", + "beeper": "1.1.1", + "chalk": "1.1.3", + "dateformat": "2.2.0", + "fancy-log": "1.3.2", + "gulplog": "1.0.0", + "has-gulplog": "0.1.0", + "lodash._reescape": "3.0.0", + "lodash._reevaluate": "3.0.0", + "lodash._reinterpolate": "3.0.0", + "lodash.template": "3.6.2", + "minimist": "1.2.0", + "multipipe": "0.1.2", + "object-assign": "3.0.0", + "replace-ext": "0.0.1", + "through2": "2.0.3", + "vinyl": "0.5.3" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + }, + "array-differ": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", + "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=" + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + }, + "beeper": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/beeper/-/beeper-1.1.1.tgz", + "integrity": "sha1-5tXqjF2tABMEpwsiY4RH9pyy+Ak=" + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "clone": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.3.tgz", + "integrity": "sha1-KY1+IjFmD0DAA8LtMUDezz9TCF8=" + }, + "clone-stats": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", + "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "dateformat": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-2.2.0.tgz", + "integrity": "sha1-QGXiATz5+5Ft39gu+1Bq1MZ2kGI=" + }, + "duplexer2": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", + "integrity": "sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds=", + "requires": { + "readable-stream": "1.1.14" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "fancy-log": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.2.tgz", + "integrity": "sha1-9BEl49hPLn2JpD0G2VjI94vha+E=", + "requires": { + "ansi-gray": "0.1.1", + "color-support": "1.1.3", + "time-stamp": "1.1.0" + } + }, + "glogg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.1.tgz", + "integrity": "sha512-ynYqXLoluBKf9XGR1gA59yEJisIL7YHEH4xr3ZziHB5/yl4qWfaK8Js9jGe6gBGCSCKVqiyO30WnRZADvemUNw==", + "requires": { + "sparkles": "1.0.0" + } + }, + "gulplog": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", + "integrity": "sha1-4oxNRdBey77YGDY86PnFkmIp/+U=", + "requires": { + "glogg": "1.0.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "has-gulplog": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz", + "integrity": "sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4=", + "requires": { + "sparkles": "1.0.0" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "lodash._basecopy": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", + "integrity": "sha1-jaDmqHbPNEwK2KVIghEd08XHyjY=" + }, + "lodash._basetostring": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz", + "integrity": "sha1-0YYdh3+CSlL2aYMtyvPuFVZqB9U=" + }, + "lodash._basevalues": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz", + "integrity": "sha1-W3dXYoAr3j0yl1A+JjAIIP32Ybc=" + }, + "lodash._getnative": { + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", + "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=" + }, + "lodash._isiterateecall": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz", + "integrity": "sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw=" + }, + "lodash._reescape": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reescape/-/lodash._reescape-3.0.0.tgz", + "integrity": "sha1-Kx1vXf4HyKNVdT5fJ/rH8c3hYWo=" + }, + "lodash._reevaluate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz", + "integrity": "sha1-WLx0xAZklTrgsSTYBpltrKQx4u0=" + }, + "lodash._reinterpolate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", + "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=" + }, + "lodash._root": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz", + "integrity": "sha1-+6HEUkwZ7ppfgTa0YJ8BfPTe1pI=" + }, + "lodash.escape": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz", + "integrity": "sha1-mV7g3BjBtIzJLv+ucaEKq1tIdpg=", + "requires": { + "lodash._root": "3.0.1" + } + }, + "lodash.isarguments": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", + "integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=" + }, + "lodash.isarray": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", + "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=" + }, + "lodash.keys": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", + "integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=", + "requires": { + "lodash._getnative": "3.9.1", + "lodash.isarguments": "3.1.0", + "lodash.isarray": "3.0.4" + } + }, + "lodash.restparam": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz", + "integrity": "sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU=" + }, + "lodash.template": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz", + "integrity": "sha1-+M3sxhaaJVvpCYrosMU9N4kx0U8=", + "requires": { + "lodash._basecopy": "3.0.1", + "lodash._basetostring": "3.0.1", + "lodash._basevalues": "3.0.0", + "lodash._isiterateecall": "3.0.9", + "lodash._reinterpolate": "3.0.0", + "lodash.escape": "3.2.0", + "lodash.keys": "3.1.2", + "lodash.restparam": "3.6.1", + "lodash.templatesettings": "3.1.1" + } + }, + "lodash.templatesettings": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz", + "integrity": "sha1-+zB4RHU7Zrnxr6VOJix0UwfbqOU=", + "requires": { + "lodash._reinterpolate": "3.0.0", + "lodash.escape": "3.2.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "multipipe": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/multipipe/-/multipipe-0.1.2.tgz", + "integrity": "sha1-Ko8t33Du1WTf8tV/HhoTfZ8FB4s=", + "requires": { + "duplexer2": "0.0.2" + } + }, + "object-assign": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", + "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=" + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "replace-ext": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", + "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=" + }, + "sparkles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.0.tgz", + "integrity": "sha1-Gsu/tZJDbRC76PeFt8xvgoFQEsM=" + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + } + } + }, + "time-stamp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", + "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "vinyl": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz", + "integrity": "sha1-sEVbOPxeDPMNQyUTLkYZcMIJHN4=", + "requires": { + "clone": "1.0.3", + "clone-stats": "0.0.1", + "replace-ext": "0.0.1" + } + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + } + } + }, + "har-schema": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz", + "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=", + "optional": true + }, + "har-validator": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz", + "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=", + "optional": true, + "requires": { + "ajv": "4.11.8", + "har-schema": "1.0.5" + } + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "requires": { + "get-value": "2.0.6", + "has-values": "1.0.0", + "isobject": "3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + } + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "requires": { + "is-number": "3.0.0", + "kind-of": "4.0.0" + }, + "dependencies": { + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "hash-base": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz", + "integrity": "sha1-ZuodhW206KVHDK32/OI65SRO8uE=", + "requires": { + "inherits": "2.0.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + } + } + }, + "hawk": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", + "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", + "optional": true, + "requires": { + "boom": "2.10.1", + "cryptiles": "2.0.5", + "hoek": "2.16.3", + "sntp": "1.0.9" + } + }, + "history": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/history/-/history-2.1.2.tgz", + "integrity": "sha1-SqLeiXoOSGfkU5hDvm7Nsphr/ew=", + "requires": { + "deep-equal": "1.0.1", + "invariant": "2.2.2", + "query-string": "3.0.3", + "warning": "2.1.0" + }, + "dependencies": { + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=" + }, + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + "requires": { + "loose-envify": "1.3.1" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } + }, + "query-string": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-3.0.3.tgz", + "integrity": "sha1-ri4UtNBQcdTpuetIc8NbDc1C5jg=", + "requires": { + "strict-uri-encode": "1.1.0" + } + }, + "strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=" + }, + "warning": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/warning/-/warning-2.1.0.tgz", + "integrity": "sha1-ISINnGOvx3qMkhEeARr3Bc4MaQE=", + "requires": { + "loose-envify": "1.3.1" + } + } + } + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "requires": { + "hash.js": "1.1.3", + "minimalistic-assert": "1.0.0", + "minimalistic-crypto-utils": "1.0.1" + }, + "dependencies": { + "hash.js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", + "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", + "requires": { + "inherits": "2.0.3", + "minimalistic-assert": "1.0.0" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "minimalistic-assert": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", + "integrity": "sha1-cCvi3aazf0g2vLP121ZkG2Sh09M=" + } + } + }, + "hoek": { + "version": "2.16.3", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", + "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" + }, + "http-signature": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", + "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", + "optional": true, + "requires": { + "assert-plus": "0.2.0", + "jsprim": "1.4.1", + "sshpk": "1.13.1" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "6.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + } + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "6.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + } + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + } } }, - "glogg": { - "version": "https://registry.npmjs.org/glogg/-/glogg-1.0.0.tgz", - "integrity": "sha1-f+DxmfV6yQbPUS/urY+Q7kooT8U=", + "is-odd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-odd/-/is-odd-1.0.0.tgz", + "integrity": "sha1-O4qTLrAos3dcObsJ6RdnrM22kIg=", "requires": { - "sparkles": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.0.tgz" + "is-number": "3.0.0" + }, + "dependencies": { + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "3.2.2" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } } }, - "got": { - "version": "https://registry.npmjs.org/got/-/got-5.7.1.tgz", - "integrity": "sha1-X4FjWmHkplifGAVp6k44FoClHzU=", + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "requires": { - "create-error-class": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", - "duplexer2": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "is-redirect": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", - "is-retry-allowed": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", - "is-stream": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "lowercase-keys": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", - "node-status-codes": "https://registry.npmjs.org/node-status-codes/-/node-status-codes-1.0.0.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "parse-json": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "read-all-stream": "https://registry.npmjs.org/read-all-stream/-/read-all-stream-3.1.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz", - "timed-out": "https://registry.npmjs.org/timed-out/-/timed-out-3.1.0.tgz", - "unzip-response": "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz", - "url-parse-lax": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz" + "isobject": "3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + } } }, - "graceful-fs": { - "version": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "optional": true }, - "graceful-readlink": { - "version": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", - "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "optional": true }, - "growl": { - "version": "https://registry.npmjs.org/growl/-/growl-1.9.2.tgz", - "integrity": "sha1-Dqd0NxXbjY3ixe3hd14bRayFwC8=", - "dev": true + "jquery": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-2.2.4.tgz", + "integrity": "sha1-LInWiJterFIqfuoywUUhVZxsvwI=" }, - "gulp": { - "version": "https://registry.npmjs.org/gulp/-/gulp-3.9.1.tgz", - "integrity": "sha1-VxzkWSjdQK9lFPxAEYZgFsE4RbQ=", + "jquery-mockjax": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/jquery-mockjax/-/jquery-mockjax-2.3.0.tgz", + "integrity": "sha512-ur5YhwDwT2P+zz4RJedV/ldC+4lZQQoU3/nNKRbK521jTTGvnrzmx4PZJM4Dquk1r2OlIER4sK5ZaxunMbaB7w==", + "requires": { + "jquery": "2.2.4" + } + }, + "jquery.caret": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/jquery.caret/-/jquery.caret-0.3.1.tgz", + "integrity": "sha1-nAkzGPrzJ+/zIugmyp8yQTaLx7g=" + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "optional": true + }, + "jshint": { + "version": "2.9.5", + "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.9.5.tgz", + "integrity": "sha1-HnJSkVzmgbQIJ+4UJIxG006apiw=", + "dev": true, + "requires": { + "cli": "1.0.1", + "console-browserify": "1.1.0", + "exit": "0.1.2", + "htmlparser2": "3.8.3", + "lodash": "3.7.0", + "minimatch": "3.0.4", + "shelljs": "0.3.0", + "strip-json-comments": "1.0.4" + }, + "dependencies": { + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "dev": true, + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "cli": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cli/-/cli-1.0.1.tgz", + "integrity": "sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ=", + "dev": true, + "requires": { + "exit": "0.1.2", + "glob": "7.1.2" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "dev": true, + "requires": { + "date-now": "0.1.4" + } + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", + "dev": true + }, + "dom-serializer": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", + "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", + "dev": true, + "requires": { + "domelementtype": "1.1.3", + "entities": "1.1.1" + }, + "dependencies": { + "domelementtype": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", + "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=", + "dev": true + }, + "entities": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", + "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=", + "dev": true + } + } + }, + "domelementtype": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz", + "integrity": "sha1-sXrtguirWeUt2cGbF1bg/BhyBMI=", + "dev": true + }, + "domhandler": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz", + "integrity": "sha1-LeWaCCLVAn+r/28DLCsloqir5zg=", + "dev": true, + "requires": { + "domelementtype": "1.3.0" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "requires": { + "dom-serializer": "0.1.0", + "domelementtype": "1.3.0" + } + }, + "entities": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz", + "integrity": "sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY=", + "dev": true + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true + }, + "htmlparser2": { + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz", + "integrity": "sha1-mWwosZFRaovoZQGn15dX5ccMEGg=", + "dev": true, + "requires": { + "domelementtype": "1.3.0", + "domhandler": "2.3.0", + "domutils": "1.5.1", + "entities": "1.0.0", + "readable-stream": "1.1.14" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "lodash": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.7.0.tgz", + "integrity": "sha1-Nni9irmVBXwHreg27S7wh9qBHUU=", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "1.1.8" + } + }, + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "shelljs": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.3.0.tgz", + "integrity": "sha1-NZbmMHp4FUT1kfN9phg2DzHbV7E=", + "dev": true + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "strip-json-comments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz", + "integrity": "sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=", + "dev": true + } + } + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "optional": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "optional": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "optional": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "optional": true + } + } + }, + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" + }, + "lodash.isobject": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/lodash.isobject/-/lodash.isobject-3.0.2.tgz", + "integrity": "sha1-PI+41bW/S/kK4G4U8qUwpO2TXh0=" + }, + "make-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.0.tgz", + "integrity": "sha1-V7713IXSOSO6I3ZzJNjo+PPZaUs=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "requires": { + "object-visit": "1.0.1" + } + }, + "md5.js": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", + "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", + "requires": { + "hash-base": "3.0.4", + "inherits": "2.0.3" + }, + "dependencies": { + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "requires": { + "inherits": "2.0.3", + "safe-buffer": "5.1.1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + } + } + }, + "mime-db": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", + "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=" + }, + "mime-types": { + "version": "2.1.17", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", + "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", + "requires": { + "mime-db": "1.30.0" + } + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" + }, + "mixin-deep": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.0.tgz", + "integrity": "sha512-dgaCvoh6i1nosAUBKb0l0pfJ78K8+S9fluyIR2YvAeUD/QuMahnFnF3xYty5eYXMjhGSsB0DsW6A0uAZyetoAg==", + "requires": { + "for-in": "1.0.2", + "is-extendable": "1.0.1" + }, + "dependencies": { + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "2.0.4" + } + } + } + }, + "mochify": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/mochify/-/mochify-2.19.0.tgz", + "integrity": "sha1-aJOka3YTHk01H+AF28vK7CqvGpo=", + "dev": true, "requires": { - "archy": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "deprecated": "https://registry.npmjs.org/deprecated/-/deprecated-0.0.1.tgz", - "gulp-util": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.7.tgz", - "interpret": "https://registry.npmjs.org/interpret/-/interpret-1.0.1.tgz", - "liftoff": "https://registry.npmjs.org/liftoff/-/liftoff-2.3.0.tgz", - "minimist": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "orchestrator": "https://registry.npmjs.org/orchestrator/-/orchestrator-0.3.8.tgz", - "pretty-hrtime": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", - "semver": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz", - "tildify": "https://registry.npmjs.org/tildify/-/tildify-1.2.0.tgz", - "v8flags": "https://registry.npmjs.org/v8flags/-/v8flags-2.0.11.tgz", - "vinyl-fs": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-0.3.14.tgz" + "brout": "1.2.0", + "browserify": "13.3.0", + "consolify": "2.2.0", + "coverify": "1.5.0", + "glob": "7.1.2", + "min-wd": "2.9.3", + "mocaccino": "1.9.0", + "mocha": "2.5.3", + "phantomic": "1.5.2", + "resolve": "1.5.0", + "source-mapper": "2.0.0", + "subarg": "1.0.0", + "through2": "2.0.3", + "watchify": "3.10.0", + "which": "1.3.0" }, "dependencies": { + "acorn": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.3.0.tgz", + "integrity": "sha512-Yej+zOJ1Dm/IMZzzj78OntP/r3zHEaKcyNoU2lAaxPtrseM6rF0xwqoz5Q5ysAiED9hTjI2hgtvLXitlCN1/Ug==", + "dev": true + }, + "agent-base": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-2.1.1.tgz", + "integrity": "sha1-1t4Q1a9hMtW9aSQn1G/FOFOQlMc=", + "dev": true, + "requires": { + "extend": "3.0.1", + "semver": "5.0.3" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true + }, + "ansi_up": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/ansi_up/-/ansi_up-1.3.0.tgz", + "integrity": "sha1-yclGv8C5u16qBgaEvyq6r+aLvUQ=", + "dev": true + }, + "brout": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/brout/-/brout-1.2.0.tgz", + "integrity": "sha1-B3Hav3ltMS8KfB8SgeAPdmDPcC8=", + "dev": true, + "requires": { + "through2": "2.0.3" + } + }, + "browser-reload": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/browser-reload/-/browser-reload-1.1.0.tgz", + "integrity": "sha1-UTwetc6RP+NqC6GOE5CcsHtCWpI=", + "dev": true + }, + "commander": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.3.0.tgz", + "integrity": "sha1-/UMOiJgy7DU7ms0d4hfBHLPu+HM=", + "dev": true + }, + "concat-stream": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz", + "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=", + "dev": true, + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.3", + "typedarray": "0.0.6" + } + }, + "consolify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/consolify/-/consolify-2.2.0.tgz", + "integrity": "sha1-YiHbEHSgjYQP8wpcDLvzxgmnT4w=", + "dev": true, + "requires": { + "ansi_up": "1.3.0", + "brout": "1.2.0", + "browser-reload": "1.1.0", + "source-mapper": "2.0.0", + "through2": "2.0.3" + } + }, + "convert-source-map": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "coverify": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/coverify/-/coverify-1.5.0.tgz", + "integrity": "sha512-5MJtBUIfjeg3y7JZo8NCpHnWqODzNPKg1SC4gDDj20L8+7345U30NdAOeb4Gq3ILvnem9g64B9qYAMRVb6TBOg==", + "dev": true, + "requires": { + "convert-source-map": "1.5.1", + "falafel": "2.1.0", + "minimist": "1.2.0", + "slash": "1.0.0", + "source-map": "0.4.4", + "split2": "0.2.1", + "stream-combiner2": "1.1.1", + "through2": "0.6.5" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "dev": true, + "requires": { + "amdefine": "1.0.1" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "dev": true, + "requires": { + "readable-stream": "1.0.34", + "xtend": "4.0.1" + } + } + } + }, + "cross-spawn": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-2.2.3.tgz", + "integrity": "sha1-+sViAt/T0N2GF3jy2iA79DS7ghw=", + "dev": true, + "requires": { + "cross-spawn-async": "2.2.5", + "spawn-sync": "1.0.15" + } + }, + "cross-spawn-async": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/cross-spawn-async/-/cross-spawn-async-2.2.5.tgz", + "integrity": "sha1-hF/wwINKPe2dFg2sptOQkGuyiMw=", + "dev": true, + "requires": { + "lru-cache": "4.1.1", + "which": "1.3.0" + }, + "dependencies": { + "lru-cache": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", + "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", + "dev": true, + "requires": { + "pseudomap": "1.0.2", + "yallist": "2.1.2" + } + } + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "diff": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-1.4.0.tgz", + "integrity": "sha1-fyjS657nsVqX79ic5j3P2qPMur8=", + "dev": true + }, + "duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "dev": true, + "requires": { + "readable-stream": "2.3.3" + } + }, + "es5-shim": { + "version": "4.5.10", + "resolved": "https://registry.npmjs.org/es5-shim/-/es5-shim-4.5.10.tgz", + "integrity": "sha512-vmryBdqKRO8Ei9LJ4yyEk/EOmAOGIagcHDYPpTAi6pot4IMHS1AC2q5cTKPmydpijg2iX8DVmCuqgrNxIWj8Yg==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.2.tgz", + "integrity": "sha1-Tbwv5nTnGUnK8/smlc5/LcHZqNE=", + "dev": true + }, + "extend": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", + "dev": true + }, + "falafel": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/falafel/-/falafel-2.1.0.tgz", + "integrity": "sha1-lrsXdh2rqU9G0AFzizzt86Z/4Gw=", + "dev": true, + "requires": { + "acorn": "5.3.0", + "foreach": "2.0.5", + "isarray": "0.0.1", + "object-keys": "1.0.11" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + } + } + }, + "foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "dev": true + }, + "growl": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.9.2.tgz", + "integrity": "sha1-Dqd0NxXbjY3ixe3hd14bRayFwC8=", + "dev": true + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "https-proxy-agent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-1.0.0.tgz", + "integrity": "sha1-NffabEjOTdv6JkiRrFk+5f+GceY=", + "dev": true, + "requires": { + "agent-base": "2.1.1", + "debug": "2.6.9", + "extend": "3.0.1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "jade": { + "version": "0.26.3", + "resolved": "https://registry.npmjs.org/jade/-/jade-0.26.3.tgz", + "integrity": "sha1-jxDXl32NefL2/4YqgbBRPMslaGw=", + "dev": true, + "requires": { + "commander": "0.6.1", + "mkdirp": "0.3.0" + }, + "dependencies": { + "commander": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-0.6.1.tgz", + "integrity": "sha1-+mihT2qUXVTbvlDYzbMyDp47GgY=", + "dev": true + }, + "mkdirp": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz", + "integrity": "sha1-G79asbqCevI1dRQ0kEJkVfSB/h4=", + "dev": true + } + } + }, + "listen": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/listen/-/listen-1.0.1.tgz", + "integrity": "sha1-/u3j1ah0xTwihNPDWXpfxa/HTkM=", + "dev": true + }, + "lru-cache": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz", + "integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI=", + "dev": true + }, + "min-wd": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/min-wd/-/min-wd-2.9.3.tgz", + "integrity": "sha1-Nda8fTL2bmAZK6vf1sFnTpkvE70=", + "dev": true, + "requires": { + "brout": "1.2.0", + "listen": "1.0.1", + "resolve": "1.5.0", + "saucelabs": "1.4.0", + "source-mapper": "2.0.0", + "through2": "2.0.3" + } + }, + "minimatch": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz", + "integrity": "sha1-J12O2qxPG7MyZHIInnlJyDlGmd0=", + "dev": true, + "requires": { + "lru-cache": "2.7.3", + "sigmund": "1.0.1" + } + }, "minimist": { - "version": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + } + } + }, + "mocaccino": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/mocaccino/-/mocaccino-1.9.0.tgz", + "integrity": "sha1-GyxkvI/XnRHa7D7Mo/kfPi5UDTk=", + "dev": true, + "requires": { + "brout": "1.2.0", + "listen": "1.0.1", + "mocha": "2.5.3", + "resolve": "1.5.0", + "supports-color": "3.2.3", + "through2": "2.0.3" + } + }, + "mocha": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-2.5.3.tgz", + "integrity": "sha1-FhvlvetJZ3HrmzV0UFC2IrWu/Fg=", + "dev": true, + "requires": { + "commander": "2.3.0", + "debug": "2.2.0", + "diff": "1.4.0", + "escape-string-regexp": "1.0.2", + "glob": "3.2.11", + "growl": "1.9.2", + "jade": "0.26.3", + "mkdirp": "0.5.1", + "supports-color": "1.2.0", + "to-iso-string": "0.0.2" + }, + "dependencies": { + "debug": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", + "dev": true, + "requires": { + "ms": "0.7.1" + } + }, + "glob": { + "version": "3.2.11", + "resolved": "https://registry.npmjs.org/glob/-/glob-3.2.11.tgz", + "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=", + "dev": true, + "requires": { + "inherits": "2.0.3", + "minimatch": "0.3.0" + } + }, + "ms": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", + "dev": true + }, + "supports-color": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-1.2.0.tgz", + "integrity": "sha1-/x7R5hFp0Gs88tWI4YixjYhH4X4=", + "dev": true + } + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "object-keys": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz", + "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=", + "dev": true + }, + "os-shim": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", + "integrity": "sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=", + "dev": true + }, + "phantomic": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/phantomic/-/phantomic-1.5.2.tgz", + "integrity": "sha1-U+GMW79vpSrE+oNdYVV/cgtK4l4=", + "dev": true, + "requires": { + "cross-spawn": "2.2.3", + "es5-shim": "4.5.10", + "source-mapper": "2.0.0" + } + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "resolve": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.5.0.tgz", + "integrity": "sha512-hgoSGrc3pjzAPHNBg+KnFcK2HwlHTs/YrAGUr6qgTVUZmXv1UEXXl0bZNBKMA9fud6lRYFdPGz0xXxycPzmmiw==", + "dev": true, + "requires": { + "path-parse": "1.0.5" + } + }, + "saucelabs": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/saucelabs/-/saucelabs-1.4.0.tgz", + "integrity": "sha1-uTSpr52ih0s/QKrh/N5QpEZvXzg=", + "dev": true, + "requires": { + "https-proxy-agent": "1.0.0" + } + }, + "semver": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.0.3.tgz", + "integrity": "sha1-d0Zt5YnNXTyV8TiqeLxWmjy10no=", + "dev": true + }, + "sigmund": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", + "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=", + "dev": true + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "source-mapper": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/source-mapper/-/source-mapper-2.0.0.tgz", + "integrity": "sha1-Z8pIx5R1gS2HRiqnqqey9e0NNOo=", + "dev": true, + "requires": { + "convert-source-map": "1.5.1", + "source-map": "0.5.7", + "through2": "2.0.3" + } + }, + "spawn-sync": { + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/spawn-sync/-/spawn-sync-1.0.15.tgz", + "integrity": "sha1-sAeZVX63+wyDdsKdROih6mfldHY=", + "dev": true, + "requires": { + "concat-stream": "1.6.0", + "os-shim": "0.1.3" + } + }, + "split2": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/split2/-/split2-0.2.1.tgz", + "integrity": "sha1-At2smtwD7Au3jBKC7Aecpuha6QA=", + "dev": true, + "requires": { + "through2": "0.6.5" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "dev": true, + "requires": { + "readable-stream": "1.0.34", + "xtend": "4.0.1" + } + } + } + }, + "stream-combiner2": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", + "integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=", + "dev": true, + "requires": { + "duplexer2": "0.1.4", + "readable-stream": "2.3.3" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "dev": true, + "requires": { + "safe-buffer": "5.1.1" + } + }, + "subarg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", + "integrity": "sha1-9izxdYHplrSPyWVpn1TAauJouNI=", + "dev": true, + "requires": { + "minimist": "1.2.0" + } + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "dev": true, + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "to-iso-string": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/to-iso-string/-/to-iso-string-0.0.2.tgz", + "integrity": "sha1-TcGeZk38y+Jb2NtQiwDG2hWCVdE=", + "dev": true + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "which": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", + "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", + "dev": true, + "requires": { + "isexe": "2.0.0" + } + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true } } }, - "gulp-decompress": { - "version": "https://registry.npmjs.org/gulp-decompress/-/gulp-decompress-1.2.0.tgz", - "integrity": "sha1-jutlpeAV+O2FMsr+KEVJYGJvDcc=", - "requires": { - "archive-type": "https://registry.npmjs.org/archive-type/-/archive-type-3.2.0.tgz", - "decompress": "https://registry.npmjs.org/decompress/-/decompress-3.0.0.tgz", - "gulp-util": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.7.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz" - } - }, - "gulp-image": { - "version": "https://registry.npmjs.org/gulp-image/-/gulp-image-2.7.2.tgz", - "integrity": "sha1-gjS2FHOJZbEOG6gfrs4Q3x8jB4E=", - "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "exec-buffer": "https://registry.npmjs.org/exec-buffer/-/exec-buffer-3.1.0.tgz", - "execa": "https://registry.npmjs.org/execa/-/execa-0.5.0.tgz", - "filesize": "https://registry.npmjs.org/filesize/-/filesize-3.3.0.tgz", - "gifsicle": "https://registry.npmjs.org/gifsicle/-/gifsicle-3.0.4.tgz", - "gulp-util": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.7.tgz", - "is-gif": "https://registry.npmjs.org/is-gif/-/is-gif-1.0.0.tgz", - "is-jpg": "https://registry.npmjs.org/is-jpg/-/is-jpg-1.0.0.tgz", - "is-png": "https://registry.npmjs.org/is-png/-/is-png-1.0.0.tgz", - "is-svg": "https://registry.npmjs.org/is-svg/-/is-svg-2.1.0.tgz", - "jpeg-recompress-bin": "https://registry.npmjs.org/jpeg-recompress-bin/-/jpeg-recompress-bin-3.0.1.tgz", - "jpegoptim-bin": "https://registry.npmjs.org/jpegoptim-bin/-/jpegoptim-bin-3.0.0.tgz", - "mozjpeg": "https://registry.npmjs.org/mozjpeg/-/mozjpeg-4.1.1.tgz", - "optipng-bin": "https://registry.npmjs.org/optipng-bin/-/optipng-bin-3.1.2.tgz", - "pngquant-bin": "https://registry.npmjs.org/pngquant-bin/-/pngquant-bin-3.1.1.tgz", - "svgo": "https://registry.npmjs.org/svgo/-/svgo-0.7.1.tgz", - "through2-concurrent": "https://registry.npmjs.org/through2-concurrent/-/through2-concurrent-1.1.1.tgz", - "zopflipng-bin": "https://registry.npmjs.org/zopflipng-bin/-/zopflipng-bin-3.0.1.tgz" - } + "moment": { + "version": "2.20.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.20.1.tgz", + "integrity": "sha512-Yh9y73JRljxW5QxN08Fner68eFLxM5ynNOAw2LbIB1YAGeQzZT8QFSUvkAz609Zf+IHhhaUxqZK8dG3W/+HEvg==" + }, + "nanomatch": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.7.tgz", + "integrity": "sha512-/5ldsnyurvEw7wNpxLFgjVvBLMta43niEYOy0CJ4ntcYSbx6bugRUTQeFb4BR/WanEL1o3aQgHuVLHQaB6tOqg==", + "requires": { + "arr-diff": "4.0.0", + "array-unique": "0.3.2", + "define-property": "1.0.0", + "extend-shallow": "2.0.1", + "fragment-cache": "0.2.1", + "is-odd": "1.0.0", + "kind-of": "5.1.0", + "object.pick": "1.3.0", + "regex-not": "1.0.0", + "snapdragon": "0.8.1", + "to-regex": "3.0.1" + }, + "dependencies": { + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "oauth-sign": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", + "optional": true }, - "gulp-jshint": { - "version": "https://registry.npmjs.org/gulp-jshint/-/gulp-jshint-2.0.4.tgz", - "integrity": "sha1-84KxhWSxBy3vDJqvdTwUba208Og=", + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", "requires": { - "gulp-util": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.7.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", - "rcloader": "https://registry.npmjs.org/rcloader/-/rcloader-0.2.2.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz" + "copy-descriptor": "0.1.1", + "define-property": "0.2.5", + "kind-of": "3.2.2" }, "dependencies": { - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "integrity": "sha1-NKMFW6vgTOQkZ7YH1wAHLH/2v0I=" + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "3.2.2" + } }, - "minimatch": { - "version": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha1-Kk5AkLlrLbBqnX3wEFWmKnfJt3Q=", + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "3.2.2" + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "requires": { - "brace-expansion": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.6.tgz" + "is-buffer": "1.1.6" } } } }, - "gulp-less": { - "version": "https://registry.npmjs.org/gulp-less/-/gulp-less-3.3.0.tgz", - "integrity": "sha1-0IVWXaPIEDB/3nx4dOhlINxQMjQ=", - "requires": { - "accord": "https://registry.npmjs.org/accord/-/accord-0.26.4.tgz", - "gulp-util": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.7.tgz", - "less": "https://registry.npmjs.org/less/-/less-2.7.1.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "vinyl-sourcemaps-apply": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz" - } - }, - "gulp-minify-css": { - "version": "https://registry.npmjs.org/gulp-minify-css/-/gulp-minify-css-1.2.4.tgz", - "integrity": "sha1-thZJV2Auon+eWtiCJ2ld0gV3jAY=", + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", "requires": { - "clean-css": "https://registry.npmjs.org/clean-css/-/clean-css-3.4.22.tgz", - "gulp-util": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.7.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz", - "vinyl-bufferstream": "https://registry.npmjs.org/vinyl-bufferstream/-/vinyl-bufferstream-1.0.1.tgz", - "vinyl-sourcemaps-apply": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz" + "isobject": "3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + } } }, - "gulp-rename": { - "version": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-1.2.2.tgz", - "integrity": "sha1-OtRCh2PwXidk3sHGfYaNsnVoeBc=" - }, - "gulp-sourcemaps": { - "version": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-1.9.1.tgz", - "integrity": "sha1-gKwtOEXRPmjdliUk2KlnpECwt1M=", + "object.defaults": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", + "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", "requires": { - "acorn": "https://registry.npmjs.org/acorn/-/acorn-4.0.3.tgz", - "convert-source-map": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.3.0.tgz", - "css": "https://registry.npmjs.org/css/-/css-2.2.1.tgz", - "debug-fabulous": "https://registry.npmjs.org/debug-fabulous/-/debug-fabulous-0.0.4.tgz", - "detect-newline": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", - "strip-bom": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "vinyl": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz" + "array-each": "1.0.1", + "array-slice": "1.1.0", + "for-own": "1.0.0", + "isobject": "3.0.1" }, "dependencies": { - "acorn": { - "version": "https://registry.npmjs.org/acorn/-/acorn-4.0.3.tgz", - "integrity": "sha1-Gj6FC0KOc7prCdHMUn9aqtTQPvE=" + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" }, - "vinyl": { - "version": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", - "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", + "for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", "requires": { - "clone": "https://registry.npmjs.org/clone/-/clone-1.0.2.tgz", - "clone-stats": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", - "replace-ext": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz" + "for-in": "1.0.2" } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" } } }, - "gulp-uglify": { - "version": "https://registry.npmjs.org/gulp-uglify/-/gulp-uglify-1.5.4.tgz", - "integrity": "sha1-UkeI2HZm0J+dDCH7IXf5ADmmWMk=", + "object.map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", + "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", "requires": { - "deap": "https://registry.npmjs.org/deap/-/deap-1.0.0.tgz", - "fancy-log": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.2.0.tgz", - "gulp-util": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.7.tgz", - "isobject": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "uglify-js": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.6.4.tgz", - "uglify-save-license": "https://registry.npmjs.org/uglify-save-license/-/uglify-save-license-0.4.1.tgz", - "vinyl-sourcemaps-apply": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz" + "for-own": "1.0.0", + "make-iterator": "1.0.0" }, "dependencies": { - "uglify-js": { - "version": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.6.4.tgz", - "integrity": "sha1-ZeovswWck5RpLxX+2HwrNsFrmt8=", + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", "requires": { - "async": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", - "uglify-to-browserify": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "yargs": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz" + "for-in": "1.0.2" } } } }, - "gulp-util": { - "version": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.7.tgz", - "integrity": "sha1-eJJcS4+LSQBawBoBHFV+YhiUHLs=", + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", "requires": { - "array-differ": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "array-uniq": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "beeper": "https://registry.npmjs.org/beeper/-/beeper-1.1.1.tgz", - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "dateformat": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", - "fancy-log": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.2.0.tgz", - "gulplog": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", - "has-gulplog": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz", - "lodash._reescape": "https://registry.npmjs.org/lodash._reescape/-/lodash._reescape-3.0.0.tgz", - "lodash._reevaluate": "https://registry.npmjs.org/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz", - "lodash._reinterpolate": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", - "lodash.template": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz", - "minimist": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "multipipe": "https://registry.npmjs.org/multipipe/-/multipipe-0.1.2.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", - "replace-ext": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "vinyl": "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz" + "isobject": "3.0.1" }, "dependencies": { - "minimist": { - "version": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - }, - "object-assign": { - "version": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", - "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=" + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" } } }, - "gulplog": { - "version": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", - "integrity": "sha1-4oxNRdBey77YGDY86PnFkmIp/+U=", - "requires": { - "glogg": "https://registry.npmjs.org/glogg/-/glogg-1.0.0.tgz" - } - }, - "has": { - "version": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", - "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", - "requires": { - "function-bind": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.0.tgz" - } - }, - "has-ansi": { - "version": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "requires": { - "ansi-regex": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" - } - }, - "has-flag": { - "version": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", - "dev": true - }, - "has-gulplog": { - "version": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz", - "integrity": "sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4=", - "requires": { - "sparkles": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.0.tgz" - } - }, - "has-require": { - "version": "https://registry.npmjs.org/has-require/-/has-require-1.1.0.tgz", - "integrity": "sha1-QePou4YjRniT7bw5CaWJPeUsdvg=" - }, - "hash.js": { - "version": "https://registry.npmjs.org/hash.js/-/hash.js-1.0.3.tgz", - "integrity": "sha1-EzL/ABVsCg/92CNgE9B7d6BFFXM=", - "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" - } - }, - "history": { - "version": "https://registry.npmjs.org/history/-/history-2.1.2.tgz", - "integrity": "sha1-SqLeiXoOSGfkU5hDvm7Nsphr/ew=", - "requires": { - "deep-equal": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "invariant": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", - "query-string": "https://registry.npmjs.org/query-string/-/query-string-3.0.3.tgz", - "warning": "https://registry.npmjs.org/warning/-/warning-2.1.0.tgz" - } - }, - "hoist-non-react-statics": { - "version": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-1.2.0.tgz", - "integrity": "sha1-qkSM8JhtVcxAdzsXF0t90GbLfPs=" - }, - "home-or-tmp": { - "version": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", - "requires": { - "os-homedir": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "os-tmpdir": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz" - } - }, - "homedir-polyfill": { - "version": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz", - "integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=", - "requires": { - "parse-passwd": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz" - } - }, - "hosted-git-info": { - "version": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.1.5.tgz", - "integrity": "sha1-C6gdkNouJas0ozLm7HeTbhWYEYs=" + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" }, - "html-comment-regex": { - "version": "https://registry.npmjs.org/html-comment-regex/-/html-comment-regex-1.1.1.tgz", - "integrity": "sha1-ZouTd26q5V696POtRkswekljYl4=" + "path-parse": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", + "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=" }, - "htmlescape": { - "version": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz", - "integrity": "sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E=" + "performance-now": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", + "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=", + "optional": true }, - "htmlparser2": { - "version": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz", - "integrity": "sha1-mWwosZFRaovoZQGn15dX5ccMEGg=", - "dev": true, + "plugin-error": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", + "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=", "requires": { - "domelementtype": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz", - "domhandler": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz", - "domutils": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "entities": "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz" + "ansi-cyan": "0.1.1", + "ansi-red": "0.1.1", + "arr-diff": "1.1.0", + "arr-union": "2.1.0", + "extend-shallow": "1.1.4" }, "dependencies": { - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true + "arr-diff": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", + "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=", + "requires": { + "arr-flatten": "1.1.0", + "array-slice": "0.2.3" + } }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", - "dev": true, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "arr-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", + "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=" + }, + "array-slice": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", + "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=" + }, + "extend-shallow": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", + "integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + "kind-of": "1.1.0" } + }, + "kind-of": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", + "integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=" } } }, - "https-browserify": { - "version": "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.1.tgz", - "integrity": "sha1-P5E2XKvmC3ftDruiS0VOPgnZWoI=" + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" }, - "https-proxy-agent": { - "version": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-1.0.0.tgz", - "integrity": "sha1-NffabEjOTdv6JkiRrFk+5f+GceY=", - "dev": true, + "prop-types": { + "version": "15.6.0", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.0.tgz", + "integrity": "sha1-zq8IMCL8RrSjX2nhPvda7Q1jmFY=", "requires": { - "agent-base": "https://registry.npmjs.org/agent-base/-/agent-base-2.0.1.tgz", - "debug": "https://registry.npmjs.org/debug/-/debug-2.4.4.tgz", - "extend": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz" + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1" + }, + "dependencies": { + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, + "core-js": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", + "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" + }, + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "requires": { + "iconv-lite": "0.4.19" + } + }, + "fbjs": { + "version": "0.8.16", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz", + "integrity": "sha1-XmdDL1UNxBtXK/VYR7ispk5TN9s=", + "requires": { + "core-js": "1.2.7", + "isomorphic-fetch": "2.2.1", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "promise": "7.3.1", + "setimmediate": "1.0.5", + "ua-parser-js": "0.7.17" + } + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "isomorphic-fetch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "requires": { + "node-fetch": "1.7.3", + "whatwg-fetch": "2.0.3" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } + }, + "node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "requires": { + "encoding": "0.1.12", + "is-stream": "1.1.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "2.0.6" + } + }, + "ua-parser-js": { + "version": "0.7.17", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz", + "integrity": "sha512-uRdSdu1oA1rncCQL7sCj8vSyZkgtL7faaw9Tc9rZ3mGgraQ7+Pdx7w5mnOSF3gw9ZNG6oc+KXfkon3bKuROm0g==" + }, + "whatwg-fetch": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz", + "integrity": "sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ=" + } } }, - "iconv-lite": { - "version": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.15.tgz", - "integrity": "sha1-/iZaIYrGpXz+hUkn6dBMGYJe3es=" - }, - "ieee754": { - "version": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz", - "integrity": "sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q=" - }, - "image-size": { - "version": "https://registry.npmjs.org/image-size/-/image-size-0.5.0.tgz", - "integrity": "sha1-vnrtHDe1rD2bodZqJLTEf/g5dlE=", + "qs": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz", + "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM=", "optional": true }, - "indent-string": { - "version": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "requires": { - "repeating": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz" - } - }, - "indexof": { - "version": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=" - }, - "indx": { - "version": "https://registry.npmjs.org/indx/-/indx-0.2.3.tgz", - "integrity": "sha1-Fdz1bunPZcAjTFE8J/vVgOcPvFA=" - }, - "inflight": { - "version": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" - } - }, - "inherits": { - "version": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "ini": { - "version": "https://registry.npmjs.org/ini/-/ini-1.3.4.tgz", - "integrity": "sha1-BTfLedr1m1mhpRff9wbIbsA5Fi4=" - }, - "inline-source-map": { - "version": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz", - "integrity": "sha1-+Tk0ccGKedFyT4Y/o4tYY3Ct4qU=", - "requires": { - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz" - } - }, - "insert-module-globals": { - "version": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.0.1.tgz", - "integrity": "sha1-wDv04BywhtW15azorQr+eInWOMM=", - "requires": { - "combine-source-map": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.7.2.tgz", - "concat-stream": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", - "is-buffer": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.4.tgz", - "JSONStream": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.0.tgz", - "lexical-scope": "https://registry.npmjs.org/lexical-scope/-/lexical-scope-1.2.0.tgz", - "process": "https://registry.npmjs.org/process/-/process-0.11.9.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" - } - }, - "interpret": { - "version": "https://registry.npmjs.org/interpret/-/interpret-1.0.1.tgz", - "integrity": "sha1-1Xn7f2k7hYAElHrzn6DbSfeVYCw=" - }, - "invariant": { - "version": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", - "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", - "requires": { - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.0.tgz" - } - }, - "ip-regex": { - "version": "https://registry.npmjs.org/ip-regex/-/ip-regex-1.0.3.tgz", - "integrity": "sha1-3FiQdvZZ9BnCIgOaMzFvHHOH7/0=" - }, - "is-absolute": { - "version": "https://registry.npmjs.org/is-absolute/-/is-absolute-0.2.6.tgz", - "integrity": "sha1-IN5p89uULvLYe5wto28XIjWxtes=", - "requires": { - "is-relative": "https://registry.npmjs.org/is-relative/-/is-relative-0.2.1.tgz", - "is-windows": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz" - } - }, - "is-arrayish": { - "version": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" - }, - "is-binary-path": { - "version": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "requires": { - "binary-extensions": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.8.0.tgz" - } - }, - "is-buffer": { - "version": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.4.tgz", - "integrity": "sha1-z8hszV3FpS+oBIkRHGkgxFfi2Ys=" - }, - "is-builtin-module": { - "version": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", - "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", - "requires": { - "builtin-modules": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz" - } - }, - "is-bzip2": { - "version": "https://registry.npmjs.org/is-bzip2/-/is-bzip2-1.0.0.tgz", - "integrity": "sha1-XuWOqlounIDiFAe+3yOuWsCRs/w=" - }, - "is-defined": { - "version": "https://registry.npmjs.org/is-defined/-/is-defined-1.0.0.tgz", - "integrity": "sha1-HwfKZ9Vx9ZTEsUQVpF9774j5K/U=" - }, - "is-dotfile": { - "version": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.2.tgz", - "integrity": "sha1-LBMjg/ORmfjtwmjKAbmwB9IFzE0=" - }, - "is-equal-shallow": { - "version": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", - "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", - "requires": { - "is-primitive": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz" - } - }, - "is-extendable": { - "version": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" - }, - "is-extglob": { - "version": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" - }, - "is-finite": { - "version": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "randomfill": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.3.tgz", + "integrity": "sha512-YL6GrhrWoic0Eq8rXVbMptH7dAxCs0J+mh5Y0euNekPPYaxEmdVGim6GdoxoRzKW2yJoU8tueifS7mYxvcFDEQ==", "requires": { - "number-is-nan": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz" - } - }, - "is-gif": { - "version": "https://registry.npmjs.org/is-gif/-/is-gif-1.0.0.tgz", - "integrity": "sha1-ptKumIkwB7/6l6HYwB1jIFgyCX4=" - }, - "is-glob": { - "version": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "requires": { - "is-extglob": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz" - } - }, - "is-gzip": { - "version": "https://registry.npmjs.org/is-gzip/-/is-gzip-1.0.0.tgz", - "integrity": "sha1-bKiwe5nHeZgCWQDlVc7Y7YCHmoM=" - }, - "is-jpg": { - "version": "https://registry.npmjs.org/is-jpg/-/is-jpg-1.0.0.tgz", - "integrity": "sha1-KVnBfnNDDbOCZNp1uQ3VTy2G2hw=" - }, - "is-natural-number": { - "version": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-2.1.1.tgz", - "integrity": "sha1-fUxXKDd+84bD4ZSpkRv1fG3DNec=" - }, - "is-number": { - "version": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", - "requires": { - "kind-of": "https://registry.npmjs.org/kind-of/-/kind-of-3.1.0.tgz" - } - }, - "is-obj": { - "version": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=" - }, - "is-path-cwd": { - "version": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", - "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=" - }, - "is-path-in-cwd": { - "version": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", - "integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=", - "requires": { - "is-path-inside": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz" - } - }, - "is-path-inside": { - "version": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz", - "integrity": "sha1-/AbloWg/vaE95mev9xe7wQpI838=", - "requires": { - "path-is-inside": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz" - } - }, - "is-png": { - "version": "https://registry.npmjs.org/is-png/-/is-png-1.0.0.tgz", - "integrity": "sha1-PYA3P+m4nWX9NB9lnT/AoRNecYo=" - }, - "is-posix-bracket": { - "version": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", - "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=" - }, - "is-primitive": { - "version": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=" - }, - "is-redirect": { - "version": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", - "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=" - }, - "is-relative": { - "version": "https://registry.npmjs.org/is-relative/-/is-relative-0.2.1.tgz", - "integrity": "sha1-0n9MfVFtF1+2ENuEu+7yPDvJeqU=", - "requires": { - "is-unc-path": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-0.1.2.tgz" - } - }, - "is-retry-allowed": { - "version": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", - "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=" - }, - "is-stream": { - "version": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" - }, - "is-svg": { - "version": "https://registry.npmjs.org/is-svg/-/is-svg-2.1.0.tgz", - "integrity": "sha1-z2EJDaDZ77yrhyLeum8DIgjbsOk=", - "requires": { - "html-comment-regex": "https://registry.npmjs.org/html-comment-regex/-/html-comment-regex-1.1.1.tgz" + "randombytes": "2.0.6", + "safe-buffer": "5.1.1" + }, + "dependencies": { + "randombytes": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", + "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", + "requires": { + "safe-buffer": "5.1.1" + } + } } }, - "is-tar": { - "version": "https://registry.npmjs.org/is-tar/-/is-tar-1.0.0.tgz", - "integrity": "sha1-L2suF5LB9bs2UZrKqdZcDSb+hT0=" - }, - "is-unc-path": { - "version": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-0.1.2.tgz", - "integrity": "sha1-arBTpyVzwQJQ/0FqOBTDUXivObk=", + "react": { + "version": "15.6.2", + "resolved": "https://registry.npmjs.org/react/-/react-15.6.2.tgz", + "integrity": "sha1-26BDSrQ5z+gvEI8PURZjkIF5qnI=", "requires": { - "unc-path-regex": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz" + "create-react-class": "15.6.2", + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + }, + "dependencies": { + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, + "core-js": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", + "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" + }, + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "requires": { + "iconv-lite": "0.4.19" + } + }, + "fbjs": { + "version": "0.8.16", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz", + "integrity": "sha1-XmdDL1UNxBtXK/VYR7ispk5TN9s=", + "requires": { + "core-js": "1.2.7", + "isomorphic-fetch": "2.2.1", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "promise": "7.3.1", + "setimmediate": "1.0.5", + "ua-parser-js": "0.7.17" + } + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "isomorphic-fetch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "requires": { + "node-fetch": "1.7.3", + "whatwg-fetch": "2.0.3" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } + }, + "node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "requires": { + "encoding": "0.1.12", + "is-stream": "1.1.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "2.0.6" + } + }, + "ua-parser-js": { + "version": "0.7.17", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz", + "integrity": "sha512-uRdSdu1oA1rncCQL7sCj8vSyZkgtL7faaw9Tc9rZ3mGgraQ7+Pdx7w5mnOSF3gw9ZNG6oc+KXfkon3bKuROm0g==" + }, + "whatwg-fetch": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz", + "integrity": "sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ=" + } } }, - "is-url": { - "version": "https://registry.npmjs.org/is-url/-/is-url-1.2.2.tgz", - "integrity": "sha1-SYkFpZO/R8wtnn9zg3K792lsfyY=" - }, - "is-utf8": { - "version": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" - }, - "is-valid-glob": { - "version": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-0.3.0.tgz", - "integrity": "sha1-1LVcafUYhvm2XHDWwmItN+KfSP4=" - }, - "is-windows": { - "version": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz", - "integrity": "sha1-3hqm1j6indJIc3tp8f+LgALSEIw=" - }, - "is-zip": { - "version": "https://registry.npmjs.org/is-zip/-/is-zip-1.0.0.tgz", - "integrity": "sha1-R7Co/004p2QxzP2ZqOFaTIa6IyU=" - }, - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "isexe": { - "version": "https://registry.npmjs.org/isexe/-/isexe-1.1.2.tgz", - "integrity": "sha1-NvPiLmB1CSD15yQaR2qMakInWtA=" - }, - "isobject": { - "version": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "requires": { - "isarray": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" - } + "react-addons-test-utils": { + "version": "15.6.2", + "resolved": "https://registry.npmjs.org/react-addons-test-utils/-/react-addons-test-utils-15.6.2.tgz", + "integrity": "sha1-wStu/cIkfBDae4dw0YUICnsEcVY=" }, - "isomorphic-fetch": { - "version": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", - "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "react-dom": { + "version": "15.6.2", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-15.6.2.tgz", + "integrity": "sha1-Qc+t9pO3V/rycIRDodH9WgK+9zA=", "requires": { - "node-fetch": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.6.3.tgz", - "whatwg-fetch": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.1.tgz" + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + }, + "dependencies": { + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, + "core-js": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", + "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" + }, + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "requires": { + "iconv-lite": "0.4.19" + } + }, + "fbjs": { + "version": "0.8.16", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz", + "integrity": "sha1-XmdDL1UNxBtXK/VYR7ispk5TN9s=", + "requires": { + "core-js": "1.2.7", + "isomorphic-fetch": "2.2.1", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "promise": "7.3.1", + "setimmediate": "1.0.5", + "ua-parser-js": "0.7.17" + } + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "isomorphic-fetch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "requires": { + "node-fetch": "1.7.3", + "whatwg-fetch": "2.0.3" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } + }, + "node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "requires": { + "encoding": "0.1.12", + "is-stream": "1.1.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "2.0.6" + } + }, + "ua-parser-js": { + "version": "0.7.17", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz", + "integrity": "sha512-uRdSdu1oA1rncCQL7sCj8vSyZkgtL7faaw9Tc9rZ3mGgraQ7+Pdx7w5mnOSF3gw9ZNG6oc+KXfkon3bKuROm0g==" + }, + "whatwg-fetch": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz", + "integrity": "sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ=" + } } }, - "jade": { - "version": "https://registry.npmjs.org/jade/-/jade-0.26.3.tgz", - "integrity": "sha1-jxDXl32NefL2/4YqgbBRPMslaGw=", - "dev": true, + "react-redux": { + "version": "4.4.8", + "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-4.4.8.tgz", + "integrity": "sha1-57wd0QDotk6WrIIS2xEyObni4I8=", "requires": { - "commander": "https://registry.npmjs.org/commander/-/commander-0.6.1.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz" + "create-react-class": "15.6.2", + "hoist-non-react-statics": "1.2.0", + "invariant": "2.2.2", + "lodash": "4.17.4", + "loose-envify": "1.3.1", + "prop-types": "15.6.0" }, "dependencies": { - "commander": { - "version": "https://registry.npmjs.org/commander/-/commander-0.6.1.tgz", - "integrity": "sha1-+mihT2qUXVTbvlDYzbMyDp47GgY=", - "dev": true + "hoist-non-react-statics": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-1.2.0.tgz", + "integrity": "sha1-qkSM8JhtVcxAdzsXF0t90GbLfPs=" }, - "mkdirp": { - "version": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz", - "integrity": "sha1-G79asbqCevI1dRQ0kEJkVfSB/h4=", - "dev": true + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + "requires": { + "loose-envify": "1.3.1" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } } } }, - "jpeg-recompress-bin": { - "version": "https://registry.npmjs.org/jpeg-recompress-bin/-/jpeg-recompress-bin-3.0.1.tgz", - "integrity": "sha1-RqPnMAzKt5WxuNsnroAsJ6KDM6Q=", - "requires": { - "bin-wrapper": "https://registry.npmjs.org/bin-wrapper/-/bin-wrapper-3.0.2.tgz", - "logalot": "https://registry.npmjs.org/logalot/-/logalot-2.1.0.tgz" - } - }, - "jpegoptim-bin": { - "version": "https://registry.npmjs.org/jpegoptim-bin/-/jpegoptim-bin-3.0.0.tgz", - "integrity": "sha1-n3oF2DswK9GZE97PM5qdrhvaDCs=", + "react-router": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-2.8.1.tgz", + "integrity": "sha1-c+lJH2zrMW0Pd5gpCBhj43juTtc=", "requires": { - "bin-build": "https://registry.npmjs.org/bin-build/-/bin-build-2.2.0.tgz", - "bin-wrapper": "https://registry.npmjs.org/bin-wrapper/-/bin-wrapper-3.0.2.tgz", - "logalot": "https://registry.npmjs.org/logalot/-/logalot-2.1.0.tgz" + "history": "2.1.2", + "hoist-non-react-statics": "1.2.0", + "invariant": "2.2.2", + "loose-envify": "1.3.1", + "warning": "3.0.0" + }, + "dependencies": { + "hoist-non-react-statics": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-1.2.0.tgz", + "integrity": "sha1-qkSM8JhtVcxAdzsXF0t90GbLfPs=" + }, + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + "requires": { + "loose-envify": "1.3.1" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } + }, + "warning": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", + "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=", + "requires": { + "loose-envify": "1.3.1" + } + } } }, - "jquery": { - "version": "https://registry.npmjs.org/jquery/-/jquery-2.2.4.tgz", - "integrity": "sha1-LInWiJterFIqfuoywUUhVZxsvwI=" - }, - "jquery-mockjax": { - "version": "https://registry.npmjs.org/jquery-mockjax/-/jquery-mockjax-2.2.1.tgz", - "integrity": "sha1-x5zcWduyFTlxpm5TPnEwFwNBVKw=", + "redux": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/redux/-/redux-3.7.2.tgz", + "integrity": "sha512-pNqnf9q1hI5HHZRBkj3bAngGZW/JMCmexDlOxw4XagXY2o1327nHH54LoTjiPJ0gizoqPDRqWyX/00g0hD6w+A==", "requires": { - "jquery": "https://registry.npmjs.org/jquery/-/jquery-2.2.4.tgz" + "lodash": "4.17.4", + "lodash-es": "4.17.4", + "loose-envify": "1.3.1", + "symbol-observable": "1.2.0" + }, + "dependencies": { + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" + }, + "lodash-es": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.4.tgz", + "integrity": "sha1-3MHXVS4VCgZABzupyzHXDwMpUOc=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } + }, + "symbol-observable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", + "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==" + } } }, - "jquery.caret": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/jquery.caret/-/jquery.caret-0.3.1.tgz", - "integrity": "sha1-nAkzGPrzJ+/zIugmyp8yQTaLx7g=" - }, - "js-tokens": { - "version": "https://registry.npmjs.org/js-tokens/-/js-tokens-2.0.0.tgz", - "integrity": "sha1-eZA/VWPud4zBFi5tzxoAJ8l/nLU=" + "redux-batched-actions": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/redux-batched-actions/-/redux-batched-actions-0.1.6.tgz", + "integrity": "sha512-Idh1WFMnYel2hNb7v6RL5tgq8DpMTb3RZRWwzhOtDjWzvq4liCj1JIdLdvsmmVfsIf1oCH3eRFhHpal7IQJUhg==" }, - "js-yaml": { - "version": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.6.1.tgz", - "integrity": "sha1-bl/mfYsgXOTSL60Ft3geja3MSzA=", + "regex-not": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.0.tgz", + "integrity": "sha1-Qvg+OXcWIt+CawKvF2Ul1qXxV/k=", "requires": { - "argparse": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz", - "esprima": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz" + "extend-shallow": "2.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + } } }, - "jsesc": { - "version": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=" + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" }, - "jshint": { - "version": "https://registry.npmjs.org/jshint/-/jshint-2.9.4.tgz", - "integrity": "sha1-XjupeEjVKQJz21FK7kf+JM9ZKTQ=", - "dev": true, + "request": { + "version": "2.81.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.81.0.tgz", + "integrity": "sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=", + "optional": true, "requires": { - "cli": "https://registry.npmjs.org/cli/-/cli-1.0.1.tgz", - "console-browserify": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", - "exit": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "htmlparser2": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-3.7.0.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", - "shelljs": "https://registry.npmjs.org/shelljs/-/shelljs-0.3.0.tgz", - "strip-json-comments": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz" + "aws-sign2": "0.6.0", + "aws4": "1.6.0", + "caseless": "0.12.0", + "combined-stream": "1.0.5", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.1.4", + "har-validator": "4.2.1", + "hawk": "3.1.3", + "http-signature": "1.1.1", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.17", + "oauth-sign": "0.8.2", + "performance-now": "0.2.0", + "qs": "6.4.0", + "safe-buffer": "5.1.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.3", + "tunnel-agent": "0.6.0", + "uuid": "3.2.1" }, "dependencies": { - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-3.7.0.tgz", - "integrity": "sha1-Nni9irmVBXwHreg27S7wh9qBHUU=", - "dev": true + "extend": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", + "optional": true }, - "minimatch": { - "version": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha1-Kk5AkLlrLbBqnX3wEFWmKnfJt3Q=", - "dev": true, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "optional": true, "requires": { - "brace-expansion": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.6.tgz" + "safe-buffer": "5.1.1" } + }, + "uuid": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz", + "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==", + "optional": true } } }, - "json-stable-stringify": { - "version": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz", - "integrity": "sha1-YRwj6BTbN1Un34URk9tZ3Sryf0U=", - "requires": { - "jsonify": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz" - } - }, - "json5": { - "version": "https://registry.npmjs.org/json5/-/json5-0.4.0.tgz", - "integrity": "sha1-BUNS5MTIDIbAkjh31EneF2pzLI0=" - }, - "jsonify": { - "version": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" - }, - "jsonparse": { - "version": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.2.0.tgz", - "integrity": "sha1-XAxWhRBxYOcv50ib3eoLRMK8Z70=" - }, - "JSONStream": { - "version": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.0.tgz", - "integrity": "sha1-aAq5rGVyqKGiB+CzhyHbHHeyFeU=", - "requires": { - "jsonparse": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.2.0.tgz", - "through": "https://registry.npmjs.org/through/-/through-2.3.8.tgz" - } + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" }, - "kind-of": { - "version": "https://registry.npmjs.org/kind-of/-/kind-of-3.1.0.tgz", - "integrity": "sha1-R11pil5J/15T0U4+cyQp3Iv0z0c=", + "set-getter": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/set-getter/-/set-getter-0.1.0.tgz", + "integrity": "sha1-12nBgsnVpR9AkUXy+6guXoboA3Y=", "requires": { - "is-buffer": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.4.tgz" + "to-object-path": "0.3.0" } }, - "labeled-stream-splicer": { - "version": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.0.tgz", - "integrity": "sha1-pS4dE4AkwAuGscDJH2d5GLiuClk=", + "set-value": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", + "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "stream-splicer": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-2.0.0.tgz" + "extend-shallow": "2.0.1", + "is-extendable": "0.1.1", + "is-plain-object": "2.0.4", + "split-string": "3.1.0" }, "dependencies": { - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" } } }, - "lazy-cache": { - "version": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" - }, - "lazy-debug-legacy": { - "version": "https://registry.npmjs.org/lazy-debug-legacy/-/lazy-debug-legacy-0.0.1.tgz", - "integrity": "sha1-U3cWwHduTPeePtG2IfdljCkRsbE=" - }, - "lazy-req": { - "version": "https://registry.npmjs.org/lazy-req/-/lazy-req-1.1.0.tgz", - "integrity": "sha1-va6+rTD42CQDnODOFJ1Nqge6H6w=" - }, - "lazystream": { - "version": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", - "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", - "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz" - } + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" }, - "less": { - "version": "https://registry.npmjs.org/less/-/less-2.7.1.tgz", - "integrity": "sha1-bL/qIrO4MDBOml+zcdVPpIDJ188=", + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", "requires": { - "errno": "https://registry.npmjs.org/errno/-/errno-0.1.4.tgz", - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "image-size": "https://registry.npmjs.org/image-size/-/image-size-0.5.0.tgz", - "mime": "https://registry.npmjs.org/mime/-/mime-1.3.4.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "promise": "https://registry.npmjs.org/promise/-/promise-7.1.1.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz" + "shebang-regex": "1.0.0" + }, + "dependencies": { + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" + } } }, - "levn": { - "version": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "snapdragon": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.1.tgz", + "integrity": "sha1-4StUh/re0+PeoKyR6UAL91tAE3A=", "requires": { - "prelude-ls": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "type-check": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz" + "base": "0.11.2", + "debug": "2.6.9", + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "map-cache": "0.2.2", + "source-map": "0.5.7", + "source-map-resolve": "0.5.1", + "use": "2.0.2" + }, + "dependencies": { + "atob": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.0.3.tgz", + "integrity": "sha1-GcenYEc3dEaPILLS0DNyrX1Mv10=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "source-map-resolve": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.1.tgz", + "integrity": "sha512-0KW2wvzfxm8NCTb30z0LMNyPqWCdDGE2viwzUaucqJdkTRXtZiSY3I+2A6nVAjmdOy0I4gU8DwnVVGsk9jvP2A==", + "requires": { + "atob": "2.0.3", + "decode-uri-component": "0.2.0", + "resolve-url": "0.2.1", + "source-map-url": "0.4.0", + "urix": "0.1.0" + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" + } } }, - "lexical-scope": { - "version": "https://registry.npmjs.org/lexical-scope/-/lexical-scope-1.2.0.tgz", - "integrity": "sha1-/Ope3HBKSzqHls3KQZw6CvryLfQ=", + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", "requires": { - "astw": "https://registry.npmjs.org/astw/-/astw-2.0.0.tgz" + "define-property": "1.0.0", + "isobject": "3.0.1", + "snapdragon-util": "3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + } } }, - "liftoff": { - "version": "https://registry.npmjs.org/liftoff/-/liftoff-2.3.0.tgz", - "integrity": "sha1-qY8v9nGD2Lp8+soQVIvX/wVQs4U=", + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", "requires": { - "extend": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz", - "findup-sync": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.4.3.tgz", - "fined": "https://registry.npmjs.org/fined/-/fined-1.0.2.tgz", - "flagged-respawn": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-0.3.2.tgz", - "lodash.isplainobject": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "lodash.isstring": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", - "lodash.mapvalues": "https://registry.npmjs.org/lodash.mapvalues/-/lodash.mapvalues-4.6.0.tgz", - "rechoir": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "resolve": "https://registry.npmjs.org/resolve/-/resolve-1.2.0.tgz" + "kind-of": "3.2.2" + }, + "dependencies": { + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } } }, - "listen": { - "version": "https://registry.npmjs.org/listen/-/listen-1.0.1.tgz", - "integrity": "sha1-/u3j1ah0xTwihNPDWXpfxa/HTkM=", - "dev": true - }, - "load-json-file": { - "version": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "sntp": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", + "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", + "optional": true, "requires": { - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "parse-json": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "pify": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "strip-bom": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz" + "hoek": "2.16.3" } }, - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=" - }, - "lodash-es": { - "version": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.2.tgz", - "integrity": "sha1-WQEbWFFm5hPrndX8JWss0aMPNxI=" - }, - "lodash._basecopy": { - "version": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", - "integrity": "sha1-jaDmqHbPNEwK2KVIghEd08XHyjY=" - }, - "lodash._basetostring": { - "version": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz", - "integrity": "sha1-0YYdh3+CSlL2aYMtyvPuFVZqB9U=" - }, - "lodash._basevalues": { - "version": "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz", - "integrity": "sha1-W3dXYoAr3j0yl1A+JjAIIP32Ybc=" - }, - "lodash._getnative": { - "version": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", - "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=" - }, - "lodash._isiterateecall": { - "version": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz", - "integrity": "sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw=" - }, - "lodash._reescape": { - "version": "https://registry.npmjs.org/lodash._reescape/-/lodash._reescape-3.0.0.tgz", - "integrity": "sha1-Kx1vXf4HyKNVdT5fJ/rH8c3hYWo=" - }, - "lodash._reevaluate": { - "version": "https://registry.npmjs.org/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz", - "integrity": "sha1-WLx0xAZklTrgsSTYBpltrKQx4u0=" - }, - "lodash._reinterpolate": { - "version": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", - "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=" - }, - "lodash._root": { - "version": "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz", - "integrity": "sha1-+6HEUkwZ7ppfgTa0YJ8BfPTe1pI=" - }, - "lodash.assign": { - "version": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", - "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=" - }, - "lodash.assignwith": { - "version": "https://registry.npmjs.org/lodash.assignwith/-/lodash.assignwith-4.2.0.tgz", - "integrity": "sha1-EnqX8CrcQXUalU0ksN4X4QDgOOs=" - }, - "lodash.clone": { - "version": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", - "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=" - }, - "lodash.clonedeep": { - "version": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" - }, - "lodash.escape": { - "version": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz", - "integrity": "sha1-mV7g3BjBtIzJLv+ucaEKq1tIdpg=", + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", "requires": { - "lodash._root": "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz" + "extend-shallow": "3.0.2" + }, + "dependencies": { + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "requires": { + "assign-symbols": "1.0.0", + "is-extendable": "1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "2.0.4" + } + } } }, - "lodash.flatten": { - "version": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" - }, - "lodash.isarguments": { - "version": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", - "integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=" - }, - "lodash.isarray": { - "version": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", - "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=" - }, - "lodash.isempty": { - "version": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz", - "integrity": "sha1-b4bL7di+TsmHvpqvM8loTbGzHn4=" - }, - "lodash.isequal": { - "version": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.4.0.tgz", - "integrity": "sha1-YpV2jpjhTcFc6NNi72NA24KFIDE=" - }, - "lodash.isplainobject": { - "version": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=" - }, - "lodash.isstring": { - "version": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", - "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=" - }, - "lodash.keys": { - "version": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", - "integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=", + "sshpk": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz", + "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=", + "optional": true, "requires": { - "lodash._getnative": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", - "lodash.isarguments": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", - "lodash.isarray": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz" + "asn1": "0.2.3", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.1", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.1", + "getpass": "0.1.7", + "jsbn": "0.1.1", + "tweetnacl": "0.14.5" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "optional": true + } } }, - "lodash.mapvalues": { - "version": "https://registry.npmjs.org/lodash.mapvalues/-/lodash.mapvalues-4.6.0.tgz", - "integrity": "sha1-G6+lAF3p3W9PJmaMMMo3IwzJaJw=" - }, - "lodash.memoize": { - "version": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz", - "integrity": "sha1-LcvSwofLwKVcxCMovQxzYVDVPj8=" - }, - "lodash.merge": { - "version": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.0.tgz", - "integrity": "sha1-aYhLoUSsM/5plzemCG3v+t0PicU=" - }, - "lodash.partialright": { - "version": "https://registry.npmjs.org/lodash.partialright/-/lodash.partialright-4.2.1.tgz", - "integrity": "sha1-ATDYDoM2MmTUAHTzKbij56ihzEs=" - }, - "lodash.pick": { - "version": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" - }, - "lodash.restparam": { - "version": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz", - "integrity": "sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU=" - }, - "lodash.template": { - "version": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz", - "integrity": "sha1-+M3sxhaaJVvpCYrosMU9N4kx0U8=", + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", "requires": { - "lodash._basecopy": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", - "lodash._basetostring": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz", - "lodash._basevalues": "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz", - "lodash._isiterateecall": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz", - "lodash._reinterpolate": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", - "lodash.escape": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz", - "lodash.keys": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", - "lodash.restparam": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz", - "lodash.templatesettings": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz" + "define-property": "0.2.5", + "object-copy": "0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } } }, - "lodash.templatesettings": { - "version": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz", - "integrity": "sha1-+zB4RHU7Zrnxr6VOJix0UwfbqOU=", - "requires": { - "lodash._reinterpolate": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", - "lodash.escape": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz" - } + "stringstream": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", + "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=", + "optional": true }, - "lodash.uniq": { - "version": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=" + "temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=" }, - "logalot": { - "version": "https://registry.npmjs.org/logalot/-/logalot-2.1.0.tgz", - "integrity": "sha1-X46MkNME7fElMJUaVVSruMXj9VI=", + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", "requires": { - "figures": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "squeak": "https://registry.npmjs.org/squeak/-/squeak-1.3.0.tgz" + "kind-of": "3.2.2" + }, + "dependencies": { + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } } }, - "longest": { - "version": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=" - }, - "loose-envify": { - "version": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.0.tgz", - "integrity": "sha1-ayYkjEL21PpLDYVC947fzeNWQqg=", + "to-regex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.1.tgz", + "integrity": "sha1-FTWL7kosg712N3uh3ASdDxiDeq4=", "requires": { - "js-tokens": "https://registry.npmjs.org/js-tokens/-/js-tokens-2.0.0.tgz" + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "regex-not": "1.0.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } } }, - "loud-rejection": { - "version": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", "requires": { - "currently-unhandled": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "signal-exit": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz" + "is-number": "3.0.0", + "repeat-string": "1.6.1" + }, + "dependencies": { + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "3.2.2" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + } } }, - "lowercase-keys": { - "version": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", - "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=" - }, - "lpad": { - "version": "https://registry.npmjs.org/lpad/-/lpad-2.0.1.tgz", - "integrity": "sha1-KDFrTnsgFfUR9lkUWa/A5ZRACK0=" - }, - "lpad-align": { - "version": "https://registry.npmjs.org/lpad-align/-/lpad-align-1.1.0.tgz", - "integrity": "sha1-J/p4a8tpX8Q06hUAcj640L3IK/Q=", + "tough-cookie": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz", + "integrity": "sha1-C2GKVWW23qkL80JdBNVe3EdadWE=", + "optional": true, "requires": { - "get-stdin": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "longest": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "lpad": "https://registry.npmjs.org/lpad/-/lpad-2.0.1.tgz", - "meow": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz" + "punycode": "1.4.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "optional": true + } } }, - "lru-cache": { - "version": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz", - "integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI=" + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=" }, - "map-cache": { - "version": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" - }, - "map-obj": { - "version": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "optional": true }, - "meow": { - "version": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "union-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", + "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", "requires": { - "camelcase-keys": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "decamelize": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "loud-rejection": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "map-obj": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "minimist": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "normalize-package-data": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.3.5.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "read-pkg-up": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "redent": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "trim-newlines": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz" + "arr-union": "3.1.0", + "get-value": "2.0.6", + "is-extendable": "0.1.1", + "set-value": "0.4.3" }, "dependencies": { - "minimist": { - "version": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "0.1.1" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "set-value": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", + "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", + "requires": { + "extend-shallow": "2.0.1", + "is-extendable": "0.1.1", + "is-plain-object": "2.0.4", + "to-object-path": "0.3.0" + } } } }, - "merge-stream": { - "version": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", - "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", - "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz" - } - }, - "micromatch": { - "version": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "requires": { - "arr-diff": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "array-unique": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "braces": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "expand-brackets": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "extglob": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "filename-regex": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.0.tgz", - "is-extglob": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "is-glob": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "kind-of": "https://registry.npmjs.org/kind-of/-/kind-of-3.1.0.tgz", - "normalize-path": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.0.1.tgz", - "object.omit": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", - "parse-glob": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", - "regex-cache": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.3.tgz" - } - }, - "miller-rabin": { - "version": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.0.tgz", - "integrity": "sha1-SmL7HUKTPAVYOYL0xxb2+55sbT0=", + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "brorand": "https://registry.npmjs.org/brorand/-/brorand-1.0.6.tgz" + "has-value": "0.3.1", + "isobject": "3.0.1" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "requires": { + "get-value": "2.0.6", + "has-values": "0.1.4", + "isobject": "2.1.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + } } }, - "mime": { - "version": "https://registry.npmjs.org/mime/-/mime-1.3.4.tgz", - "integrity": "sha1-EV+eO2s9rylZmDyzjxSaLUDrXVM=", - "optional": true - }, - "min-wd": { - "version": "https://registry.npmjs.org/min-wd/-/min-wd-2.9.3.tgz", - "integrity": "sha1-Nda8fTL2bmAZK6vf1sFnTpkvE70=", - "dev": true, + "use": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/use/-/use-2.0.2.tgz", + "integrity": "sha1-riig1y+TvyJCKhii43mZMRLeyOg=", "requires": { - "brout": "https://registry.npmjs.org/brout/-/brout-1.2.0.tgz", - "listen": "https://registry.npmjs.org/listen/-/listen-1.0.1.tgz", - "resolve": "https://registry.npmjs.org/resolve/-/resolve-1.2.0.tgz", - "saucelabs": "https://registry.npmjs.org/saucelabs/-/saucelabs-1.3.0.tgz", - "source-mapper": "https://registry.npmjs.org/source-mapper/-/source-mapper-2.0.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz" + "define-property": "0.2.5", + "isobject": "3.0.1", + "lazy-cache": "2.0.2" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "0.1.6" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + }, + "lazy-cache": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-2.0.2.tgz", + "integrity": "sha1-uRkKT5EzVGlIQIWfio9whNiCImQ=", + "requires": { + "set-getter": "0.1.0" + } + } } }, - "minimalistic-assert": { - "version": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", - "integrity": "sha1-cCvi3aazf0g2vLP121ZkG2Sh09M=" - }, - "minimatch": { - "version": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", - "integrity": "sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=", + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "optional": true, "requires": { - "brace-expansion": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.6.tgz" + "assert-plus": "1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "1.3.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "optional": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "optional": true + } } }, - "minimist": { - "version": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" - }, - "mkdirp": { - "version": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "vinyl-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/vinyl-buffer/-/vinyl-buffer-1.0.1.tgz", + "integrity": "sha1-lsGjR5uMU5JULGEgKQE7Wyf4i78=", "requires": { - "minimist": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" + "bl": "1.2.1", + "through2": "2.0.3" + }, + "dependencies": { + "bl": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", + "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=", + "requires": { + "readable-stream": "2.3.3" + } + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + } } }, - "mocaccino": { - "version": "https://registry.npmjs.org/mocaccino/-/mocaccino-1.8.2.tgz", - "integrity": "sha1-wE9gMCLFjfUSwBjgwrwfQDEMDhs=", - "dev": true, + "vinyl-source-stream": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vinyl-source-stream/-/vinyl-source-stream-1.1.2.tgz", + "integrity": "sha1-YrU6E1YQqJbpjKlr7jqH8Aio54A=", "requires": { - "brout": "https://registry.npmjs.org/brout/-/brout-1.2.0.tgz", - "listen": "https://registry.npmjs.org/listen/-/listen-1.0.1.tgz", - "mocha": "https://registry.npmjs.org/mocha/-/mocha-2.5.3.tgz", - "resolve": "https://registry.npmjs.org/resolve/-/resolve-1.2.0.tgz", - "supports-color": "https://registry.npmjs.org/supports-color/-/supports-color-3.1.2.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz" + "through2": "2.0.3", + "vinyl": "0.4.6" }, "dependencies": { - "supports-color": { - "version": "https://registry.npmjs.org/supports-color/-/supports-color-3.1.2.tgz", - "integrity": "sha1-cqJiiU2dQIuVbKBf83su2KbiotU=", - "dev": true, + "clone": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", + "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=" + }, + "clone-stats": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", + "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "through2": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "requires": { + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "vinyl": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", + "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", "requires": { - "has-flag": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz" + "clone": "0.2.0", + "clone-stats": "0.0.1" } + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" } } }, - "mocha": { - "version": "https://registry.npmjs.org/mocha/-/mocha-2.5.3.tgz", - "integrity": "sha1-FhvlvetJZ3HrmzV0UFC2IrWu/Fg=", - "dev": true, + "watchify": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/watchify/-/watchify-3.10.0.tgz", + "integrity": "sha512-SRSumWalHAxciSaEtua1HFqB8L+et5ieHjJRuNssqj4qXz4pJoR6cAeFWni3reXyOY3cVE6b55sJ8WYR43abBQ==", "requires": { - "commander": "https://registry.npmjs.org/commander/-/commander-2.3.0.tgz", - "debug": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", - "diff": "https://registry.npmjs.org/diff/-/diff-1.4.0.tgz", - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.2.tgz", - "glob": "https://registry.npmjs.org/glob/-/glob-3.2.11.tgz", - "growl": "https://registry.npmjs.org/growl/-/growl-1.9.2.tgz", - "jade": "https://registry.npmjs.org/jade/-/jade-0.26.3.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "supports-color": "https://registry.npmjs.org/supports-color/-/supports-color-1.2.0.tgz", - "to-iso-string": "https://registry.npmjs.org/to-iso-string/-/to-iso-string-0.0.2.tgz" + "anymatch": "1.3.2", + "browserify": "15.2.0", + "chokidar": "1.7.0", + "defined": "1.0.0", + "outpipe": "1.1.1", + "through2": "2.0.3", + "xtend": "4.0.1" }, "dependencies": { - "commander": { - "version": "https://registry.npmjs.org/commander/-/commander-2.3.0.tgz", - "integrity": "sha1-/UMOiJgy7DU7ms0d4hfBHLPu+HM=", - "dev": true + "JSONStream": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.2.tgz", + "integrity": "sha1-wQI3G27Dp887hHygDCC7D85Mbeo=", + "requires": { + "jsonparse": "1.3.1", + "through": "2.3.8" + } }, - "debug": { - "version": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", - "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", - "dev": true, + "acorn": { + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" + }, + "anymatch": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "requires": { + "micromatch": "2.3.11", + "normalize-path": "2.1.1" + } + }, + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "requires": { + "arr-flatten": "1.1.0" + } + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "array-filter": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", + "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=" + }, + "array-map": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", + "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=" + }, + "array-reduce": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", + "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=" + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=" + }, + "asn1.js": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.9.2.tgz", + "integrity": "sha512-b/OsSjvWEo8Pi8H0zsDd2P6Uqo2TK2pH8gNLSJtNLM2Db0v2QaAZ0pBQJXVjAn4gBuugeVDr7s63ZogpUIwWDg==", + "requires": { + "bn.js": "4.11.8", + "inherits": "2.0.3", + "minimalistic-assert": "1.0.0" + } + }, + "assert": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", + "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", + "requires": { + "util": "0.10.3" + } + }, + "astw": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/astw/-/astw-2.2.0.tgz", + "integrity": "sha1-e9QXhNMkk5h66yOba04cV6hzuRc=", + "requires": { + "acorn": "4.0.13" + } + }, + "async-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", + "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=" + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "base64-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.1.tgz", + "integrity": "sha512-dwVUVIXsBZXwTuwnXI9RK8sBmgq09NDHzyR9SAph9eqk76gKK2JSQmZARC2zRC81JC2QTtxD0ARU5qTS25gIGw==" + }, + "binary-extensions": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", + "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=" + }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "requires": { + "expand-range": "1.8.2", + "preserve": "0.2.0", + "repeat-element": "1.1.2" + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" + }, + "browser-pack": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.0.3.tgz", + "integrity": "sha512-Jo+RYsn8X8OhyP9tMXXg0ueR2fW696HUu1Hf3/DeiwNean1oGiPtdgGRNuUHBpPHzBH3x4n1kzAlgOgHSIq88g==", + "requires": { + "JSONStream": "1.3.2", + "combine-source-map": "0.8.0", + "defined": "1.0.0", + "safe-buffer": "5.1.1", + "through2": "2.0.3", + "umd": "3.0.1" + } + }, + "browser-resolve": { + "version": "1.11.2", + "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.2.tgz", + "integrity": "sha1-j/CbCixCFxihBRwmCzLkj0QpOM4=", + "requires": { + "resolve": "1.1.7" + }, + "dependencies": { + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=" + } + } + }, + "browserify": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/browserify/-/browserify-15.2.0.tgz", + "integrity": "sha512-IHYyFPm2XjJCL+VV0ZtFv8wn/sAHVOm83q3yfSn8YWbZ9jcybgPKxSDdiuMU+35jUL1914l74RnXXPD9Iyo9yg==", + "requires": { + "JSONStream": "1.3.2", + "assert": "1.4.1", + "browser-pack": "6.0.3", + "browser-resolve": "1.11.2", + "browserify-zlib": "0.2.0", + "buffer": "5.0.8", + "cached-path-relative": "1.0.1", + "concat-stream": "1.5.2", + "console-browserify": "1.1.0", + "constants-browserify": "1.0.0", + "crypto-browserify": "3.12.0", + "defined": "1.0.0", + "deps-sort": "2.0.0", + "domain-browser": "1.1.7", + "duplexer2": "0.1.4", + "events": "1.1.1", + "glob": "7.1.2", + "has": "1.0.1", + "htmlescape": "1.1.1", + "https-browserify": "1.0.0", + "inherits": "2.0.3", + "insert-module-globals": "7.0.1", + "labeled-stream-splicer": "2.0.0", + "mkdirp": "0.5.1", + "module-deps": "5.0.1", + "os-browserify": "0.3.0", + "parents": "1.0.1", + "path-browserify": "0.0.0", + "process": "0.11.10", + "punycode": "1.4.1", + "querystring-es3": "0.2.1", + "read-only-stream": "2.0.0", + "readable-stream": "2.3.3", + "resolve": "1.5.0", + "shasum": "1.0.2", + "shell-quote": "1.6.1", + "stream-browserify": "2.0.1", + "stream-http": "2.8.0", + "string_decoder": "1.0.3", + "subarg": "1.0.0", + "syntax-error": "1.3.0", + "through2": "2.0.3", + "timers-browserify": "1.4.2", + "tty-browserify": "0.0.1", + "url": "0.11.0", + "util": "0.10.3", + "vm-browserify": "0.0.4", + "xtend": "4.0.1" + } + }, + "browserify-aes": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.1.1.tgz", + "integrity": "sha512-UGnTYAnB2a3YuYKIRy1/4FB2HdM866E0qC46JXvVTYKlBlZlnvfpSfY6OKfXZAkv70eJ2a1SqzpAo5CRhZGDFg==", + "requires": { + "buffer-xor": "1.0.3", + "cipher-base": "1.0.4", + "create-hash": "1.1.3", + "evp_bytestokey": "1.0.3", + "inherits": "2.0.3", + "safe-buffer": "5.1.1" + } + }, + "browserify-cipher": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.0.tgz", + "integrity": "sha1-mYgkSHS/XtTijalWZtzWasj8Njo=", + "requires": { + "browserify-aes": "1.1.1", + "browserify-des": "1.0.0", + "evp_bytestokey": "1.0.3" + } + }, + "browserify-des": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.0.tgz", + "integrity": "sha1-2qJ3cXRwki7S/hhZQRihdUOXId0=", + "requires": { + "cipher-base": "1.0.4", + "des.js": "1.0.0", + "inherits": "2.0.3" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "requires": { + "bn.js": "4.11.8", + "randombytes": "2.0.6" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "requires": { + "bn.js": "4.11.8", + "browserify-rsa": "4.0.1", + "create-hash": "1.1.3", + "create-hmac": "1.1.6", + "elliptic": "6.4.0", + "inherits": "2.0.3", + "parse-asn1": "5.1.0" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "requires": { + "pako": "1.0.6" + } + }, + "buffer": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.0.8.tgz", + "integrity": "sha512-xXvjQhVNz50v2nPeoOsNqWCLGfiv4ji/gXZM28jnVwdLJxH4mFyqgqCKfaK9zf1KUbG6zTkjLOy7ou+jSMarGA==", + "requires": { + "base64-js": "1.2.1", + "ieee754": "1.1.8" + } + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" + }, + "cached-path-relative": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.0.1.tgz", + "integrity": "sha1-0JxLUoAKpMB44t2BqGmqyQ0uVOc=" + }, + "chokidar": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", + "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "requires": { + "anymatch": "1.3.2", + "async-each": "1.0.1", + "fsevents": "1.1.3", + "glob-parent": "2.0.0", + "inherits": "2.0.3", + "is-binary-path": "1.0.1", + "is-glob": "2.0.1", + "path-is-absolute": "1.0.1", + "readdirp": "2.1.0" + } + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "requires": { + "inherits": "2.0.3", + "safe-buffer": "5.1.1" + } + }, + "combine-source-map": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz", + "integrity": "sha1-pY0N8ELBhvz4IqjoAV9UUNLXmos=", "requires": { - "ms": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz" + "convert-source-map": "1.1.3", + "inline-source-map": "0.6.2", + "lodash.memoize": "3.0.4", + "source-map": "0.5.7" } }, - "escape-string-regexp": { - "version": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.2.tgz", - "integrity": "sha1-Tbwv5nTnGUnK8/smlc5/LcHZqNE=", - "dev": true + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, - "glob": { - "version": "https://registry.npmjs.org/glob/-/glob-3.2.11.tgz", - "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=", - "dev": true, + "concat-stream": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", + "integrity": "sha1-cIl4Yk2FavQaWnQd790mHadSwmY=", "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz" + "inherits": "2.0.3", + "readable-stream": "2.0.6", + "typedarray": "0.0.6" + }, + "dependencies": { + "readable-stream": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", + "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "string_decoder": "0.10.31", + "util-deprecate": "1.0.2" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + } } }, - "minimatch": { - "version": "https://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz", - "integrity": "sha1-J12O2qxPG7MyZHIInnlJyDlGmd0=", - "dev": true, + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", "requires": { - "lru-cache": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz", - "sigmund": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz" + "date-now": "0.1.4" } }, - "ms": { - "version": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", - "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=", - "dev": true + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" }, - "supports-color": { - "version": "https://registry.npmjs.org/supports-color/-/supports-color-1.2.0.tgz", - "integrity": "sha1-/x7R5hFp0Gs88tWI4YixjYhH4X4=", - "dev": true - } - } - }, - "mochify": { - "version": "https://registry.npmjs.org/mochify/-/mochify-2.18.1.tgz", - "integrity": "sha1-8Pmv3uiDYax+MD0JTLifTYZLOHw=", - "dev": true, - "requires": { - "brout": "https://registry.npmjs.org/brout/-/brout-1.2.0.tgz", - "browserify": "https://registry.npmjs.org/browserify/-/browserify-13.1.1.tgz", - "consolify": "https://registry.npmjs.org/consolify/-/consolify-2.2.0.tgz", - "coverify": "https://registry.npmjs.org/coverify/-/coverify-1.4.1.tgz", - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", - "min-wd": "https://registry.npmjs.org/min-wd/-/min-wd-2.9.3.tgz", - "mocaccino": "https://registry.npmjs.org/mocaccino/-/mocaccino-1.8.2.tgz", - "mocha": "https://registry.npmjs.org/mocha/-/mocha-2.5.3.tgz", - "phantomic": "https://registry.npmjs.org/phantomic/-/phantomic-1.4.0.tgz", - "resolve": "https://registry.npmjs.org/resolve/-/resolve-1.2.0.tgz", - "source-mapper": "https://registry.npmjs.org/source-mapper/-/source-mapper-2.0.0.tgz", - "subarg": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "watchify": "https://registry.npmjs.org/watchify/-/watchify-3.8.0.tgz", - "which": "https://registry.npmjs.org/which/-/which-1.2.12.tgz" - }, - "dependencies": { - "ansi-regex": { - "version": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz", - "integrity": "sha1-xQYbbg74qBd15Q9dZhUb9r83EQc=" + "convert-source-map": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz", + "integrity": "sha1-SCnId+n+SbMWHzvzZziI4gRpmGA=" }, - "ansi-styles": { - "version": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, - "asn1": { - "version": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=" + "create-ecdh": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz", + "integrity": "sha1-iIxyNZbN92EvZJgjPuvXo1MBc30=", + "requires": { + "bn.js": "4.11.8", + "elliptic": "6.4.0" + } }, - "assert-plus": { - "version": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=" + "create-hash": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", + "integrity": "sha1-YGBCrIuSYnUPSDyt2rD1gZFy2P0=", + "requires": { + "cipher-base": "1.0.4", + "inherits": "2.0.3", + "ripemd160": "2.0.1", + "sha.js": "2.4.10" + } }, - "async": { - "version": "https://registry.npmjs.org/async/-/async-2.1.4.tgz", - "integrity": "sha1-LSFgx3iAMuTdbL4lAvH5osj2zeQ=", + "create-hmac": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.6.tgz", + "integrity": "sha1-rLniIaThe9sHbpBlfEK5PjcmzwY=", "requires": { - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz" + "cipher-base": "1.0.4", + "create-hash": "1.1.3", + "inherits": "2.0.3", + "ripemd160": "2.0.1", + "safe-buffer": "5.1.1", + "sha.js": "2.4.10" } }, - "aws-sign2": { - "version": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=" + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "requires": { + "browserify-cipher": "1.0.0", + "browserify-sign": "4.0.4", + "create-ecdh": "4.0.0", + "create-hash": "1.1.3", + "create-hmac": "1.1.6", + "diffie-hellman": "5.0.2", + "inherits": "2.0.3", + "pbkdf2": "3.0.14", + "public-encrypt": "4.0.0", + "randombytes": "2.0.6", + "randomfill": "1.0.3" + } }, - "balanced-match": { - "version": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", - "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=" + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=" }, - "bcrypt-pbkdf": { - "version": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.0.tgz", - "integrity": "sha1-PKdrhSQccXC/fZcD57mqdGMAQNQ=", - "optional": true, + "defined": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", + "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=" + }, + "deps-sort": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.0.tgz", + "integrity": "sha1-CRckkC6EZYJg65EHSMzNGvbiH7U=", "requires": { - "tweetnacl": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz" + "JSONStream": "1.3.2", + "shasum": "1.0.2", + "subarg": "1.0.0", + "through2": "2.0.3" } }, - "bl": { - "version": "https://registry.npmjs.org/bl/-/bl-1.0.3.tgz", - "integrity": "sha1-/FQhoo/UImA2w7OJGmaiW8ZNIm4=", + "des.js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz" + "inherits": "2.0.3", + "minimalistic-assert": "1.0.0" } }, - "boom": { - "version": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", + "detective": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/detective/-/detective-5.0.2.tgz", + "integrity": "sha512-NUsLoezj4wb9o7vpxS9F3L5vcO87ceyRBcl48op06YFNwkyIEY997JpSCA5lDlDuDc6JxOtaL5qfK3muoWxpMA==", "requires": { - "hoek": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz" + "@browserify/acorn5-object-spread": "5.0.1", + "acorn": "5.3.0", + "defined": "1.0.0" + }, + "dependencies": { + "acorn": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.3.0.tgz", + "integrity": "sha512-Yej+zOJ1Dm/IMZzzj78OntP/r3zHEaKcyNoU2lAaxPtrseM6rF0xwqoz5Q5ysAiED9hTjI2hgtvLXitlCN1/Ug==" + } } }, - "brace-expansion": { - "version": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.6.tgz", - "integrity": "sha1-cZfX6qm4fmSDkOph/GbIRCdCDfk=", + "diffie-hellman": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.2.tgz", + "integrity": "sha1-tYNXOScM/ias9jIJn97SoH8gnl4=", "requires": { - "balanced-match": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", - "concat-map": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" + "bn.js": "4.11.8", + "miller-rabin": "4.0.1", + "randombytes": "2.0.6" } }, - "caseless": { - "version": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz", - "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=" + "domain-browser": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.7.tgz", + "integrity": "sha1-hnqksJP6oF8d4IwG9NeyH9+GmLw=" }, - "chalk": { - "version": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", "requires": { - "ansi-styles": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "has-ansi": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "supports-color": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" + "readable-stream": "2.3.3" } }, - "combined-stream": { - "version": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", - "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", + "elliptic": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", + "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=", "requires": { - "delayed-stream": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" + "bn.js": "4.11.8", + "brorand": "1.1.0", + "hash.js": "1.1.3", + "hmac-drbg": "1.0.1", + "inherits": "2.0.3", + "minimalistic-assert": "1.0.0", + "minimalistic-crypto-utils": "1.0.1" } }, - "commander": { - "version": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", - "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", + "events": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", + "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=" + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", "requires": { - "graceful-readlink": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz" + "md5.js": "1.3.4", + "safe-buffer": "5.1.1" } }, - "concat-map": { - "version": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "requires": { + "is-posix-bracket": "0.1.1" + } }, - "concat-stream": { - "version": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.0.tgz", - "integrity": "sha1-U/fUPFHF5D+ByP3QMyHGMb5o1hE=", + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "typedarray": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz" + "fill-range": "2.2.3" } }, - "core-util-is": { - "version": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "requires": { + "is-extglob": "1.0.0" + } + }, + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=" + }, + "fill-range": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", + "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", + "requires": { + "is-number": "2.1.0", + "isobject": "2.1.0", + "randomatic": "1.1.7", + "repeat-element": "1.1.2", + "repeat-string": "1.6.1" + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" }, - "cryptiles": { - "version": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", "requires": { - "boom": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz" + "for-in": "1.0.2" } }, - "dashdash": { - "version": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "fsevents": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz", + "integrity": "sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==", + "optional": true, "requires": { - "assert-plus": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" + "nan": "2.8.0", + "node-pre-gyp": "0.6.39" }, "dependencies": { + "abbrev": { + "version": "1.1.0", + "bundled": true, + "optional": true + }, + "ajv": { + "version": "4.11.8", + "bundled": true, + "optional": true, + "requires": { + "co": "4.6.0", + "json-stable-stringify": "1.0.1" + } + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true + }, + "aproba": { + "version": "1.1.1", + "bundled": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.4", + "bundled": true, + "optional": true, + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.2.9" + } + }, + "asn1": { + "version": "0.2.3", + "bundled": true, + "optional": true + }, "assert-plus": { - "version": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + "version": "0.2.0", + "bundled": true, + "optional": true + }, + "asynckit": { + "version": "0.4.0", + "bundled": true, + "optional": true + }, + "aws-sign2": { + "version": "0.6.0", + "bundled": true, + "optional": true + }, + "aws4": { + "version": "1.6.0", + "bundled": true, + "optional": true + }, + "balanced-match": { + "version": "0.4.2", + "bundled": true + }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "bundled": true, + "optional": true, + "requires": { + "tweetnacl": "0.14.5" + } + }, + "block-stream": { + "version": "0.0.9", + "bundled": true, + "requires": { + "inherits": "2.0.3" + } + }, + "boom": { + "version": "2.10.1", + "bundled": true, + "requires": { + "hoek": "2.16.3" + } + }, + "brace-expansion": { + "version": "1.1.7", + "bundled": true, + "requires": { + "balanced-match": "0.4.2", + "concat-map": "0.0.1" + } + }, + "buffer-shims": { + "version": "1.0.0", + "bundled": true + }, + "caseless": { + "version": "0.12.0", + "bundled": true, + "optional": true + }, + "co": { + "version": "4.6.0", + "bundled": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true + }, + "combined-stream": { + "version": "1.0.5", + "bundled": true, + "requires": { + "delayed-stream": "1.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "bundled": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true + }, + "cryptiles": { + "version": "2.0.5", + "bundled": true, + "requires": { + "boom": "2.10.1" + } + }, + "dashdash": { + "version": "1.14.1", + "bundled": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "optional": true + } + } + }, + "debug": { + "version": "2.6.8", + "bundled": true, + "optional": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-extend": { + "version": "0.4.2", + "bundled": true, + "optional": true + }, + "delayed-stream": { + "version": "1.0.0", + "bundled": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.2", + "bundled": true, + "optional": true + }, + "ecc-jsbn": { + "version": "0.1.1", + "bundled": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "extend": { + "version": "3.0.1", + "bundled": true, + "optional": true + }, + "extsprintf": { + "version": "1.0.2", + "bundled": true + }, + "forever-agent": { + "version": "0.6.1", + "bundled": true, + "optional": true + }, + "form-data": { + "version": "2.1.4", + "bundled": true, + "optional": true, + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.15" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true + }, + "fstream": { + "version": "1.0.11", + "bundled": true, + "requires": { + "graceful-fs": "4.1.11", + "inherits": "2.0.3", + "mkdirp": "0.5.1", + "rimraf": "2.6.1" + } + }, + "fstream-ignore": { + "version": "1.0.5", + "bundled": true, + "optional": true, + "requires": { + "fstream": "1.0.11", + "inherits": "2.0.3", + "minimatch": "3.0.4" + } + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "optional": true, + "requires": { + "aproba": "1.1.1", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.2" + } + }, + "getpass": { + "version": "0.1.7", + "bundled": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "optional": true + } + } + }, + "glob": { + "version": "7.1.2", + "bundled": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "graceful-fs": { + "version": "4.1.11", + "bundled": true + }, + "har-schema": { + "version": "1.0.5", + "bundled": true, + "optional": true + }, + "har-validator": { + "version": "4.2.1", + "bundled": true, + "optional": true, + "requires": { + "ajv": "4.11.8", + "har-schema": "1.0.5" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "optional": true + }, + "hawk": { + "version": "3.1.3", + "bundled": true, + "requires": { + "boom": "2.10.1", + "cryptiles": "2.0.5", + "hoek": "2.16.3", + "sntp": "1.0.9" + } + }, + "hoek": { + "version": "2.16.3", + "bundled": true + }, + "http-signature": { + "version": "1.1.1", + "bundled": true, + "optional": true, + "requires": { + "assert-plus": "0.2.0", + "jsprim": "1.4.0", + "sshpk": "1.13.0" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true + }, + "ini": { + "version": "1.3.4", + "bundled": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-typedarray": { + "version": "1.0.0", + "bundled": true, + "optional": true + }, + "isarray": { + "version": "1.0.0", + "bundled": true + }, + "isstream": { + "version": "0.1.2", + "bundled": true, + "optional": true + }, + "jodid25519": { + "version": "1.0.2", + "bundled": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "jsbn": { + "version": "0.1.1", + "bundled": true, + "optional": true + }, + "json-schema": { + "version": "0.2.3", + "bundled": true, + "optional": true + }, + "json-stable-stringify": { + "version": "1.0.1", + "bundled": true, + "optional": true, + "requires": { + "jsonify": "0.0.0" + } + }, + "json-stringify-safe": { + "version": "5.0.1", + "bundled": true, + "optional": true + }, + "jsonify": { + "version": "0.0.0", + "bundled": true, + "optional": true + }, + "jsprim": { + "version": "1.4.0", + "bundled": true, + "optional": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.0.2", + "json-schema": "0.2.3", + "verror": "1.3.6" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "optional": true + } + } + }, + "mime-db": { + "version": "1.27.0", + "bundled": true + }, + "mime-types": { + "version": "2.1.15", + "bundled": true, + "requires": { + "mime-db": "1.27.0" + } + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "requires": { + "brace-expansion": "1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "optional": true + }, + "node-pre-gyp": { + "version": "0.6.39", + "bundled": true, + "optional": true, + "requires": { + "detect-libc": "1.0.2", + "hawk": "3.1.3", + "mkdirp": "0.5.1", + "nopt": "4.0.1", + "npmlog": "4.1.0", + "rc": "1.2.1", + "request": "2.81.0", + "rimraf": "2.6.1", + "semver": "5.3.0", + "tar": "2.2.1", + "tar-pack": "3.4.0" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "optional": true, + "requires": { + "abbrev": "1.1.0", + "osenv": "0.1.4" + } + }, + "npmlog": { + "version": "4.1.0", + "bundled": true, + "optional": true, + "requires": { + "are-we-there-yet": "1.1.4", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true + }, + "oauth-sign": { + "version": "0.8.2", + "bundled": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "optional": true + }, + "osenv": { + "version": "0.1.4", + "bundled": true, + "optional": true, + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true + }, + "performance-now": { + "version": "0.2.0", + "bundled": true, + "optional": true + }, + "process-nextick-args": { + "version": "1.0.7", + "bundled": true + }, + "punycode": { + "version": "1.4.1", + "bundled": true, + "optional": true + }, + "qs": { + "version": "6.4.0", + "bundled": true, + "optional": true + }, + "rc": { + "version": "1.2.1", + "bundled": true, + "optional": true, + "requires": { + "deep-extend": "0.4.2", + "ini": "1.3.4", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.2.9", + "bundled": true, + "requires": { + "buffer-shims": "1.0.0", + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "string_decoder": "1.0.1", + "util-deprecate": "1.0.2" + } + }, + "request": { + "version": "2.81.0", + "bundled": true, + "optional": true, + "requires": { + "aws-sign2": "0.6.0", + "aws4": "1.6.0", + "caseless": "0.12.0", + "combined-stream": "1.0.5", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.1.4", + "har-validator": "4.2.1", + "hawk": "3.1.3", + "http-signature": "1.1.1", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.15", + "oauth-sign": "0.8.2", + "performance-now": "0.2.0", + "qs": "6.4.0", + "safe-buffer": "5.0.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.2", + "tunnel-agent": "0.6.0", + "uuid": "3.0.1" + } + }, + "rimraf": { + "version": "2.6.1", + "bundled": true, + "requires": { + "glob": "7.1.2" + } + }, + "safe-buffer": { + "version": "5.0.1", + "bundled": true + }, + "semver": { + "version": "5.3.0", + "bundled": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "optional": true + }, + "sntp": { + "version": "1.0.9", + "bundled": true, + "requires": { + "hoek": "2.16.3" + } + }, + "sshpk": { + "version": "1.13.0", + "bundled": true, + "optional": true, + "requires": { + "asn1": "0.2.3", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.1", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.1", + "getpass": "0.1.7", + "jodid25519": "1.0.2", + "jsbn": "0.1.1", + "tweetnacl": "0.14.5" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "bundled": true, + "optional": true + } + } + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "string_decoder": { + "version": "1.0.1", + "bundled": true, + "requires": { + "safe-buffer": "5.0.1" + } + }, + "stringstream": { + "version": "0.0.5", + "bundled": true, + "optional": true + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "optional": true + }, + "tar": { + "version": "2.2.1", + "bundled": true, + "requires": { + "block-stream": "0.0.9", + "fstream": "1.0.11", + "inherits": "2.0.3" + } + }, + "tar-pack": { + "version": "3.4.0", + "bundled": true, + "optional": true, + "requires": { + "debug": "2.6.8", + "fstream": "1.0.11", + "fstream-ignore": "1.0.5", + "once": "1.4.0", + "readable-stream": "2.2.9", + "rimraf": "2.6.1", + "tar": "2.2.1", + "uid-number": "0.0.6" + } + }, + "tough-cookie": { + "version": "2.3.2", + "bundled": true, + "optional": true, + "requires": { + "punycode": "1.4.1" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "bundled": true, + "optional": true, + "requires": { + "safe-buffer": "5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "bundled": true, + "optional": true + }, + "uid-number": { + "version": "0.0.6", + "bundled": true, + "optional": true + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true + }, + "uuid": { + "version": "3.0.1", + "bundled": true, + "optional": true + }, + "verror": { + "version": "1.3.6", + "bundled": true, + "optional": true, + "requires": { + "extsprintf": "1.0.2" + } + }, + "wide-align": { + "version": "1.1.2", + "bundled": true, + "optional": true, + "requires": { + "string-width": "1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true } } }, - "debug": { - "version": "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz", - "integrity": "sha1-BuHqgILCyxTjmAbiLi9vdX+Srzk=" - }, - "delayed-stream": { - "version": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "ecc-jsbn": { - "version": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", - "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", - "optional": true, - "requires": { - "jsbn": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.0.tgz" - } - }, - "escape-string-regexp": { - "version": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - }, - "extend": { - "version": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz", - "integrity": "sha1-WkdDU7nzNT3dgXbf03uRyDpG8dQ=" - }, - "extract-zip": { - "version": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.5.0.tgz", - "integrity": "sha1-ksz22B73Cp+kwXRxFMzvbYaIpsQ=", - "requires": { - "concat-stream": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.0.tgz", - "debug": "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz", - "yauzl": "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz" - } - }, - "extsprintf": { - "version": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz", - "integrity": "sha1-4QgOBljjALBilJkMxw4VAiNf1VA=" - }, - "fd-slicer": { - "version": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", - "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", - "requires": { - "pend": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz" - } - }, - "forever-agent": { - "version": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" - }, - "form-data": { - "version": "https://registry.npmjs.org/form-data/-/form-data-1.0.1.tgz", - "integrity": "sha1-rjFduaSQf6BlUCMEpm13M0de43w=", - "requires": { - "async": "https://registry.npmjs.org/async/-/async-2.1.4.tgz", - "combined-stream": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", - "mime-types": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.13.tgz" - } - }, - "fs-extra": { - "version": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.26.7.tgz", - "integrity": "sha1-muH92UiXeY7at20JGM9C0MMYT6k=", - "requires": { - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "jsonfile": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "klaw": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", - "path-is-absolute": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "rimraf": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz" - } - }, - "fs.realpath": { - "version": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, - "generate-function": { - "version": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz", - "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=" - }, - "generate-object-property": { - "version": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", - "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", "requires": { - "is-property": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz" + "glob-parent": "2.0.0", + "is-glob": "2.0.1" } }, - "getpass": { - "version": "https://registry.npmjs.org/getpass/-/getpass-0.1.6.tgz", - "integrity": "sha1-KD/9n8ElaECHUxHBtg6MQBhxEOY=", + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", "requires": { - "assert-plus": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" - }, - "dependencies": { - "assert-plus": { - "version": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - } + "is-glob": "2.0.1" } }, "graceful-fs": { - "version": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" }, - "graceful-readlink": { - "version": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", - "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" - }, - "har-validator": { - "version": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", - "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=", - "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "commander": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", - "is-my-json-valid": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.15.0.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" - } - }, - "has-ansi": { - "version": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "has": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", + "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", "requires": { - "ansi-regex": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" + "function-bind": "1.1.1" } }, - "hasha": { - "version": "https://registry.npmjs.org/hasha/-/hasha-2.2.0.tgz", - "integrity": "sha1-eNfL/B5tZjA/55g3NlmEUXsvbuE=", + "hash.js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", + "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", "requires": { - "is-stream": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" + "inherits": "2.0.3", + "minimalistic-assert": "1.0.0" } }, - "hawk": { - "version": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", - "requires": { - "boom": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "cryptiles": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "hoek": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "sntp": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz" - } + "htmlescape": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz", + "integrity": "sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E=" }, - "hoek": { - "version": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" }, - "http-signature": { - "version": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", - "requires": { - "assert-plus": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "jsprim": "https://registry.npmjs.org/jsprim/-/jsprim-1.3.1.tgz", - "sshpk": "https://registry.npmjs.org/sshpk/-/sshpk-1.10.1.tgz" - } + "ieee754": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz", + "integrity": "sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q=" }, - "inflight": { - "version": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" - } + "indexof": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=" }, "inherits": { - "version": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" }, - "is-my-json-valid": { - "version": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.15.0.tgz", - "integrity": "sha1-k27do8o8IR/ZjzstPgjaQ/eykVs=", - "requires": { - "generate-function": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz", - "generate-object-property": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", - "jsonpointer": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.0.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" - } - }, - "is-property": { - "version": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", - "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=" - }, - "is-stream": { - "version": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" - }, - "is-typedarray": { - "version": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" - }, - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "isexe": { - "version": "https://registry.npmjs.org/isexe/-/isexe-1.1.2.tgz", - "integrity": "sha1-NvPiLmB1CSD15yQaR2qMakInWtA=" - }, - "isstream": { - "version": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "jodid25519": { - "version": "https://registry.npmjs.org/jodid25519/-/jodid25519-1.0.2.tgz", - "integrity": "sha1-BtSRIlUJNBlHfUJWM2BuDpB4KWc=", - "optional": true, - "requires": { - "jsbn": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.0.tgz" - } - }, - "jsbn": { - "version": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.0.tgz", - "integrity": "sha1-ZQmH2g3XT06/WhE3eiqi0nPpff0=", - "optional": true - }, - "json-schema": { - "version": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" - }, - "json-stringify-safe": { - "version": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" - }, - "jsonfile": { - "version": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", - "requires": { - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz" - } - }, - "jsonpointer": { - "version": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.0.tgz", - "integrity": "sha1-ZmHhYdL8RF8Z+YQwIxNDci4fy9U=" - }, - "jsprim": { - "version": "https://registry.npmjs.org/jsprim/-/jsprim-1.3.1.tgz", - "integrity": "sha1-KnJW9wQSop7jZwqspiWZTE3P8lI=", - "requires": { - "extsprintf": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz", - "json-schema": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "verror": "https://registry.npmjs.org/verror/-/verror-1.3.6.tgz" - } - }, - "kew": { - "version": "https://registry.npmjs.org/kew/-/kew-0.7.0.tgz", - "integrity": "sha1-edk9LTM2PW/dKXCzNdkUGtWR15s=" - }, - "klaw": { - "version": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", - "integrity": "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=", - "requires": { - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz" - } - }, - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "integrity": "sha1-NKMFW6vgTOQkZ7YH1wAHLH/2v0I=" - }, - "mime-db": { - "version": "https://registry.npmjs.org/mime-db/-/mime-db-1.25.0.tgz", - "integrity": "sha1-wY29fHOl2/b0SgJNwNFloeexw5I=" - }, - "mime-types": { - "version": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.13.tgz", - "integrity": "sha1-4HqqnGxrmnyjASxpADrSWjnpKog=", - "requires": { - "mime-db": "https://registry.npmjs.org/mime-db/-/mime-db-1.25.0.tgz" - } - }, - "minimatch": { - "version": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha1-Kk5AkLlrLbBqnX3wEFWmKnfJt3Q=", - "requires": { - "brace-expansion": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.6.tgz" - } - }, - "minimist": { - "version": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" - }, - "mkdirp": { - "version": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz", - "integrity": "sha1-HXMHam35hs2TROFecfzAWkyavxI=", - "requires": { - "minimist": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" - } - }, - "node-uuid": { - "version": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.7.tgz", - "integrity": "sha1-baWhdmjEs91ZYjvaEc9/pMH2Cm8=" - }, - "oauth-sign": { - "version": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" - }, - "once": { - "version": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" - } - }, - "path-is-absolute": { - "version": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "pend": { - "version": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" - }, - "phantomjs": { - "version": "https://registry.npmjs.org/phantomjs/-/phantomjs-2.1.7.tgz", - "integrity": "sha1-xpEPZ5NcNyhbYRQyn8LyfV8+MTQ=", - "requires": { - "extract-zip": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.5.0.tgz", - "fs-extra": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.26.7.tgz", - "hasha": "https://registry.npmjs.org/hasha/-/hasha-2.2.0.tgz", - "kew": "https://registry.npmjs.org/kew/-/kew-0.7.0.tgz", - "progress": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", - "request": "https://registry.npmjs.org/request/-/request-2.67.0.tgz", - "request-progress": "https://registry.npmjs.org/request-progress/-/request-progress-2.0.1.tgz", - "which": "https://registry.npmjs.org/which/-/which-1.2.12.tgz" - }, - "dependencies": { - "which": { - "version": "https://registry.npmjs.org/which/-/which-1.2.12.tgz", - "integrity": "sha1-3me15FAmnxlJCe8j7OTr5Bb6EZI=", - "requires": { - "isexe": "https://registry.npmjs.org/isexe/-/isexe-1.1.2.tgz" - } - } - } - }, - "pinkie": { - "version": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" - }, - "pinkie-promise": { - "version": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "inline-source-map": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz", + "integrity": "sha1-+Tk0ccGKedFyT4Y/o4tYY3Ct4qU=", "requires": { - "pinkie": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" - } - }, - "process-nextick-args": { - "version": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" - }, - "progress": { - "version": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", - "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=" - }, - "qs": { - "version": "https://registry.npmjs.org/qs/-/qs-5.2.1.tgz", - "integrity": "sha1-gB/uAw4LlFDWOFrcSKTMVbRK7fw=" - }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", - "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "process-nextick-args": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "util-deprecate": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" - } - }, - "request": { - "version": "https://registry.npmjs.org/request/-/request-2.67.0.tgz", - "integrity": "sha1-ivdHgOK/EeoK6aqWXBHxGv0nJ0I=", - "requires": { - "aws-sign2": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "bl": "https://registry.npmjs.org/bl/-/bl-1.0.3.tgz", - "caseless": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz", - "combined-stream": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", - "extend": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz", - "forever-agent": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "form-data": "https://registry.npmjs.org/form-data/-/form-data-1.0.1.tgz", - "har-validator": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", - "hawk": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "http-signature": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "is-typedarray": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "isstream": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "json-stringify-safe": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "mime-types": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.13.tgz", - "node-uuid": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.7.tgz", - "oauth-sign": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "qs": "https://registry.npmjs.org/qs/-/qs-5.2.1.tgz", - "stringstream": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", - "tough-cookie": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.2.2.tgz", - "tunnel-agent": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz" - } - }, - "request-progress": { - "version": "https://registry.npmjs.org/request-progress/-/request-progress-2.0.1.tgz", - "integrity": "sha1-XTa7V5YcZzqlt4jbyBQf3yO0Tgg=", - "requires": { - "throttleit": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz" + "source-map": "0.5.7" } }, - "rimraf": { - "version": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz", - "integrity": "sha1-loAAk8vxoMhr2VtGJUZ1NcKd+gQ=", + "insert-module-globals": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.0.1.tgz", + "integrity": "sha1-wDv04BywhtW15azorQr+eInWOMM=", "requires": { - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz" + "JSONStream": "1.3.2", + "combine-source-map": "0.7.2", + "concat-stream": "1.5.2", + "is-buffer": "1.1.6", + "lexical-scope": "1.2.0", + "process": "0.11.10", + "through2": "2.0.3", + "xtend": "4.0.1" }, "dependencies": { - "glob": { - "version": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", - "integrity": "sha1-gFIR3wT6rxxjo2ADBs31reULLsg=", + "combine-source-map": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.7.2.tgz", + "integrity": "sha1-CHAxKFazB6h8xKxIbzqaYq7MwJ4=", "requires": { - "fs.realpath": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "inflight": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", - "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "path-is-absolute": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" + "convert-source-map": "1.1.3", + "inline-source-map": "0.6.2", + "lodash.memoize": "3.0.4", + "source-map": "0.5.7" } } } }, - "sntp": { - "version": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", - "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", - "requires": { - "hoek": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz" - } - }, - "sshpk": { - "version": "https://registry.npmjs.org/sshpk/-/sshpk-1.10.1.tgz", - "integrity": "sha1-MOGl0ykkSXShr2FREznVla9mOLA=", - "requires": { - "asn1": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "assert-plus": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "bcrypt-pbkdf": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.0.tgz", - "dashdash": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "ecc-jsbn": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", - "getpass": "https://registry.npmjs.org/getpass/-/getpass-0.1.6.tgz", - "jodid25519": "https://registry.npmjs.org/jodid25519/-/jodid25519-1.0.2.tgz", - "jsbn": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.0.tgz", - "tweetnacl": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz" - }, - "dependencies": { - "assert-plus": { - "version": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - } - } - }, - "string_decoder": { - "version": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - }, - "stringstream": { - "version": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", - "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=" - }, - "strip-ansi": { - "version": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" - } - }, - "supports-color": { - "version": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" - }, - "throttleit": { - "version": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", - "integrity": "sha1-nnhYNtr0Z0MUWlmEtiaNgoUorGw=" - }, - "tough-cookie": { - "version": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.2.2.tgz", - "integrity": "sha1-yDoYMPTl7wuT7yo0iOck+N4Basc=" - }, - "tunnel-agent": { - "version": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", - "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=" - }, - "tweetnacl": { - "version": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "optional": true + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "requires": { + "binary-extensions": "1.11.0" + } }, - "typedarray": { - "version": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, - "util-deprecate": { - "version": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=" }, - "verror": { - "version": "https://registry.npmjs.org/verror/-/verror-1.3.6.tgz", - "integrity": "sha1-z/XfEpRtKX0rqu+qJoniW+AcAFw=", + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", "requires": { - "extsprintf": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz" + "is-primitive": "2.0.0" } }, - "wrappy": { - "version": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" }, - "xtend": { - "version": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" }, - "yauzl": { - "version": "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz", - "integrity": "sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=", + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", "requires": { - "fd-slicer": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz" + "is-extglob": "1.0.0" } - } - } - }, - "module-deps": { - "version": "https://registry.npmjs.org/module-deps/-/module-deps-4.0.8.tgz", - "integrity": "sha1-Vf1wYjOZcGwyiL73pgn/HowO0rs=", - "requires": { - "browser-resolve": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.2.tgz", - "cached-path-relative": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.0.0.tgz", - "concat-stream": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", - "defined": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", - "detective": "https://registry.npmjs.org/detective/-/detective-4.3.2.tgz", - "duplexer2": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "JSONStream": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.0.tgz", - "parents": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz", - "resolve": "https://registry.npmjs.org/resolve/-/resolve-1.2.0.tgz", - "stream-combiner2": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", - "subarg": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" - } - }, - "moment": { - "version": "https://registry.npmjs.org/moment/-/moment-2.17.1.tgz", - "integrity": "sha1-/tlQYGPzaxDwZsi1mhRNf66+HYI=" - }, - "mothership": { - "version": "https://registry.npmjs.org/mothership/-/mothership-0.2.0.tgz", - "integrity": "sha1-k9SKL7w+UOKl/I7VhvW8RMZfmpk=", - "requires": { - "find-parent-dir": "https://registry.npmjs.org/find-parent-dir/-/find-parent-dir-0.3.0.tgz" - } - }, - "mozjpeg": { - "version": "https://registry.npmjs.org/mozjpeg/-/mozjpeg-4.1.1.tgz", - "integrity": "sha1-hZAwsk9omlPbm0DwFg2JGVuI/VA=", - "requires": { - "bin-build": "https://registry.npmjs.org/bin-build/-/bin-build-2.2.0.tgz", - "bin-wrapper": "https://registry.npmjs.org/bin-wrapper/-/bin-wrapper-3.0.2.tgz", - "logalot": "https://registry.npmjs.org/logalot/-/logalot-2.1.0.tgz" - } - }, - "ms": { - "version": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", - "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=" - }, - "multipipe": { - "version": "https://registry.npmjs.org/multipipe/-/multipipe-0.1.2.tgz", - "integrity": "sha1-Ko8t33Du1WTf8tV/HhoTfZ8FB4s=", - "requires": { - "duplexer2": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz" - }, - "dependencies": { - "duplexer2": { - "version": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", - "integrity": "sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds=", + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz" + "kind-of": "3.2.2" } }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=" + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=" + }, "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", - "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" - } - } - } - }, - "nan": { - "version": "https://registry.npmjs.org/nan/-/nan-2.4.0.tgz", - "integrity": "sha1-+zxZ1F/k7/4hXwuJD4rfbrMtIjI=", - "optional": true - }, - "natives": { - "version": "https://registry.npmjs.org/natives/-/natives-1.1.0.tgz", - "integrity": "sha1-6f+EFBimsux6SV6TmYT3jxY+bjE=" - }, - "node-fetch": { - "version": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.6.3.tgz", - "integrity": "sha1-3CNO3WSJmC1Y6PDbT2lQKavNjAQ=", - "requires": { - "encoding": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", - "is-stream": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz" - } - }, - "node-status-codes": { - "version": "https://registry.npmjs.org/node-status-codes/-/node-status-codes-1.0.0.tgz", - "integrity": "sha1-WuVUHQJGRdMqWPzdyc7s6nrjrC8=" - }, - "normalize-package-data": { - "version": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.3.5.tgz", - "integrity": "sha1-jZJPFClg4Xd+f/4XBUNjHMfLAt8=", - "requires": { - "hosted-git-info": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.1.5.tgz", - "is-builtin-module": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", - "semver": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz", - "validate-npm-package-license": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz" - } - }, - "normalize-path": { - "version": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.0.1.tgz", - "integrity": "sha1-R4hqwWYnYNQmG32XnSQXCdPOP3o=" - }, - "npm-run-path": { - "version": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "requires": { - "path-key": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz" - } - }, - "number-is-nan": { - "version": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "object-assign": { - "version": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "integrity": "sha1-ejs9DpgGPUP0wD8uiubNUahog6A=" - }, - "object-keys": { - "version": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", - "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=" - }, - "object.omit": { - "version": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", - "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", - "requires": { - "for-own": "https://registry.npmjs.org/for-own/-/for-own-0.1.4.tgz", - "is-extendable": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz" - } - }, - "once": { - "version": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" - } - }, - "onetime": { - "version": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=" - }, - "optionator": { - "version": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", - "requires": { - "deep-is": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "fast-levenshtein": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.5.tgz", - "levn": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "prelude-ls": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "type-check": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "wordwrap": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz" - } - }, - "optipng-bin": { - "version": "https://registry.npmjs.org/optipng-bin/-/optipng-bin-3.1.2.tgz", - "integrity": "sha1-GMWjOI7V1vHm7xmYqwprzIvdDKA=", - "requires": { - "bin-build": "https://registry.npmjs.org/bin-build/-/bin-build-2.2.0.tgz", - "bin-wrapper": "https://registry.npmjs.org/bin-wrapper/-/bin-wrapper-3.0.2.tgz", - "logalot": "https://registry.npmjs.org/logalot/-/logalot-2.1.0.tgz" - } - }, - "orchestrator": { - "version": "https://registry.npmjs.org/orchestrator/-/orchestrator-0.3.8.tgz", - "integrity": "sha1-FOfp4nZPcxX7rBhOUGx6pt+UrX4=", - "requires": { - "end-of-stream": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-0.1.5.tgz", - "sequencify": "https://registry.npmjs.org/sequencify/-/sequencify-0.0.7.tgz", - "stream-consume": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.0.tgz" - } - }, - "ordered-read-streams": { - "version": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.1.0.tgz", - "integrity": "sha1-/VZamvjrRHO6abbtijQ1LLVS8SY=" - }, - "os-browserify": { - "version": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.1.2.tgz", - "integrity": "sha1-ScoCk+CxlZCl9d4Qx/JlphfY/lQ=" - }, - "os-filter-obj": { - "version": "https://registry.npmjs.org/os-filter-obj/-/os-filter-obj-1.0.3.tgz", - "integrity": "sha1-WRUzDZDs7VV9LZOKMcbdIU2cY60=" - }, - "os-homedir": { - "version": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" - }, - "os-shim": { - "version": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", - "integrity": "sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=", - "dev": true - }, - "os-tmpdir": { - "version": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" - }, - "outpipe": { - "version": "https://registry.npmjs.org/outpipe/-/outpipe-1.1.1.tgz", - "integrity": "sha1-UM+GFjZeh+Ax4ppeyTOaPaRyX6I=", - "requires": { - "shell-quote": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz" - } - }, - "p-finally": { - "version": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" - }, - "pako": { - "version": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", - "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=" - }, - "parents": { - "version": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz", - "integrity": "sha1-/t1NK/GTp3dF/nHjcdc8MwfZx1E=", - "requires": { - "path-platform": "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz" - } - }, - "parse-asn1": { - "version": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.0.0.tgz", - "integrity": "sha1-NQYPbVAV03Yox3D04JGgtaJ4vCM=", - "requires": { - "asn1.js": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.9.0.tgz", - "browserify-aes": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.0.6.tgz", - "create-hash": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.2.tgz", - "evp_bytestokey": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.0.tgz", - "pbkdf2": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.9.tgz" - } - }, - "parse-filepath": { - "version": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.1.tgz", - "integrity": "sha1-FZ1hVdQ5BNFsEO9piRHaHpGWm3M=", - "requires": { - "is-absolute": "https://registry.npmjs.org/is-absolute/-/is-absolute-0.2.6.tgz", - "map-cache": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "path-root": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz" - } - }, - "parse-glob": { - "version": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", - "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", - "requires": { - "glob-base": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "is-dotfile": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.2.tgz", - "is-extglob": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "is-glob": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz" - } - }, - "parse-json": { - "version": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "requires": { - "error-ex": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.0.tgz" - } - }, - "parse-passwd": { - "version": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=" - }, - "patch-text": { - "version": "https://registry.npmjs.org/patch-text/-/patch-text-1.0.2.tgz", - "integrity": "sha1-S/NuZeUXM9bpjwz2LgkDTaoDSKw=" - }, - "path-browserify": { - "version": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", - "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=" - }, - "path-dirname": { - "version": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" - }, - "path-exists": { - "version": "https://registry.npmjs.org/path-exists/-/path-exists-1.0.0.tgz", - "integrity": "sha1-1aiZjrce83p0w06w2eum6HjuoIE=" - }, - "path-is-absolute": { - "version": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "path-is-inside": { - "version": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" - }, - "path-key": { - "version": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" - }, - "path-platform": { - "version": "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz", - "integrity": "sha1-6GQhf3TDaFDwhSt43Hv31KVyG/I=" - }, - "path-root": { - "version": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", - "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", - "requires": { - "path-root-regex": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz" - } - }, - "path-root-regex": { - "version": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", - "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=" - }, - "path-type": { - "version": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "requires": { - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "pify": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" - } - }, - "pbkdf2": { - "version": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.9.tgz", - "integrity": "sha1-8sSyWmAAWLPDdzwIbDfbvuH/5pM=", - "requires": { - "create-hmac": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.4.tgz" - } - }, - "pend": { - "version": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" - }, - "phantomic": { - "version": "https://registry.npmjs.org/phantomic/-/phantomic-1.4.0.tgz", - "integrity": "sha1-sKm2T3Klqr6M2+fIOHs8/yqx9KA=", - "dev": true, - "requires": { - "cross-spawn": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-2.2.3.tgz", - "es5-shim": "https://registry.npmjs.org/es5-shim/-/es5-shim-4.5.9.tgz", - "source-mapper": "https://registry.npmjs.org/source-mapper/-/source-mapper-2.0.0.tgz" - } - }, - "pify": { - "version": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" - }, - "pinkie": { - "version": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" - }, - "pinkie-promise": { - "version": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "requires": { - "pinkie": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" - } - }, - "pngquant-bin": { - "version": "https://registry.npmjs.org/pngquant-bin/-/pngquant-bin-3.1.1.tgz", - "integrity": "sha1-0STZinWpSH9AwWQLTb/Lsr1aH9E=", - "requires": { - "bin-build": "https://registry.npmjs.org/bin-build/-/bin-build-2.2.0.tgz", - "bin-wrapper": "https://registry.npmjs.org/bin-wrapper/-/bin-wrapper-3.0.2.tgz", - "logalot": "https://registry.npmjs.org/logalot/-/logalot-2.1.0.tgz" - } - }, - "prelude-ls": { - "version": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" - }, - "prepend-http": { - "version": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" - }, - "preserve": { - "version": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=" - }, - "pretty-hrtime": { - "version": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", - "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" - }, - "private": { - "version": "https://registry.npmjs.org/private/-/private-0.1.6.tgz", - "integrity": "sha1-VcapdtD5uvuZJIUTUP5HubX7t8E=" - }, - "process": { - "version": "https://registry.npmjs.org/process/-/process-0.11.9.tgz", - "integrity": "sha1-e9WtIapiU+fahoImTx4R0RwDGME=" - }, - "process-nextick-args": { - "version": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" - }, - "promise": { - "version": "https://registry.npmjs.org/promise/-/promise-7.1.1.tgz", - "integrity": "sha1-SJZUxpJha4qlWwck+oCbt9tJxb8=", - "requires": { - "asap": "https://registry.npmjs.org/asap/-/asap-2.0.5.tgz" - } - }, - "prr": { - "version": "https://registry.npmjs.org/prr/-/prr-0.0.0.tgz", - "integrity": "sha1-GoS4WQgyVQFBGFPQCB7j+obikmo=", - "optional": true - }, - "pseudomap": { - "version": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" - }, - "public-encrypt": { - "version": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.0.tgz", - "integrity": "sha1-OfaZ86RlYN1eusvKaTyvfGXBjMY=", - "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "browserify-rsa": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "create-hash": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.2.tgz", - "parse-asn1": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.0.0.tgz", - "randombytes": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.3.tgz" - } - }, - "punycode": { - "version": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - }, - "q": { - "version": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", - "integrity": "sha1-VXBbzZPF82c1MMLCy8DCs63cKG4=" - }, - "query-string": { - "version": "https://registry.npmjs.org/query-string/-/query-string-3.0.3.tgz", - "integrity": "sha1-ri4UtNBQcdTpuetIc8NbDc1C5jg=", - "requires": { - "strict-uri-encode": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz" - } - }, - "querystring": { - "version": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" - }, - "querystring-es3": { - "version": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" - }, - "randomatic": { - "version": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.6.tgz", - "integrity": "sha1-EQ3Kv/OX6dz/fAeJzMCkmt8exbs=", - "requires": { - "is-number": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "kind-of": "https://registry.npmjs.org/kind-of/-/kind-of-3.1.0.tgz" - } - }, - "randombytes": { - "version": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.3.tgz", - "integrity": "sha1-Z0yZdgkBw8QRJ3GjHlIdw0nMCew=" - }, - "rc": { - "version": "https://registry.npmjs.org/rc/-/rc-1.1.6.tgz", - "integrity": "sha1-Q2UbdrauU7XIAvEVH6P8OwWZack=", - "requires": { - "deep-extend": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.1.tgz", - "ini": "https://registry.npmjs.org/ini/-/ini-1.3.4.tgz", - "minimist": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "strip-json-comments": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz" - }, - "dependencies": { - "minimist": { - "version": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - } - } - }, - "rcfinder": { - "version": "https://registry.npmjs.org/rcfinder/-/rcfinder-0.1.9.tgz", - "integrity": "sha1-8+gPOH3fmugK4wpBADKWQuroERU=", - "requires": { - "lodash.clonedeep": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz" - } - }, - "rcloader": { - "version": "https://registry.npmjs.org/rcloader/-/rcloader-0.2.2.tgz", - "integrity": "sha1-WNIpi0YtC5v9ITPSoex0+9cFxxc=", - "requires": { - "lodash.assign": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", - "lodash.isobject": "https://registry.npmjs.org/lodash.isobject/-/lodash.isobject-3.0.2.tgz", - "lodash.merge": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.0.tgz", - "rcfinder": "https://registry.npmjs.org/rcfinder/-/rcfinder-0.1.9.tgz" - }, - "dependencies": { - "lodash.isobject": { - "version": "https://registry.npmjs.org/lodash.isobject/-/lodash.isobject-3.0.2.tgz", - "integrity": "sha1-PI+41bW/S/kK4G4U8qUwpO2TXh0=" - } - } - }, - "react": { - "version": "https://registry.npmjs.org/react/-/react-15.4.1.tgz", - "integrity": "sha1-SY6RhgJnejmDzQ/SBt/nADiaDdY=", - "requires": { - "fbjs": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.6.tgz", - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.0.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz" - } - }, - "react-addons-test-utils": { - "version": "https://registry.npmjs.org/react-addons-test-utils/-/react-addons-test-utils-15.4.1.tgz", - "integrity": "sha1-HkyqsVG/J8zibfX5y3FPT9g1muE=" - }, - "react-dom": { - "version": "https://registry.npmjs.org/react-dom/-/react-dom-15.4.1.tgz", - "integrity": "sha1-1UyRMmGq7bF63CBBDQKdzBihNEo=", - "requires": { - "fbjs": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.6.tgz", - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.0.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz" - } - }, - "react-redux": { - "version": "https://registry.npmjs.org/react-redux/-/react-redux-4.4.6.tgz", - "integrity": "sha1-S50ymFMHoRCWot1hVhmABE/MYgk=", - "requires": { - "hoist-non-react-statics": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-1.2.0.tgz", - "invariant": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.0.tgz" - }, - "dependencies": { - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "integrity": "sha1-NKMFW6vgTOQkZ7YH1wAHLH/2v0I=" - } - } - }, - "react-router": { - "version": "https://registry.npmjs.org/react-router/-/react-router-2.8.1.tgz", - "integrity": "sha1-c+lJH2zrMW0Pd5gpCBhj43juTtc=", - "requires": { - "history": "https://registry.npmjs.org/history/-/history-2.1.2.tgz", - "hoist-non-react-statics": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-1.2.0.tgz", - "invariant": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.0.tgz", - "warning": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz" - }, - "dependencies": { - "warning": { - "version": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", - "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=", + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", "requires": { - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.0.tgz" + "isarray": "1.0.0" } - } - } - }, - "read-all-stream": { - "version": "https://registry.npmjs.org/read-all-stream/-/read-all-stream-3.1.0.tgz", - "integrity": "sha1-NcPhd/IHjveJ7kv6+kNzB06u9Po=", - "requires": { - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz" - } - }, - "read-only-stream": { - "version": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz", - "integrity": "sha1-JyT9aoET1zdkrCiNQ4YnDB2/F/A=", - "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz" - } - }, - "read-pkg": { - "version": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "requires": { - "load-json-file": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "normalize-package-data": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.3.5.tgz", - "path-type": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz" - } - }, - "read-pkg-up": { - "version": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "requires": { - "find-up": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "read-pkg": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz" - } - }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz", - "integrity": "sha1-qeb+w8fdqF+LsbO6cChgRVb8gl4=", - "requires": { - "buffer-shims": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz", - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "process-nextick-args": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "util-deprecate": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" - } - }, - "readdirp": { - "version": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", - "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", - "requires": { - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz", - "set-immediate-shim": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz" - }, - "dependencies": { - "minimatch": { - "version": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha1-Kk5AkLlrLbBqnX3wEFWmKnfJt3Q=", + }, + "json-stable-stringify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz", + "integrity": "sha1-YRwj6BTbN1Un34URk9tZ3Sryf0U=", "requires": { - "brace-expansion": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.6.tgz" - } - } - } - }, - "rechoir": { - "version": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", - "requires": { - "resolve": "https://registry.npmjs.org/resolve/-/resolve-1.2.0.tgz" - } - }, - "redent": { - "version": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "requires": { - "indent-string": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "strip-indent": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz" - } - }, - "redux": { - "version": "https://registry.npmjs.org/redux/-/redux-3.6.0.tgz", - "integrity": "sha1-iHwrPQub2G7KK+cFccJ2VMGeGI0=", - "requires": { - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "lodash-es": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.2.tgz", - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.0.tgz", - "symbol-observable": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.4.tgz" - }, - "dependencies": { - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-4.17.2.tgz", - "integrity": "sha1-NKMFW6vgTOQkZ7YH1wAHLH/2v0I=" - } - } - }, - "redux-batched-actions": { - "version": "https://registry.npmjs.org/redux-batched-actions/-/redux-batched-actions-0.1.5.tgz", - "integrity": "sha1-s5uEd19EmaRyTzFUuIKWgHO1i+0=" - }, - "regenerate": { - "version": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.2.tgz", - "integrity": "sha1-0ZQcZ7rUN+G+dkM63Vs4X5WxkmA=" - }, - "regenerator-runtime": { - "version": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz", - "integrity": "sha1-JX9BlhzkRVixj3gUr0jBdVn5+us=" - }, - "regenerator-transform": { - "version": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.9.8.tgz", - "integrity": "sha1-D4i7K8A5Mt23trcxLmgHjwECbWw=", - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "babel-types": "https://registry.npmjs.org/babel-types/-/babel-types-6.21.0.tgz", - "private": "https://registry.npmjs.org/private/-/private-0.1.6.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.20.0.tgz", - "integrity": "sha1-hzAL3PTNdw8JvwBIxkIE4XgG0W8=", + "jsonify": "0.0.0" + } + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" + }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=" + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz" + "is-buffer": "1.1.6" } - } - } - }, - "regex-cache": { - "version": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.3.tgz", - "integrity": "sha1-mxpsNdTQ3871cRrmUejp09cRQUU=", - "requires": { - "is-equal-shallow": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", - "is-primitive": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz" - } - }, - "regexpu-core": { - "version": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", - "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", - "requires": { - "regenerate": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.2.tgz", - "regjsgen": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "regjsparser": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz" - } - }, - "regjsgen": { - "version": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=" - }, - "regjsparser": { - "version": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "requires": { - "jsesc": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz" - }, - "dependencies": { - "jsesc": { - "version": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=" - } - } - }, - "rename-function-calls": { - "version": "https://registry.npmjs.org/rename-function-calls/-/rename-function-calls-0.1.1.tgz", - "integrity": "sha1-f4M2nAB6MAf2q+MDPM+BaGoQjgE=", - "requires": { - "detective": "https://registry.npmjs.org/detective/-/detective-3.1.0.tgz" - }, - "dependencies": { - "detective": { - "version": "https://registry.npmjs.org/detective/-/detective-3.1.0.tgz", - "integrity": "sha1-d3gkRKt1K4jKG+Lp0KA5Xx2iXu0=", + }, + "labeled-stream-splicer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.0.tgz", + "integrity": "sha1-pS4dE4AkwAuGscDJH2d5GLiuClk=", "requires": { - "escodegen": "https://registry.npmjs.org/escodegen/-/escodegen-1.1.0.tgz", - "esprima-fb": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-3001.0001.0000-dev-harmony-fb.tgz" + "inherits": "2.0.3", + "isarray": "0.0.1", + "stream-splicer": "2.0.0" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + } } }, - "escodegen": { - "version": "https://registry.npmjs.org/escodegen/-/escodegen-1.1.0.tgz", - "integrity": "sha1-xmOSP24gqtSNDA+knzHG1PSTYM8=", + "lexical-scope": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/lexical-scope/-/lexical-scope-1.2.0.tgz", + "integrity": "sha1-/Ope3HBKSzqHls3KQZw6CvryLfQ=", "requires": { - "esprima": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz", - "estraverse": "https://registry.npmjs.org/estraverse/-/estraverse-1.5.1.tgz", - "esutils": "https://registry.npmjs.org/esutils/-/esutils-1.0.0.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz" + "astw": "2.2.0" + } + }, + "lodash.memoize": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz", + "integrity": "sha1-LcvSwofLwKVcxCMovQxzYVDVPj8=" + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "requires": { + "arr-diff": "2.0.0", + "array-unique": "0.2.1", + "braces": "1.8.5", + "expand-brackets": "0.1.5", + "extglob": "0.3.2", + "filename-regex": "2.0.1", + "is-extglob": "1.0.0", + "is-glob": "2.0.1", + "kind-of": "3.2.2", + "normalize-path": "2.1.1", + "object.omit": "2.0.1", + "parse-glob": "3.0.4", + "regex-cache": "0.4.4" + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "requires": { + "bn.js": "4.11.8", + "brorand": "1.1.0" + } + }, + "minimalistic-assert": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", + "integrity": "sha1-cCvi3aazf0g2vLP121ZkG2Sh09M=" + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "1.1.8" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" }, "dependencies": { - "esprima": { - "version": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz", - "integrity": "sha1-n1V+CPw7TSbs6d00+Pv0drYlha0=" + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" } } }, - "esprima-fb": { - "version": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-3001.0001.0000-dev-harmony-fb.tgz", - "integrity": "sha1-t303q8046gt3Qmu4vCkizmtCZBE=" + "module-deps": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-5.0.1.tgz", + "integrity": "sha512-sigq/hm/L+Z5IGi1DDl0x2ptkw7S86aFh213QhPLD8v9Opv90IHzKIuWJrRa5bJ77DVKHco2CfIEuThcT/vDJA==", + "requires": { + "JSONStream": "1.3.2", + "browser-resolve": "1.11.2", + "cached-path-relative": "1.0.1", + "concat-stream": "1.6.0", + "defined": "1.0.0", + "detective": "5.0.2", + "duplexer2": "0.1.4", + "inherits": "2.0.3", + "parents": "1.0.1", + "readable-stream": "2.3.3", + "resolve": "1.5.0", + "stream-combiner2": "1.1.1", + "subarg": "1.0.0", + "through2": "2.0.3", + "xtend": "4.0.1" + }, + "dependencies": { + "concat-stream": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz", + "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=", + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.3", + "typedarray": "0.0.6" + } + } + } }, - "estraverse": { - "version": "https://registry.npmjs.org/estraverse/-/estraverse-1.5.1.tgz", - "integrity": "sha1-hno+jlip+EYYr7bC3bzZFrfLr3E=" + "nan": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", + "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=", + "optional": true }, - "esutils": { - "version": "https://registry.npmjs.org/esutils/-/esutils-1.0.0.tgz", - "integrity": "sha1-gVHTWOIMisx/t0XnRywAJf5JZXA=" + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "requires": { + "remove-trailing-separator": "1.1.0" + } }, - "source-map": { - "version": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", - "optional": true, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", "requires": { - "amdefine": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz" + "for-own": "0.1.5", + "is-extendable": "0.1.1" } - } - } - }, - "repeat-element": { - "version": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", - "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=" - }, - "repeat-string": { - "version": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" - }, - "repeating": { - "version": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "requires": { - "is-finite": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz" - } - }, - "replace-ext": { - "version": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", - "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=" - }, - "replace-requires": { - "version": "https://registry.npmjs.org/replace-requires/-/replace-requires-1.0.3.tgz", - "integrity": "sha1-c+hd8FurVi/oTfRdl9eMD6E6cEE=", - "requires": { - "detective": "https://registry.npmjs.org/detective/-/detective-4.1.1.tgz", - "has-require": "https://registry.npmjs.org/has-require/-/has-require-1.2.2.tgz", - "patch-text": "https://registry.npmjs.org/patch-text/-/patch-text-1.0.2.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" - }, - "dependencies": { - "detective": { - "version": "https://registry.npmjs.org/detective/-/detective-4.1.1.tgz", - "integrity": "sha1-nEusHp+4uzT38YyuCA6h0Dr/LNo=", + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=" + }, + "outpipe": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/outpipe/-/outpipe-1.1.1.tgz", + "integrity": "sha1-UM+GFjZeh+Ax4ppeyTOaPaRyX6I=", "requires": { - "acorn": "https://registry.npmjs.org/acorn/-/acorn-1.2.2.tgz", - "defined": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", - "escodegen": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz" + "shell-quote": "1.6.1" } }, - "has-require": { - "version": "https://registry.npmjs.org/has-require/-/has-require-1.2.2.tgz", - "integrity": "sha1-khZ1qxMNvZdo/I2o8ajiQt+kF3Q=", + "pako": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", + "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==" + }, + "parents": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz", + "integrity": "sha1-/t1NK/GTp3dF/nHjcdc8MwfZx1E=", "requires": { - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" + "path-platform": "0.11.15" } - } - } - }, - "resolve": { - "version": "https://registry.npmjs.org/resolve/-/resolve-1.2.0.tgz", - "integrity": "sha1-lYnD8vYUnRQXpAvswWY9tuxrwmw=" - }, - "resolve-dir": { - "version": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-0.1.1.tgz", - "integrity": "sha1-shklmlYC+sXFxJatiUpujMQwJh4=", - "requires": { - "expand-tilde": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-1.2.2.tgz", - "global-modules": "https://registry.npmjs.org/global-modules/-/global-modules-0.2.3.tgz" - } - }, - "resolve-url": { - "version": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" - }, - "right-align": { - "version": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", - "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", - "requires": { - "align-text": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz" - } - }, - "rimraf": { - "version": "https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz", - "integrity": "sha1-loAAk8vxoMhr2VtGJUZ1NcKd+gQ=", - "requires": { - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz" - } - }, - "ripemd160": { - "version": "https://registry.npmjs.org/ripemd160/-/ripemd160-1.0.1.tgz", - "integrity": "sha1-k6S71JQrxXS2mo+lfHHeEOzKfW4=" - }, - "saucelabs": { - "version": "https://registry.npmjs.org/saucelabs/-/saucelabs-1.3.0.tgz", - "integrity": "sha1-0kDoAJ33+ocwbsRXimm6O1xCT+4=", - "dev": true, - "requires": { - "https-proxy-agent": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-1.0.0.tgz" - } - }, - "sax": { - "version": "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz", - "integrity": "sha1-e45lYZCyKOgaZq6nSEgNgozS03o=" - }, - "seek-bzip": { - "version": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz", - "integrity": "sha1-z+kXyz0nS8/6x5J1ivUxc+sfq9w=", - "requires": { - "commander": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz" - } - }, - "semver": { - "version": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz", - "integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=" - }, - "semver-regex": { - "version": "https://registry.npmjs.org/semver-regex/-/semver-regex-1.0.0.tgz", - "integrity": "sha1-kqSWkGX5xwxpR1PVUkj8aPj2Usk=" - }, - "semver-truncate": { - "version": "https://registry.npmjs.org/semver-truncate/-/semver-truncate-1.1.2.tgz", - "integrity": "sha1-V/Qd5pcHpicJp+AQS6IRcQnqR+g=", - "requires": { - "semver": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz" - }, - "dependencies": { - "semver": { - "version": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", - "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=" - } - } - }, - "sequencify": { - "version": "https://registry.npmjs.org/sequencify/-/sequencify-0.0.7.tgz", - "integrity": "sha1-kM/xnQLgcCf9dn9erT57ldHnOAw=" - }, - "set-immediate-shim": { - "version": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=" - }, - "sha.js": { - "version": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.8.tgz", - "integrity": "sha1-NwaMLEdra69ALRSknGf1l5IfY08=", - "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" - } - }, - "shasum": { - "version": "https://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz", - "integrity": "sha1-5wEjENj0F/TetXEhUOVni4euVl8=", - "requires": { - "json-stable-stringify": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz", - "sha.js": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.8.tgz" - } - }, - "shebang-regex": { - "version": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" - }, - "shell-quote": { - "version": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", - "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", - "requires": { - "array-filter": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", - "array-map": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", - "array-reduce": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", - "jsonify": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz" - } - }, - "shelljs": { - "version": "https://registry.npmjs.org/shelljs/-/shelljs-0.3.0.tgz", - "integrity": "sha1-NZbmMHp4FUT1kfN9phg2DzHbV7E=", - "dev": true - }, - "sigmund": { - "version": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", - "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=" - }, - "signal-exit": { - "version": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "slash": { - "version": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" - }, - "source-map": { - "version": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", - "integrity": "sha1-dc449SvwczxafwwRjYEzSiu19BI=" - }, - "source-map-resolve": { - "version": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.3.1.tgz", - "integrity": "sha1-YQ9hIqRFuN1RU1oqcbeD38Ekh2E=", - "requires": { - "atob": "https://registry.npmjs.org/atob/-/atob-1.1.3.tgz", - "resolve-url": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "source-map-url": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.3.0.tgz", - "urix": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz" - } - }, - "source-map-support": { - "version": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.6.tgz", - "integrity": "sha1-MlUqpktFg5KoXqs7C17mFScWeus=", - "requires": { - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz" - } - }, - "source-map-url": { - "version": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.3.0.tgz", - "integrity": "sha1-fsrxO1e80J2opAxdJp2zN5nUqvk=" - }, - "source-mapper": { - "version": "https://registry.npmjs.org/source-mapper/-/source-mapper-2.0.0.tgz", - "integrity": "sha1-Z8pIx5R1gS2HRiqnqqey9e0NNOo=", - "dev": true, - "requires": { - "convert-source-map": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.3.0.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz" - } - }, - "sparkles": { - "version": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.0.tgz", - "integrity": "sha1-Gsu/tZJDbRC76PeFt8xvgoFQEsM=" - }, - "spawn-sync": { - "version": "https://registry.npmjs.org/spawn-sync/-/spawn-sync-1.0.15.tgz", - "integrity": "sha1-sAeZVX63+wyDdsKdROih6mfldHY=", - "dev": true, - "requires": { - "concat-stream": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", - "os-shim": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz" - } - }, - "spdx-correct": { - "version": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz", - "integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=", - "requires": { - "spdx-license-ids": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz" - } - }, - "spdx-expression-parse": { - "version": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz", - "integrity": "sha1-m98vIOH0DtRH++JzJmGR/O1RYmw=" - }, - "spdx-license-ids": { - "version": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz", - "integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=" - }, - "split2": { - "version": "https://registry.npmjs.org/split2/-/split2-0.2.1.tgz", - "integrity": "sha1-At2smtwD7Au3jBKC7Aecpuha6QA=", - "dev": true, - "requires": { - "through2": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz" - }, - "dependencies": { - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", - "dev": true, + "parse-asn1": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.0.tgz", + "integrity": "sha1-N8T5t+06tlx0gXtfJICTf7+XxxI=", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + "asn1.js": "4.9.2", + "browserify-aes": "1.1.1", + "create-hash": "1.1.3", + "evp_bytestokey": "1.0.3", + "pbkdf2": "3.0.14" } }, - "through2": { - "version": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", - "dev": true, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" + "glob-base": "0.3.0", + "is-dotfile": "1.0.3", + "is-extglob": "1.0.0", + "is-glob": "2.0.1" } - } - } - }, - "sprintf-js": { - "version": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" - }, - "squeak": { - "version": "https://registry.npmjs.org/squeak/-/squeak-1.3.0.tgz", - "integrity": "sha1-MwRQN7ZDiLVnZ0uEMiplIQc5FsM=", - "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "console-stream": "https://registry.npmjs.org/console-stream/-/console-stream-0.1.1.tgz", - "lpad-align": "https://registry.npmjs.org/lpad-align/-/lpad-align-1.1.0.tgz" - } - }, - "stat-mode": { - "version": "https://registry.npmjs.org/stat-mode/-/stat-mode-0.2.2.tgz", - "integrity": "sha1-5sgLYjEj19gM8TLOU480YokHJQI=" - }, - "stream-browserify": { - "version": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", - "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", - "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz" - } - }, - "stream-combiner2": { - "version": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", - "integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=", - "requires": { - "duplexer2": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz" - } - }, - "stream-consume": { - "version": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.0.tgz", - "integrity": "sha1-pB6tGm1ggc63n2WwYZAbbY89HQ8=" - }, - "stream-http": { - "version": "https://registry.npmjs.org/stream-http/-/stream-http-2.5.0.tgz", - "integrity": "sha1-WF7uUTIX7Zj+GZgX5zE7b3cqaAI=", - "requires": { - "builtin-status-codes": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-2.0.0.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz", - "to-arraybuffer": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" - } - }, - "stream-shift": { - "version": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", - "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=" - }, - "stream-splicer": { - "version": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-2.0.0.tgz", - "integrity": "sha1-G2O+Q4oTPktnHMGTUZdgAXWRDYM=", - "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz" - } - }, - "strict-uri-encode": { - "version": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=" - }, - "string_decoder": { - "version": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - }, - "strip-ansi": { - "version": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" - } - }, - "strip-bom": { - "version": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "requires": { - "is-utf8": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz" - } - }, - "strip-bom-stream": { - "version": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-1.0.0.tgz", - "integrity": "sha1-5xRDmFd9Uaa+0PoZlPoF9D/ZiO4=", - "requires": { - "first-chunk-stream": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz", - "strip-bom": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz" - } - }, - "strip-dirs": { - "version": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-1.1.1.tgz", - "integrity": "sha1-lgu9EoeETzl1pFWKoQOoJV4kVqA=", - "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "get-stdin": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "is-absolute": "https://registry.npmjs.org/is-absolute/-/is-absolute-0.1.7.tgz", - "is-natural-number": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-2.1.1.tgz", - "minimist": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "sum-up": "https://registry.npmjs.org/sum-up/-/sum-up-1.0.3.tgz" - }, - "dependencies": { - "is-absolute": { - "version": "https://registry.npmjs.org/is-absolute/-/is-absolute-0.1.7.tgz", - "integrity": "sha1-hHSREZ/MtftDYhfMc39/qtUPYD8=", + }, + "path-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", + "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-platform": { + "version": "0.11.15", + "resolved": "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz", + "integrity": "sha1-6GQhf3TDaFDwhSt43Hv31KVyG/I=" + }, + "pbkdf2": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.14.tgz", + "integrity": "sha512-gjsZW9O34fm0R7PaLHRJmLLVfSoesxztjPjE9o6R+qtVJij90ltg1joIovN9GKrRW3t1PzhDDG3UMEMFfZ+1wA==", "requires": { - "is-relative": "https://registry.npmjs.org/is-relative/-/is-relative-0.1.3.tgz" + "create-hash": "1.1.3", + "create-hmac": "1.1.6", + "ripemd160": "2.0.1", + "safe-buffer": "5.1.1", + "sha.js": "2.4.10" } }, - "is-relative": { - "version": "https://registry.npmjs.org/is-relative/-/is-relative-0.1.3.tgz", - "integrity": "sha1-kF/uiuhvRbPsYUvDwVyGnfCHboI=" + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=" }, - "minimist": { - "version": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - } - } - }, - "strip-eof": { - "version": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" - }, - "strip-indent": { - "version": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "requires": { - "get-stdin": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz" - } - }, - "strip-json-comments": { - "version": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz", - "integrity": "sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=" - }, - "strip-outer": { - "version": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.0.tgz", - "integrity": "sha1-qsC6YNLpDF1PJ1/Yhp/ZotMQ/7g=", - "requires": { - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" - } - }, - "subarg": { - "version": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", - "integrity": "sha1-9izxdYHplrSPyWVpn1TAauJouNI=", - "requires": { - "minimist": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz" - }, - "dependencies": { - "minimist": { - "version": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - } - } - }, - "sum-up": { - "version": "https://registry.npmjs.org/sum-up/-/sum-up-1.0.3.tgz", - "integrity": "sha1-HGYfZnBX9jvLeHWqFDi8FiUlFW4=", - "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz" - } - }, - "supports-color": { - "version": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" - }, - "svgo": { - "version": "https://registry.npmjs.org/svgo/-/svgo-0.7.1.tgz", - "integrity": "sha1-KHMg/tlyywl+csK7FoX5b+CPgDQ=", - "requires": { - "coa": "https://registry.npmjs.org/coa/-/coa-1.0.1.tgz", - "colors": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "csso": "https://registry.npmjs.org/csso/-/csso-2.2.1.tgz", - "js-yaml": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.6.1.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "sax": "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz", - "whet.extend": "https://registry.npmjs.org/whet.extend/-/whet.extend-0.9.9.tgz" - } - }, - "symbol-observable": { - "version": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.4.tgz", - "integrity": "sha1-Kb9hXUqnEhvdiYsi1LP5vE4qoD0=" - }, - "syntax-error": { - "version": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.1.6.tgz", - "integrity": "sha1-tFSXBtOGzBwdx8JCPxhXm2yt5xA=", - "requires": { - "acorn": "https://registry.npmjs.org/acorn/-/acorn-2.7.0.tgz" - }, - "dependencies": { - "acorn": { - "version": "https://registry.npmjs.org/acorn/-/acorn-2.7.0.tgz", - "integrity": "sha1-q259nYhqrKiwhbwzEreaGYQz8Oc=" - } - } - }, - "tar-stream": { - "version": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.2.tgz", - "integrity": "sha1-+8bG6DwaGdTLSMfZYXH8JI7/x78=", - "requires": { - "bl": "https://registry.npmjs.org/bl/-/bl-1.1.2.tgz", - "end-of-stream": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.1.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" - }, - "dependencies": { - "bl": { - "version": "https://registry.npmjs.org/bl/-/bl-1.1.2.tgz", - "integrity": "sha1-/cqHGplxOqANGeO7ukHER4emU5g=", + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "public-encrypt": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.0.tgz", + "integrity": "sha1-OfaZ86RlYN1eusvKaTyvfGXBjMY=", "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz" + "bn.js": "4.11.8", + "browserify-rsa": "4.0.1", + "create-hash": "1.1.3", + "parse-asn1": "5.1.0", + "randombytes": "2.0.6" + } + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" + }, + "randomatic": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz", + "integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==", + "requires": { + "is-number": "3.0.0", + "kind-of": "4.0.0" }, "dependencies": { - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "3.2.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "process-nextick-args": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "util-deprecate": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" + "is-buffer": "1.1.6" } } } }, - "end-of-stream": { - "version": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.1.0.tgz", - "integrity": "sha1-6TUyWLqpEIll78QcsO+K3i88+wc=", + "randombytes": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", + "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", "requires": { - "once": "https://registry.npmjs.org/once/-/once-1.3.3.tgz" + "safe-buffer": "5.1.1" } }, - "once": { - "version": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", - "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", + "read-only-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz", + "integrity": "sha1-JyT9aoET1zdkrCiNQ4YnDB2/F/A=", "requires": { - "wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + "readable-stream": "2.3.3" } - } - } - }, - "tempfile": { - "version": "https://registry.npmjs.org/tempfile/-/tempfile-1.1.1.tgz", - "integrity": "sha1-W8xOrsxKsscH2LwR2ZzMmiyyh/I=", - "requires": { - "os-tmpdir": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "uuid": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz" - } - }, - "ternary": { - "version": "https://registry.npmjs.org/ternary/-/ternary-1.0.0.tgz", - "integrity": "sha1-RXAnJWCMlJnUapYQ6bDkn/JveJ4=" - }, - "through": { - "version": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" - }, - "through2": { - "version": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", - "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" - } - }, - "through2-concurrent": { - "version": "https://registry.npmjs.org/through2-concurrent/-/through2-concurrent-1.1.1.tgz", - "integrity": "sha1-EctOpMnjG8puTB5tukjRxyjDUks=", - "requires": { - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz" - } - }, - "through2-filter": { - "version": "https://registry.npmjs.org/through2-filter/-/through2-filter-2.0.0.tgz", - "integrity": "sha1-YLxVoNrLdghdsfna6Zq0P4PWIuw=", - "requires": { - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" - } - }, - "tildify": { - "version": "https://registry.npmjs.org/tildify/-/tildify-1.2.0.tgz", - "integrity": "sha1-3OwD9V3Km3qj5bBPIYF+tW5jWIo=", - "requires": { - "os-homedir": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz" - } - }, - "time-stamp": { - "version": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.0.1.tgz", - "integrity": "sha1-n0vSNVnJNllm8zAtu6KwfGuZsVE=" - }, - "timed-out": { - "version": "https://registry.npmjs.org/timed-out/-/timed-out-3.1.0.tgz", - "integrity": "sha1-Q7mLFLtxLJFhwo9NwfMGjWegTsI=" - }, - "timers-browserify": { - "version": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz", - "integrity": "sha1-ycWLV1voQHN1y14kYtrO50NZ9B0=", - "requires": { - "process": "https://registry.npmjs.org/process/-/process-0.11.9.tgz" - } - }, - "to-absolute-glob": { - "version": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-0.1.1.tgz", - "integrity": "sha1-HN+kcqnvUMI57maZm2YsoOs5k38=", - "requires": { - "extend-shallow": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz" - } - }, - "to-arraybuffer": { - "version": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=" - }, - "to-fast-properties": { - "version": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.2.tgz", - "integrity": "sha1-8/XAw7pymafvmUJ+RGMyV63kMyA=" - }, - "to-iso-string": { - "version": "https://registry.npmjs.org/to-iso-string/-/to-iso-string-0.0.2.tgz", - "integrity": "sha1-TcGeZk38y+Jb2NtQiwDG2hWCVdE=", - "dev": true - }, - "transformify": { - "version": "https://registry.npmjs.org/transformify/-/transformify-0.1.2.tgz", - "integrity": "sha1-mk9CoVRDPdcnuAV1Qoo8nlSJ6/E=", - "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz" - }, - "dependencies": { - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" }, "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" } - } - } - }, - "trim-newlines": { - "version": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=" - }, - "trim-repeated": { - "version": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz", - "integrity": "sha1-42RqLqTokTEr9+rObPsFOAvAHCE=", - "requires": { - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" - } - }, - "tty-browserify": { - "version": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=" - }, - "tunnel-agent": { - "version": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", - "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=" - }, - "type-check": { - "version": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "requires": { - "prelude-ls": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz" - } - }, - "typedarray": { - "version": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" - }, - "ua-parser-js": { - "version": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.12.tgz", - "integrity": "sha1-BMgamb3V3FImPqKdJMa/jUgYpLs=" - }, - "uglify-js": { - "version": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.7.5.tgz", - "integrity": "sha1-RhLAx7qu4rp8SH3kkErhIgefLKg=", - "requires": { - "async": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", - "uglify-to-browserify": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "yargs": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz" - } - }, - "uglify-save-license": { - "version": "https://registry.npmjs.org/uglify-save-license/-/uglify-save-license-0.4.1.tgz", - "integrity": "sha1-lXJsF8xv0XHDYX479NjYKqjEzOE=" - }, - "uglify-to-browserify": { - "version": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=" - }, - "umd": { - "version": "https://registry.npmjs.org/umd/-/umd-3.0.1.tgz", - "integrity": "sha1-iuVW4RAR9jwllnCKiDclnwGz1g4=" - }, - "unc-path-regex": { - "version": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", - "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=" - }, - "unique-stream": { - "version": "https://registry.npmjs.org/unique-stream/-/unique-stream-1.0.0.tgz", - "integrity": "sha1-1ZpKdUJ0R9mqbJHnAmP40mpLEEs=" - }, - "unzip-response": { - "version": "https://registry.npmjs.org/unzip-response/-/unzip-response-1.0.2.tgz", - "integrity": "sha1-uYTwh3/AqJwsdzzB73tbIytbBv4=" - }, - "urix": { - "version": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" - }, - "url": { - "version": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "requires": { - "punycode": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "querystring": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz" - }, - "dependencies": { - "punycode": { - "version": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" - } - } - }, - "url-parse-lax": { - "version": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", - "requires": { - "prepend-http": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz" - } - }, - "url-regex": { - "version": "https://registry.npmjs.org/url-regex/-/url-regex-3.2.0.tgz", - "integrity": "sha1-260eDJ4p4QXdCx8J9oYvf9tIJyQ=", - "requires": { - "ip-regex": "https://registry.npmjs.org/ip-regex/-/ip-regex-1.0.3.tgz" - } - }, - "user-home": { - "version": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz", - "integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=" - }, - "util": { - "version": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" - }, - "dependencies": { - "inherits": { - "version": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" - } - } - }, - "util-deprecate": { - "version": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "uuid": { - "version": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", - "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=" - }, - "v8flags": { - "version": "https://registry.npmjs.org/v8flags/-/v8flags-2.0.11.tgz", - "integrity": "sha1-vKjzDw1tYGEswsAGQeaWLUKuaIE=", - "requires": { - "user-home": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz" - } - }, - "vali-date": { - "version": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", - "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=" - }, - "validate-npm-package-license": { - "version": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz", - "integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=", - "requires": { - "spdx-correct": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz", - "spdx-expression-parse": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz" - } - }, - "vinyl": { - "version": "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz", - "integrity": "sha1-sEVbOPxeDPMNQyUTLkYZcMIJHN4=", - "requires": { - "clone": "https://registry.npmjs.org/clone/-/clone-1.0.2.tgz", - "clone-stats": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", - "replace-ext": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz" - } - }, - "vinyl-assign": { - "version": "https://registry.npmjs.org/vinyl-assign/-/vinyl-assign-1.2.1.tgz", - "integrity": "sha1-TRmIkbVRWRHXcajNnFSApGoHSkU=", - "requires": { - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.2.tgz" - } - }, - "vinyl-buffer": { - "version": "https://registry.npmjs.org/vinyl-buffer/-/vinyl-buffer-1.0.0.tgz", - "integrity": "sha1-ygZ+oIQx1QdyKx3lCD9gJhbrwjQ=", - "requires": { - "bl": "https://registry.npmjs.org/bl/-/bl-0.9.5.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz" - }, - "dependencies": { - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "readdirp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", + "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + "graceful-fs": "4.1.11", + "minimatch": "3.0.4", + "readable-stream": "2.3.3", + "set-immediate-shim": "1.0.1" } }, - "through2": { - "version": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" + "is-equal-shallow": "0.1.3" } - } - } - }, - "vinyl-bufferstream": { - "version": "https://registry.npmjs.org/vinyl-bufferstream/-/vinyl-bufferstream-1.0.1.tgz", - "integrity": "sha1-BTeGn1gO/6TKRay0dXnkuf5jCBo=", - "requires": { - "bufferstreams": "https://registry.npmjs.org/bufferstreams/-/bufferstreams-1.0.1.tgz" - } - }, - "vinyl-fs": { - "version": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-0.3.14.tgz", - "integrity": "sha1-mmhRzhysHBzqX+hsCTHWIMLPqeY=", - "requires": { - "defaults": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "glob-stream": "https://registry.npmjs.org/glob-stream/-/glob-stream-3.1.18.tgz", - "glob-watcher": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-0.0.6.tgz", - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.11.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "strip-bom": "https://registry.npmjs.org/strip-bom/-/strip-bom-1.0.0.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "vinyl": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz" - }, - "dependencies": { - "clone": { - "version": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", - "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=" }, - "graceful-fs": { - "version": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.11.tgz", - "integrity": "sha1-dhPHeKGv6mLyXGMKCG1/Osu92Bg=", + "repeat-element": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", + "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=" + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "resolve": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.5.0.tgz", + "integrity": "sha512-hgoSGrc3pjzAPHNBg+KnFcK2HwlHTs/YrAGUr6qgTVUZmXv1UEXXl0bZNBKMA9fud6lRYFdPGz0xXxycPzmmiw==", "requires": { - "natives": "https://registry.npmjs.org/natives/-/natives-1.1.0.tgz" + "path-parse": "1.0.5" } }, - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + "ripemd160": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", + "integrity": "sha1-D0WEKVxTo2KK9+bXmsohzlfRxuc=", + "requires": { + "hash-base": "2.0.2", + "inherits": "2.0.3" + } }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=" + }, + "sha.js": { + "version": "2.4.10", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.10.tgz", + "integrity": "sha512-vnwmrFDlOExK4Nm16J2KMWHLrp14lBrjxMxBJpu++EnsuBmpiYaM/MEs46Vxxm/4FvdP5yTwuCTO9it5FSjrqA==", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + "inherits": "2.0.3", + "safe-buffer": "5.1.1" } }, - "strip-bom": { - "version": "https://registry.npmjs.org/strip-bom/-/strip-bom-1.0.0.tgz", - "integrity": "sha1-hbiGLzhEtabV7IRnqTWYFzo295Q=", + "shasum": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz", + "integrity": "sha1-5wEjENj0F/TetXEhUOVni4euVl8=", "requires": { - "first-chunk-stream": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz", - "is-utf8": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz" + "json-stable-stringify": "0.0.1", + "sha.js": "2.4.10" } }, - "through2": { - "version": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "shell-quote": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", + "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" + "array-filter": "0.0.1", + "array-map": "0.0.0", + "array-reduce": "0.0.0", + "jsonify": "0.0.0" } }, - "vinyl": { - "version": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", - "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "stream-browserify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", + "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", "requires": { - "clone": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", - "clone-stats": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz" + "inherits": "2.0.3", + "readable-stream": "2.3.3" } - } - } - }, - "vinyl-source-stream": { - "version": "https://registry.npmjs.org/vinyl-source-stream/-/vinyl-source-stream-1.1.0.tgz", - "integrity": "sha1-RMvlEIIFJ53rDFZTwJSiiHk4sas=", - "requires": { - "through2": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "vinyl": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz" - }, - "dependencies": { - "clone": { - "version": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", - "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=" }, - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + "stream-combiner2": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", + "integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=", + "requires": { + "duplexer2": "0.1.4", + "readable-stream": "2.3.3" + } }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "stream-http": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.0.tgz", + "integrity": "sha512-sZOFxI/5xw058XIRHl4dU3dZ+TTOIGJR78Dvo0oEAejIt4ou27k+3ne1zYmCV+v7UucbxIFQuOgnkTVHh8YPnw==", + "requires": { + "builtin-status-codes": "3.0.0", + "inherits": "2.0.3", + "readable-stream": "2.3.3", + "to-arraybuffer": "1.0.1", + "xtend": "4.0.1" + } + }, + "stream-splicer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-2.0.0.tgz", + "integrity": "sha1-G2O+Q4oTPktnHMGTUZdgAXWRDYM=", + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.3" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "subarg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", + "integrity": "sha1-9izxdYHplrSPyWVpn1TAauJouNI=", + "requires": { + "minimist": "1.2.0" + } + }, + "syntax-error": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.3.0.tgz", + "integrity": "sha1-HtkmbE1AvnXcVb+bsct3Biu5bKE=", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + "acorn": "4.0.13" } }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + }, "through2": { - "version": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", - "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", + "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" + "readable-stream": "2.3.3", + "xtend": "4.0.1" } }, - "vinyl": { - "version": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", - "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", + "timers-browserify": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz", + "integrity": "sha1-ycWLV1voQHN1y14kYtrO50NZ9B0=", + "requires": { + "process": "0.11.10" + } + }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=" + }, + "tty-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", + "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + }, + "umd": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/umd/-/umd-3.0.1.tgz", + "integrity": "sha1-iuVW4RAR9jwllnCKiDclnwGz1g4=" + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" + } + } + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "requires": { + "inherits": "2.0.1" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + } + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "vm-browserify": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", + "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", "requires": { - "clone": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", - "clone-stats": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz" + "indexof": "0.0.1" } + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" } } }, - "vinyl-sourcemaps-apply": { - "version": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz", - "integrity": "sha1-q2VJ1h0XLCsbh75cUI0jnI74dwU=", - "requires": { - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz" - } - }, - "vm-browserify": { - "version": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", - "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", - "requires": { - "indexof": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz" - } - }, - "ware": { - "version": "https://registry.npmjs.org/ware/-/ware-1.3.0.tgz", - "integrity": "sha1-0bFPOdLiy0q4xAmPdW/ksWTkc9Q=", - "requires": { - "wrap-fn": "https://registry.npmjs.org/wrap-fn/-/wrap-fn-0.1.5.tgz" - } - }, - "warning": { - "version": "https://registry.npmjs.org/warning/-/warning-2.1.0.tgz", - "integrity": "sha1-ISINnGOvx3qMkhEeARr3Bc4MaQE=", - "requires": { - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.0.tgz" - } - }, - "watchify": { - "version": "https://registry.npmjs.org/watchify/-/watchify-3.8.0.tgz", - "integrity": "sha1-pcrMNRfKHmN9ewr3RTdcr7WX1rs=", - "requires": { - "anymatch": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.0.tgz", - "browserify": "https://registry.npmjs.org/browserify/-/browserify-13.1.1.tgz", - "chokidar": "https://registry.npmjs.org/chokidar/-/chokidar-1.6.1.tgz", - "defined": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", - "outpipe": "https://registry.npmjs.org/outpipe/-/outpipe-1.1.1.tgz", - "through2": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" - } - }, "waypoints": { - "version": "https://registry.npmjs.org/waypoints/-/waypoints-4.0.1.tgz", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/waypoints/-/waypoints-4.0.1.tgz", "integrity": "sha1-CZeaBXOBCylifLpDZqKEoGLsacg=" }, - "whatwg-fetch": { - "version": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.1.tgz", - "integrity": "sha1-B4uUYbvpHOpzy86LsSKgX56St3I=" - }, - "when": { - "version": "https://registry.npmjs.org/when/-/when-3.7.7.tgz", - "integrity": "sha1-q6A/w7tzbWyIsJHQE9io5ZDYRxg=" - }, - "whet.extend": { - "version": "https://registry.npmjs.org/whet.extend/-/whet.extend-0.9.9.tgz", - "integrity": "sha1-+HfVv2SMl+WqVC+twW1qJZucEaE=" - }, - "which": { - "version": "https://registry.npmjs.org/which/-/which-1.2.12.tgz", - "integrity": "sha1-3me15FAmnxlJCe8j7OTr5Bb6EZI=", - "requires": { - "isexe": "https://registry.npmjs.org/isexe/-/isexe-1.1.2.tgz" - } - }, - "window-size": { - "version": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=" - }, - "wordwrap": { - "version": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" - }, - "wrap-fn": { - "version": "https://registry.npmjs.org/wrap-fn/-/wrap-fn-0.1.5.tgz", - "integrity": "sha1-8htuQQFv9KfjFyDbxjoJAWvfmEU=", - "requires": { - "co": "https://registry.npmjs.org/co/-/co-3.1.0.tgz" - } - }, - "wrappy": { - "version": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "xtend": { - "version": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" - }, - "yallist": { - "version": "https://registry.npmjs.org/yallist/-/yallist-2.0.0.tgz", - "integrity": "sha1-MGxUODXwnuGkyyO3vOmrNByRzdQ=" - }, - "yargs": { - "version": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", - "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", - "requires": { - "camelcase": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "cliui": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "decamelize": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "window-size": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz" - }, - "dependencies": { - "camelcase": { - "version": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=" - } - } - }, - "yauzl": { - "version": "https://registry.npmjs.org/yauzl/-/yauzl-2.7.0.tgz", - "integrity": "sha1-4h2EeGi0lvwp6uwj7of90z6bK84=", - "requires": { - "buffer-crc32": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "fd-slicer": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz" - } - }, - "zopflipng-bin": { - "version": "https://registry.npmjs.org/zopflipng-bin/-/zopflipng-bin-3.0.1.tgz", - "integrity": "sha1-mIIDgQ/RUuTtdfRHa+DN8qrbp1g=", - "requires": { - "bin-build": "https://registry.npmjs.org/bin-build/-/bin-build-2.2.0.tgz", - "bin-wrapper": "https://registry.npmjs.org/bin-wrapper/-/bin-wrapper-3.0.2.tgz", - "logalot": "https://registry.npmjs.org/logalot/-/logalot-2.1.0.tgz" - } - }, "zxcvbn": { - "version": "https://registry.npmjs.org/zxcvbn/-/zxcvbn-4.4.1.tgz", - "integrity": "sha1-I4Gq3X8HiiWoayFTJ1YmR7gKqKw=" + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/zxcvbn/-/zxcvbn-4.4.2.tgz", + "integrity": "sha1-KOwXzwl0PtyrBW3dixsGJizHPDA=" } } } diff --git a/frontend/src/components/user-menu/guest-nav.js b/frontend/src/components/user-menu/guest-nav.js index 58cfffed96..c57913daeb 100644 --- a/frontend/src/components/user-menu/guest-nav.js +++ b/frontend/src/components/user-menu/guest-nav.js @@ -37,7 +37,7 @@ export class GuestMenu extends React.Component {
- + {gettext("Register")} @@ -62,7 +62,7 @@ export class GuestNav extends GuestMenu { > {gettext("Sign in")} - + {gettext("Register")}
diff --git a/frontend/style/flavor/buttons.less b/frontend/style/flavor/buttons.less index 1d3af85deb..4cfdd5361f 100644 --- a/frontend/style/flavor/buttons.less +++ b/frontend/style/flavor/buttons.less @@ -195,40 +195,41 @@ } -// special buttons: sign in and register -.btn-sign-in { - border-radius: @btn-sign-in-radius; - - .misago-btn-outline( - @btn-sign-in-color, - @btn-sign-in-bg, - @btn-sign-in-border, - - @btn-sign-in-hover-color, - @btn-sign-in-hover-bg, - @btn-sign-in-hover-border, - - @btn-sign-in-active-color, - @btn-sign-in-active-bg, - @btn-sign-in-active-border - ); -} - +// sign in and register buttons in navbar +.navbar-misago { + .btn-sign-in { + border-radius: @navbar-btn-sign-in-radius; + + .misago-btn-outline( + @navbar-btn-sign-in-color, + @navbar-btn-sign-in-bg, + @navbar-btn-sign-in-border, + + @navbar-btn-sign-in-hover-color, + @navbar-btn-sign-in-hover-bg, + @navbar-btn-sign-in-hover-border, + + @navbar-btn-sign-in-active-color, + @navbar-btn-sign-in-active-bg, + @navbar-btn-sign-in-active-border + ); + } -.btn-register { - border-radius: @btn-register-radius; + .btn-register { + border-radius: @navbar-btn-register-radius; - .misago-btn-outline( - @btn-register-color, - @btn-register-bg, - @btn-register-border, + .misago-btn-outline( + @navbar-btn-register-color, + @navbar-btn-register-bg, + @navbar-btn-register-border, - @btn-register-hover-color, - @btn-register-hover-bg, - @btn-register-hover-border, + @navbar-btn-register-hover-color, + @navbar-btn-register-hover-bg, + @navbar-btn-register-hover-border, - @btn-register-active-color, - @btn-register-active-bg, - @btn-register-active-border - ); + @navbar-btn-register-active-color, + @navbar-btn-register-active-bg, + @navbar-btn-register-active-border + ); + } } \ No newline at end of file diff --git a/frontend/style/flavor/dropdowns.less b/frontend/style/flavor/dropdowns.less index 970fa8a81e..ce2c63a7fd 100644 --- a/frontend/style/flavor/dropdowns.less +++ b/frontend/style/flavor/dropdowns.less @@ -11,31 +11,10 @@ // Navbar dropdown -.navbar-misago .user-dropdown, -.mobile-dropdown.open .dropdown-menu { - background: @dropdown-inverse-bg; - - a, a:link, a:visited, .btn-link { - color: @dropdown-inverse-link-color; - } - - a:hover, a:focus, a:active, - .btn-link:hover, .btn-link:focus, .btn-link:active { - background: @dropdown-inverse-link-hover-bg; - - color: @dropdown-inverse-link-hover-color; - } - - .divider { - background-color: @dropdown-inverse-divider-bg; - } -} - .user-dropdown .dropdown-header { strong { display: block; - color: @dropdown-inverse-header-color; font-size: @font-size-large; font-weight: 300; } @@ -43,7 +22,6 @@ .user-stats { margin-top: @line-height-computed / 2; - color: @dropdown-inverse-subheader-color; font-size: @font-size-small; .material-icon { @@ -62,14 +40,6 @@ .user-dropdown .guest-preview { padding-bottom: @padding-large-vertical; - - h4 { - color: @dropdown-inverse-header-color; - } - - p { - color: @dropdown-inverse-subheader-color; - } } .user-dropdown .badge { diff --git a/frontend/style/flavor/variables.less b/frontend/style/flavor/variables.less index b0f5f654e4..85834cf2d8 100644 --- a/frontend/style/flavor/variables.less +++ b/frontend/style/flavor/variables.less @@ -141,34 +141,35 @@ @navbar-inverse-brand-hover-bg: transparent; // Sign in button -@btn-sign-in-color: #e0e0e0; -@btn-sign-in-border: transparent; -@btn-sign-in-bg: transparent; +@navbar-btn-sign-in-color: #e0e0e0; +@navbar-btn-sign-in-border: transparent; +@navbar-btn-sign-in-bg: transparent; -@btn-sign-in-hover-color: #fff; -@btn-sign-in-hover-border: #666060; -@btn-sign-in-hover-bg: #666060; +@navbar-btn-sign-in-hover-color: #fff; +@navbar-btn-sign-in-hover-border: #666060; +@navbar-btn-sign-in-hover-bg: #666060; -@btn-sign-in-active-color: #fff; -@btn-sign-in-active-border: #424242; -@btn-sign-in-active-bg: #424242; +@navbar-btn-sign-in-active-color: #fff; +@navbar-btn-sign-in-active-border: #424242; +@navbar-btn-sign-in-active-bg: #424242; -@btn-sign-in-radius: 100px; +@navbar-btn-sign-in-radius: 100px; // Register button -@btn-register-color: #e0e0e0; -@btn-register-border: #757575; -@btn-register-bg: transparent; +@navbar-btn-register-color: #e0e0e0; +@navbar-btn-register-border: #757575; +@navbar-btn-register-bg: transparent; -@btn-register-hover-color: #212121; -@btn-register-hover-border: #fff; -@btn-register-hover-bg: #fff; +@navbar-btn-register-hover-color: #212121; +@navbar-btn-register-hover-border: #fff; +@navbar-btn-register-hover-bg: #fff; -@btn-register-active-color: #212121; -@btn-register-active-border: #bdbdbd; -@btn-register-active-bg: #bdbdbd; +@navbar-btn-register-active-color: #212121; +@navbar-btn-register-active-border: #bdbdbd; +@navbar-btn-register-active-bg: #bdbdbd; + +@navbar-btn-register-radius: 100px; -@btn-register-radius: 100px; //== Page header // @@ -296,22 +297,6 @@ @dropdown-link-active-bg: @component-active-bg; -//** Background for the dropdown menu. -@dropdown-inverse-bg: lighten(@navbar-inverse-bg, 5%); -//** Divider color for between dropdown items. -@dropdown-inverse-divider-bg: @gray-light; - -//** Dropdown link text color. -@dropdown-inverse-link-color: @gray-lighter; -//** Hover color for dropdown links. -@dropdown-inverse-link-hover-color: @component-active-color; -//** Hover background for dropdown links. -@dropdown-inverse-link-hover-bg: @component-active-bg; - -//** Text color for headers within dropdown menus. -@dropdown-inverse-header-color: #fff; -@dropdown-inverse-subheader-color: darken(#fff, 15%); - //** Default button in inversed dropdown @dropdown-btn-default-color: darken(#fff, 30%); @dropdown-btn-default-border: darken(#fff, 30%); diff --git a/frontend/style/misago/dropdowns.less b/frontend/style/misago/dropdowns.less index 56009fbce0..e9a4dc2b86 100644 --- a/frontend/style/misago/dropdowns.less +++ b/frontend/style/misago/dropdowns.less @@ -92,31 +92,18 @@ } -// Always displayed on mobile dropdown -.mobile-dropdown, .compact-nav { - position: static; - margin: 0px; - overflow: auto; - - &.open { - margin-bottom: @line-height-computed; - } -} - -.compact-nav.open { - margin-top: @line-height-computed * -1; +// Navbar's dropdown +.mobile-dropdown { + position: relative; } .mobile-dropdown.open>.dropdown-menu, .compact-nav.open>.dropdown-menu { border: none; border-radius: 0; - .box-shadow(none); display: block; margin: 0px; width: 100%; - - position: static; } diff --git a/frontend/style/misago/navbar.less b/frontend/style/misago/navbar.less index 780fabf6ec..6a0ec26ce4 100644 --- a/frontend/style/misago/navbar.less +++ b/frontend/style/misago/navbar.less @@ -74,7 +74,6 @@ } } - // Pull Guest and User menus to right .nav-guest, .nav-user { float: right; diff --git a/misago/static/misago/css/misago.css b/misago/static/misago/css/misago.css index a6a8d4a8d6..b48a2fdb88 100644 --- a/misago/static/misago/css/misago.css +++ b/misago/static/misago/css/misago.css @@ -1 +1 @@ -/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */.btn,.caret,img{vertical-align:middle}hr,img{border:0}body,figure{margin:0}.img-thumbnail,.table,label{max-width:100%}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.pre-scrollable{max-height:340px}.alerts-snackbar,.form-control-feedback,a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}b,optgroup,strong{font-weight:700}dfn{font-style:italic}h1{margin:.67em 0}mark{background:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}svg:not(:root){overflow:hidden}hr{box-sizing:content-box;height:0}pre,textarea{overflow:auto}code,kbd,pre,samp{font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{blockquote,img,pre,tr{page-break-inside:avoid}*,:after,:before{background:0 0!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}blockquote,pre{border:1px solid #999}thead{display:table-header-group}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}}.btn,.btn-danger.active,.btn-danger:active,.btn-default.active,.btn-default:active,.btn-info.active,.btn-info:active,.btn-primary.active,.btn-primary:active,.btn-warning.active,.btn-warning:active,.btn.active,.btn:active,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover,.form-control,.navbar-toggle,.open>.dropdown-toggle.btn-danger,.open>.dropdown-toggle.btn-default,.open>.dropdown-toggle.btn-info,.open>.dropdown-toggle.btn-primary,.open>.dropdown-toggle.btn-warning{background-image:none}.img-thumbnail,body{background-color:#fff}*,:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:transparent}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#212121}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#651fff;text-decoration:none}a:focus,a:hover{color:#4100d2;text-decoration:underline}a:focus{outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.img-responsive{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.42857143;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role=button]{cursor:pointer}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#777}.h1,.h2,.h3,h1,h2,h3{margin-top:20px;margin-bottom:10px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small{font-size:65%}.h4,.h5,.h6,h4,h5,h6{margin-top:10px;margin-bottom:10px}dl,ol,ul{margin-top:0}.lead,address,dl{margin-bottom:20px}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-size:75%}.h1,h1{font-size:36px}.h2,h2{font-size:30px}.h3,h3{font-size:24px}.h4,h4{font-size:18px}.h5,h5{font-size:14px}.h6,h6{font-size:12px}p{margin:0 0 10px}.lead{font-size:16px;font-weight:300;line-height:1.4}blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child,ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt,kbd kbd,label{font-weight:700}address,blockquote .small,blockquote footer,blockquote small,dd,dt,pre{line-height:1.42857143}@media (min-width:768px){.lead{font-size:21px}}.small,small{font-size:85%}.mark,mark{background-color:#fcf8e3;padding:.2em}.list-inline,.list-unstyled{padding-left:0;list-style:none}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#651fff}a.text-primary:focus,a.text-primary:hover{color:#4900eb}.text-success{color:#3c763d}a.text-success:focus,a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:focus,a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:focus,a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:focus,a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#651fff}a.bg-primary:focus,a.bg-primary:hover{background-color:#4900eb}.bg-success{background-color:#dff0d8}a.bg-success:focus,a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:focus,a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:focus,a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:focus,a.bg-danger:hover{background-color:#e4b9b9}pre code,table{background-color:transparent}.page-header{padding-bottom:9px}ol,ul{margin-bottom:10px}.list-inline{margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dd{margin-left:0}@media (min-width:700px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;color:#777}legend,pre{display:block;color:#333}blockquote .small:before,blockquote footer:before,blockquote small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}code,kbd{padding:2px 4px;font-size:90%}caption,th{text-align:left}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:''}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after{content:'\00A0 \2014'}address{font-style:normal}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{color:#fff;background-color:#333;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;box-shadow:none}pre{padding:9.5px;margin:0 0 10px;font-size:13px;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}.container,.container-fluid{margin-right:auto;margin-left:auto}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;border-radius:0}.container,.container-fluid{padding-left:15px;padding-right:15px}.badge,.btn,.dropdown-header,.input-group-btn,.label,.material-icon{white-space:nowrap}.pre-scrollable{overflow-y:scroll}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.row{margin-left:-15px;margin-right:-15px}.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}caption{padding-top:8px;padding-bottom:8px;color:#777}.table{width:100%;margin-bottom:20px}.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered,.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #ddd}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover,.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}table col[class*=col-]{position:static;float:none;display:table-column}table td[class*=col-],table th[class*=col-]{position:static;float:none;display:table-cell}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#dff0d8}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#d9edf7}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#fcf8e3}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#f2dede}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.table-responsive{overflow-x:auto;min-height:.01%}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset,legend{padding:0;border:0}fieldset{margin:0;min-width:0}legend{width:100%;margin-bottom:20px;font-size:21px;line-height:inherit;border-bottom:1px solid #e5e5e5}label{display:inline-block;margin-bottom:5px}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:none}input[type=checkbox],input[type=radio]{margin:4px 0 0;margin-top:1px\9;line-height:normal}.form-control,output{font-size:14px;line-height:1.42857143;color:#555;display:block}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=file]:focus,input[type=checkbox]:focus,input[type=radio]:focus{outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}output{padding-top:7px}.form-control{width:100%;height:34px;padding:6px 12px;background-color:#fff;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.has-success .checkbox,.has-success .checkbox-inline,.has-success .control-label,.has-success .form-control-feedback,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.checkbox label,.has-success.checkbox-inline label,.has-success.radio label,.has-success.radio-inline label{color:#3c763d}.form-control::-ms-expand{border:0;background-color:transparent}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date].form-control,input[type=time].form-control,input[type=datetime-local].form-control,input[type=month].form-control{line-height:34px}.input-group-sm input[type=date],.input-group-sm input[type=time],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],input[type=date].input-sm,input[type=time].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm{line-height:30px}.input-group-lg input[type=date],.input-group-lg input[type=time],.input-group-lg input[type=datetime-local],.input-group-lg input[type=month],input[type=date].input-lg,input[type=time].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg{line-height:46px}}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.checkbox label,.radio label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox],.radio input[type=radio],.radio-inline input[type=radio]{position:absolute;margin-left:-20px;margin-top:4px\9}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:400;cursor:pointer}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}.checkbox-inline.disabled,.checkbox.disabled label,.radio-inline.disabled,.radio.disabled label,fieldset[disabled] .checkbox label,fieldset[disabled] .checkbox-inline,fieldset[disabled] .radio label,fieldset[disabled] .radio-inline,fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}.form-control-static{padding-top:7px;padding-bottom:7px;margin-bottom:0;min-height:34px}.form-control-static.input-lg,.form-control-static.input-sm{padding-left:0;padding-right:0}.form-group-sm .form-control,.input-sm{padding:5px 10px;border-radius:3px;font-size:12px}.input-sm{height:30px;line-height:1.5}select.input-sm{height:30px;line-height:30px}select[multiple].input-sm,textarea.input-sm{height:auto}.form-group-sm .form-control{height:30px;line-height:1.5}.form-group-lg .form-control,.input-lg{border-radius:6px;padding:10px 16px;font-size:18px}.form-group-sm select.form-control{height:30px;line-height:30px}.form-group-sm select[multiple].form-control,.form-group-sm textarea.form-control{height:auto}.form-group-sm .form-control-static{height:30px;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.5}.input-lg{height:46px;line-height:1.3333333}select.input-lg{height:46px;line-height:46px}select[multiple].input-lg,textarea.input-lg{height:auto}.form-group-lg .form-control{height:46px;line-height:1.3333333}.form-group-lg select.form-control{height:46px;line-height:46px}.form-group-lg select[multiple].form-control,.form-group-lg textarea.form-control{height:auto}.form-group-lg .form-control-static{height:46px;min-height:38px;padding:11px 16px;font-size:18px;line-height:1.3333333}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center}.collapsing,.dropdown,.dropup{position:relative}.form-group-lg .form-control+.form-control-feedback,.input-group-lg+.form-control-feedback,.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.form-group-sm .form-control+.form-control-feedback,.input-group-sm+.form-control-feedback,.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning .control-label,.has-warning .form-control-feedback,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.checkbox label,.has-warning.checkbox-inline label,.has-warning.radio label,.has-warning.radio-inline label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.has-error .checkbox,.has-error .checkbox-inline,.has-error .control-label,.has-error .form-control-feedback,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.checkbox label,.has-error.checkbox-inline label,.has-error.radio label,.has-error.radio-inline label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#616161}@media (min-width:768px){.form-inline .form-control-static,.form-inline .form-group{display:inline-block}.form-inline .control-label,.form-inline .form-group{margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:7px}}.btn-block,input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .checkbox,.form-horizontal .radio{min-height:27px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:11px;font-size:18px}.form-horizontal .form-group-sm .control-label{padding-top:6px;font-size:12px}}.btn{display:inline-block;margin-bottom:0;font-weight:400;text-align:center;touch-action:manipulation;cursor:pointer;border:1px solid transparent;padding:6px 12px;font-size:14px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#757575;text-decoration:none}.btn.active,.btn:active{outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{background-color:#f3f3f3}.btn-default.focus,.btn-default:focus{color:#757575;background-color:#dadada;border-color:#8c8c8c}.btn-default.active,.btn-default:active,.btn-default:hover,.open>.dropdown-toggle.btn-default{color:#757575;background-color:#dadada;border-color:#adadad}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.dropdown-toggle.btn-default.focus,.open>.dropdown-toggle.btn-default:focus,.open>.dropdown-toggle.btn-default:hover{color:#757575;background-color:#c8c8c8;border-color:#8c8c8c}.btn-default.disabled.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#f3f3f3;border-color:#ccc}.btn-default .badge{color:#f3f3f3;background-color:#757575}.btn-primary{background-color:#a36eff}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#823bff;border-color:#4d00d4}.btn-primary.active,.btn-primary:active,.btn-primary:hover,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#823bff;border-color:#6b18ff}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.dropdown-toggle.btn-primary.focus,.open>.dropdown-toggle.btn-primary:focus,.open>.dropdown-toggle.btn-primary:hover{color:#fff;background-color:#6b18ff;border-color:#4d00d4}.btn-primary.disabled.focus,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled].focus,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#a36eff;border-color:#9255ff}.btn-primary .badge{color:#a36eff;background-color:#fff}.btn-success{background-color:#00c853}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#00953e;border-color:#002f14}.btn-success.active,.btn-success:active,.btn-success:hover,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#00953e;border-color:#00712f}.btn-success.active.focus,.btn-success.active:focus,.btn-success.active:hover,.btn-success:active.focus,.btn-success:active:focus,.btn-success:active:hover,.open>.dropdown-toggle.btn-success.focus,.open>.dropdown-toggle.btn-success:focus,.open>.dropdown-toggle.btn-success:hover{color:#fff;background-color:#00712f;border-color:#002f14}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{background-image:none}.btn-success.disabled.focus,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled].focus,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#00c853;border-color:#00af48}.btn-success .badge{color:#00c853;background-color:#fff}.btn-info{color:#fff;background-color:#3d5afe;border-color:#2444fe}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#0a2ffe;border-color:#0119a1}.btn-info.active,.btn-info:active,.btn-info:hover,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#0a2ffe;border-color:#0123e3}.btn-info.active.focus,.btn-info.active:focus,.btn-info.active:hover,.btn-info:active.focus,.btn-info:active:focus,.btn-info:active:hover,.open>.dropdown-toggle.btn-info.focus,.open>.dropdown-toggle.btn-info:focus,.open>.dropdown-toggle.btn-info:hover{color:#fff;background-color:#0123e3;border-color:#0119a1}.btn-info.disabled.focus,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled].focus,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#3d5afe;border-color:#2444fe}.btn-info .badge{color:#3d5afe;background-color:#fff}.btn-warning{color:#fff;background-color:#ef6c00;border-color:#d66000}.btn-warning.focus,.btn-warning:focus{color:#fff;background-color:#bc5500;border-color:#562700}.btn-warning.active,.btn-warning:active,.btn-warning:hover,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#bc5500;border-color:#984500}.btn-warning.active.focus,.btn-warning.active:focus,.btn-warning.active:hover,.btn-warning:active.focus,.btn-warning:active:focus,.btn-warning:active:hover,.open>.dropdown-toggle.btn-warning.focus,.open>.dropdown-toggle.btn-warning:focus,.open>.dropdown-toggle.btn-warning:hover{color:#fff;background-color:#984500;border-color:#562700}.btn-warning.disabled.focus,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled].focus,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#ef6c00;border-color:#d66000}.btn-warning .badge{color:#ef6c00;background-color:#fff}.btn-danger{background-color:#ef5350}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#eb2521;border-color:#98110e}.btn-danger.active,.btn-danger:active,.btn-danger:hover,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#eb2521;border-color:#d51713}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.dropdown-toggle.btn-danger.focus,.open>.dropdown-toggle.btn-danger:focus,.open>.dropdown-toggle.btn-danger:hover{color:#fff;background-color:#d51713;border-color:#98110e}.btn-danger.disabled.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#ef5350;border-color:#ed3c39}.btn-danger .badge{color:#ef5350;background-color:#fff}.btn-link{color:#651fff;font-weight:400;border-radius:0}.alert .alert-link,.label{font-weight:700}.btn-link,.btn-link.active,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#4100d2;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.btn-group-sm>.btn,.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-xs>.btn,.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block}.btn-block+.btn-block{margin-top:5px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{height:0;overflow:hidden;-webkit-transition-property:height,visibility;transition-property:height,visibility;-webkit-transition-duration:.35s;transition-duration:.35s;-webkit-transition-timing-function:ease;transition-timing-function:ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;border-top:4px dashed;border-top:4px solid\9;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;text-align:left;background-color:#fff;border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box}.dropdown-menu-right,.dropdown-menu.pull-right{left:auto;right:0}.nav>li,.nav>li>a,.open>.dropdown-menu{display:block}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{background-color:#651fff}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0;background-color:#651fff}.dropdown-header,.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover,.nav>li.disabled>a{color:#777}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;background-color:transparent;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);cursor:not-allowed}.open>a{outline:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.nav>li,.nav>li>a,.navbar{position:relative}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px dashed;border-bottom:4px solid\9;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:700px){.navbar-right .dropdown-menu{left:auto;right:0}.navbar-right .dropdown-menu-left{left:0;right:auto}}.nav-justified>.dropdown .dropdown-menu,.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav>li>a{padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#777;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{background-color:#eee;border-color:#651fff}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px;margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0;border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-justified>li,.nav-stacked>li{float:none}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:focus,.nav-pills>li.active>a:hover{color:#fff;background-color:#651fff}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{min-height:58px;border:1px solid transparent}.navbar-collapse{overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.1);-webkit-overflow-scrolling:touch}.navbar-collapse.in{overflow-y:auto}@media (min-width:700px){.navbar{border-radius:4px}.navbar-header{float:left}.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-left:0;padding-right:0}}.embed-responsive,.modal,.modal-open,.progress{overflow:hidden}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-15px;margin-left:-15px}.navbar-static-top{z-index:1000;border-width:0 0 1px}.navbar-fixed-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:19px 15px;font-size:18px;line-height:20px;height:58px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:700px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}.navbar-fixed-bottom,.navbar-fixed-top,.navbar-static-top{border-radius:0}.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;margin-right:15px;padding:9px 10px;margin-top:12px;margin-bottom:12px;background-color:transparent;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}.navbar-nav{margin:9.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:699px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}.progress-bar-striped,.progress-striped .progress-bar,.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}@media (min-width:700px){.navbar-toggle{display:none}.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:19px;padding-bottom:19px}}.navbar-form{padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);margin:12px -15px}@media (min-width:768px){.navbar-form .form-control-static,.navbar-form .form-group{display:inline-block}.navbar-form .control-label,.navbar-form .form-group{margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:699px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:700px){.navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}.navbar-text{float:left;margin-left:15px;margin-right:15px}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-radius:4px 4px 0 0}.navbar-btn{margin-top:12px;margin-bottom:12px}.navbar-btn.btn-sm{margin-top:14px;margin-bottom:14px}.navbar-btn.btn-xs{margin-top:18px;margin-bottom:18px}.navbar-text{margin-top:19px;margin-bottom:19px}.alert,.breadcrumb{margin-bottom:20px}@media (min-width:700px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.btn-group>.btn-group,.btn-toolbar .btn,.btn-toolbar .btn-group,.btn-toolbar .input-group,.progress-bar{float:left}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-nav>li>a,.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{background-color:#e7e7e7;color:#555}@media (max-width:699px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#fff}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#e0e0e0}.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#e7e7e7}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{background-color:#e7e7e7;color:#fff}@media (max-width:699px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#e0e0e0}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#e7e7e7}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-inverse .navbar-link{color:#e0e0e0}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#e0e0e0}.navbar-inverse .btn-link:focus,.navbar-inverse .btn-link:hover{color:#fff}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{color:#ccc}.breadcrumb{padding:8px 15px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/\00a0";padding:0 5px;color:#ccc}.breadcrumb>.active{color:#777}.alert{padding:15px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#43a047;border-color:#43a047;color:#fff}.alert-success hr{border-top-color:#3b8e3f}.alert-success .alert-link{color:#e6e6e6}.alert-info{background-color:#448aff;border-color:#448aff;color:#fff}.alert-info hr{border-top-color:#2a7aff}.alert-info .alert-link{color:#e6e6e6}.alert-warning{background-color:#ef6c00;border-color:#ef6c00;color:#fff}.alert-warning hr{border-top-color:#d66000}.alert-warning .alert-link{color:#e6e6e6}.alert-danger{background-color:#f44336;border-color:#f44336;color:#fff}.alert-danger hr{border-top-color:#f32c1e}.alert-danger .alert-link{color:#e6e6e6}.label{display:inline;padding:.2em .6em .3em;font-size:75%;line-height:1;color:#fff;text-align:center;vertical-align:baseline;border-radius:.25em}a.label:focus,a.label:hover{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#777}.label-default[href]:focus,.label-default[href]:hover{background-color:#5e5e5e}.label-primary{background-color:#651fff}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#4900eb}.label-success{background-color:#43a047}.label-success[href]:focus,.label-success[href]:hover{background-color:#347c37}.label-info{background-color:#3d5afe}.label-info[href]:focus,.label-info[href]:hover{background-color:#0a2ffe}.label-warning{background-color:#ef6c00}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#bc5500}.label-danger{background-color:#f44336}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#ea1c0d}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{margin-bottom:20px;background-color:#eee;border-radius:3px}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle,.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child,.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child),.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn,.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.progress-bar{width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#651fff;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress-bar-striped,.progress-striped .progress-bar{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#00c853}.progress-striped .progress-bar-success{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-striped .progress-bar-info,.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#3d5afe}.progress-striped .progress-bar-info{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#ff9100}.progress-striped .progress-bar-warning{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#ff1744}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn .caret,.btn-group>.btn:first-child{margin-left:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn-lg .caret{border-width:5px 5px 0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-radius:4px 4px 0 0}.btn-group-vertical>.btn:last-child:not(:first-child){border-radius:0 0 4px 4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn input[type=checkbox],[data-toggle=buttons]>.btn input[type=radio],[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-left:0;padding-right:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group .form-control:focus{z-index:3}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn,textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn,textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group .form-control,.input-group-addon,.input-group-btn{display:table-cell}.input-group .form-control:not(:first-child):not(:last-child),.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=checkbox],.input-group-addon input[type=radio]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{z-index:2;margin-left:-1px}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{zoom:1;overflow:hidden}.media-body{width:10000px}.media-object{display:block}.media-object.img-thumbnail{max-width:none}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-body,.media-left,.media-right{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.badge,.material-icon{vertical-align:middle}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #eee}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item,button.list-group-item{color:#777}a.list-group-item .list-group-item-heading,button.list-group-item .list-group-item-heading{color:#333}a.list-group-item:focus,a.list-group-item:hover,button.list-group-item:focus,button.list-group-item:hover{text-decoration:none;color:#212121;background-color:#fff}button.list-group-item{width:100%;text-align:left}.badge,.pager{text-align:center}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{background-color:#eee;color:#777;cursor:not-allowed}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:2;color:#651fff;background-color:#fff;border-color:#eee}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .list-group-item-text{color:#fff}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success,button.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading,button.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:focus,a.list-group-item-success:hover,button.list-group-item-success:focus,button.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover,button.list-group-item-success.active,button.list-group-item-success.active:focus,button.list-group-item-success.active:hover{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info,button.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading,button.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:focus,a.list-group-item-info:hover,button.list-group-item-info:focus,button.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover,button.list-group-item-info.active,button.list-group-item-info.active:focus,button.list-group-item-info.active:hover{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning,button.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading,button.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:focus,a.list-group-item-warning:hover,button.list-group-item-warning:focus,button.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover,button.list-group-item-warning.active,button.list-group-item-warning.active:focus,button.list-group-item-warning.active:hover{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger,button.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading,button.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:focus,a.list-group-item-danger:hover,button.list-group-item-danger:focus,button.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover,button.list-group-item-danger.active,button.list-group-item-danger.active:focus,button.list-group-item-danger.active:hover{color:#fff;background-color:#a94442;border-color:#a94442}.panel-heading>.dropdown .dropdown-toggle,.panel-title,.panel-title>.small,.panel-title>.small>a,.panel-title>a,.panel-title>small,.panel-title>small>a{color:inherit}.panel,.panel-footer{background-color:#fff}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-title,.panel>.list-group,.panel>.panel-collapse>.list-group,.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel-body{padding:15px}.panel-heading{padding:14px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-title{margin-top:0;font-size:16px}.panel-footer{padding:14px 15px;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel-group .panel-heading,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-responsive:last-child>.table:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-left-radius:3px;border-bottom-right-radius:3px}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.panel>.table-responsive:first-child>.table:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table:first-child>thead:first-child>tr:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.list-group+.panel-footer,.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.panel-collapse>.table caption,.panel>.table caption,.panel>.table-responsive>.table caption{padding-left:15px;padding-right:15px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading+.panel-collapse>.list-group,.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#fff;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#fff;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#651fff}.panel-primary>.panel-heading{color:#fff;background-color:#651fff;border-color:#651fff}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#651fff}.panel-primary>.panel-heading .badge{color:#651fff;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#651fff}.panel-success{border-color:#00c853}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#00c853}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#00c853}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#00c853}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#f44336}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#f44336}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#f44336}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#f44336}.pager{padding-left:0;margin:20px 0;list-style:none}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:focus,.pager li>a:hover{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#777;background-color:#fff;cursor:not-allowed}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.42857143;text-decoration:none;color:#651fff;background-color:#fff;border:1px solid #ddd;margin-left:-1px}.close,.list-group-item>.badge{float:right}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{z-index:2;color:#4100d2;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:3;color:#fff;background-color:#651fff;border-color:#651fff;cursor:default}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#777;background-color:#fff;border-color:#ddd;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px;line-height:1.3333333}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px;line-height:1.5}.badge,.close{font-weight:700;line-height:1}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.embed-responsive{position:relative;display:block;height:0;padding:0}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;left:0;bottom:0;height:100%;width:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#fff;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{font-size:21px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;color:#fff;background-color:#777;border-radius:10px}.badge:empty,.modal{display:none}.btn .badge{position:relative;top:-1px}.btn-group-xs>.btn .badge,.btn-xs .badge{top:0;padding:1px 5px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#651fff;background-color:#fff}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}.affix,.auth-message{position:fixed}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before,.btn-toolbar:after,.btn-toolbar:before,.clearfix:after,.clearfix:before,.container-fluid:after,.container-fluid:before,.container:after,.container:before,.dl-horizontal dd:after,.dl-horizontal dd:before,.form-horizontal .form-group:after,.form-horizontal .form-group:before,.modal-footer:after,.modal-footer:before,.modal-header:after,.modal-header:before,.nav:after,.nav:before,.navbar-collapse:after,.navbar-collapse:before,.navbar-header:after,.navbar-header:before,.navbar:after,.navbar:before,.pager:after,.pager:before,.panel-body:after,.panel-body:before,.row:after,.row:before{content:" ";display:table}.btn-group-vertical>.btn-group:after,.btn-toolbar:after,.clearfix:after,.container-fluid:after,.container:after,.dl-horizontal dd:after,.form-horizontal .form-group:after,.modal-footer:after,.modal-header:after,.nav:after,.navbar-collapse:after,.navbar-header:after,.navbar:after,.pager:after,.panel-body:after,.row:after{clear:both}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.hidden,.visible-lg,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-sm,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block{display:none!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.header-stats,.page-header .breadcrumb,.page-header .go-back-sm,.page-header h1{text-shadow:0 1px 1px #512da8}@-ms-viewport{width:device-width}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table!important}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}.visible-xs-block{display:block!important}.visible-xs-inline{display:inline!important}.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table!important}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}.visible-sm-block{display:block!important}.visible-sm-inline{display:inline!important}.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table!important}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}.visible-md-block{display:block!important}.visible-md-inline{display:inline!important}.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table!important}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}.visible-lg-block{display:block!important}.visible-lg-inline{display:inline!important}.visible-lg-inline-block{display:inline-block!important}.hidden-lg{display:none!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table!important}tr.visible-print{display:table-row!important}td.visible-print,th.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}.hidden-print{display:none!important}}@media screen and (min-width:992px){.md-margin-top-no{margin-top:0!important}}@media screen and (min-width:768px) and (max-width:991px){.sm-margin-top{margin-top:20px!important}.sm-margin-top-no{margin-top:0!important}.sm-margin-top-half{margin-top:6.6px!important}.sm-align-row-buttons{margin-top:5px!important}}@media screen and (max-width:767px){.xs-margin-top{margin-top:20px!important}.xs-margin-top-half{margin-top:6.6px!important}}.auth-message{background-color:#eee;width:100%;top:-100%;left:0;z-index:1070;transition:top .3s ease}.auth-message.show{top:0;bottom:auto}.auth-message p{padding:5px 0}@media screen and (max-width:991px){body,html{overflow-x:hidden}.auth-message{text-align:center}.auth-message .btn{padding:10px 16px;font-size:18px}}.alerts-snackbar{position:fixed;top:-100%;width:100%;z-index:1060;text-align:center;font-size:18px;transition:top .3s ease}.alerts-snackbar.in{top:0;transition:top .2s ease}.alerts-snackbar p{display:inline-block;border-radius:0 0 4px 4px;margin:0;pointer-events:all}.loader{width:100%;height:49px;text-align:center}.loader.loader-spaced{margin:40px 0}.loader-spinning-wheel{width:49px;height:49px;margin:0 auto;border:3px solid #777;border-radius:50%;border-left-color:transparent;border-right-color:transparent;animation:cssload-spin 575ms infinite linear;-o-animation:cssload-spin 575ms infinite linear;-ms-animation:cssload-spin 575ms infinite linear;-webkit-animation:cssload-spin 575ms infinite linear;-moz-animation:cssload-spin 575ms infinite linear}@keyframes cssload-spin{100%{transform:rotate(360deg)}}@-o-keyframes cssload-spin{100%{-o-transform:rotate(360deg);transform:rotate(360deg)}}@-ms-keyframes cssload-spin{100%{-ms-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes cssload-spin{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-moz-keyframes cssload-spin{100%{-moz-transform:rotate(360deg);transform:rotate(360deg)}}.navbar{margin-bottom:0}.navbar .navbar-full .navbar-brand{padding-top:13px;padding-bottom:13px;font-size:21px}.navbar .navbar-full .navbar-brand>*{display:inline-block;vertical-align:middle}.navbar .navbar-full .navbar-brand img{height:32px;margin-right:6px}.navbar .navbar-full .navbar-nav>li>a{font-size:16.8px}.navbar .navbar-full .navbar-icon{display:block;height:58px;padding:15px;position:relative;color:#e0e0e0}.navbar .navbar-full .navbar-icon:focus,.navbar .navbar-full .navbar-icon:hover{color:#fff;background-color:transparent}.navbar .navbar-full .navbar-icon .material-icon{width:28px;height:28px;font-size:28px;line-height:28px}.navbar .navbar-full .navbar-icon .badge{background-color:#f44336;position:absolute;top:6px;right:6px;font-size:9px}.nav-side>a>.material-icon,.navbar ul.navbar-compact-nav>li>a>.material-icon{font-size:24px;line-height:24px}.navbar .navbar-full .open .navbar-icon,.navbar .navbar-full .open .navbar-icon:focus,.navbar .navbar-full .open .navbar-icon:hover{background-color:#e7e7e7;color:#555}.navbar .navbar-full .nav-guest,.navbar .navbar-full .nav-user{float:right}.navbar .navbar-full .nav-guest .navbar-btn,.navbar .navbar-full .nav-user .navbar-btn{margin-left:15px}.navbar .navbar-full .nav-user .dropdown-toggle{padding:12px}.navbar .navbar-full .nav-user .dropdown-toggle img{width:34px;height:34px}.navbar ul.navbar-compact-nav{border-collapse:collapse;display:table;margin:0;table-layout:fixed;width:100%}.navbar ul.navbar-compact-nav>li{display:table-cell;width:100%}.navbar ul.navbar-compact-nav>li>a,.navbar ul.navbar-compact-nav>li>button{background:0 0;border:none;display:block;padding-top:13px;padding-bottom:13px;width:100%;color:#e0e0e0;text-align:center}.navbar ul.navbar-compact-nav>li>a.active,.navbar ul.navbar-compact-nav>li>a:focus,.navbar ul.navbar-compact-nav>li>a:hover,.navbar ul.navbar-compact-nav>li>button.active,.navbar ul.navbar-compact-nav>li>button:focus,.navbar ul.navbar-compact-nav>li>button:hover{color:#212121;background-color:#fafafa}.navbar ul.navbar-compact-nav>li>a>img,.navbar ul.navbar-compact-nav>li>button>img{width:24px;height:24px}.navbar ul.navbar-compact-nav>li>button{display:inline-block}@media (max-width:700px){.navbar.navbar-misago{min-height:auto}}.modal-body .form-group,.toolbar{min-height:34px}.navbar-misago .navbar-desktop-nav{display:none}@media (min-width:700px){.navbar-misago ul.navbar-compact-nav{display:none}.navbar-misago .navbar-desktop-nav{display:block}}.nav-side>a>.material-icon{margin:-5px 10px -5px -5px;position:relative;bottom:1px;width:24px;height:24px}.nav-side>a .badge{position:relative;top:1px}@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(../fonts/MaterialIcons-Regular.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(../fonts/MaterialIcons-Regular.woff2) format('woff2'),url(../fonts/MaterialIcons-Regular.woff) format('woff'),url(../fonts/MaterialIcons-Regular.ttf) format('truetype')}.material-icon{font-family:'Material Icons';font-weight:400;font-style:normal;display:inline-block;width:1em;height:1em;line-height:1;text-align:center;text-transform:none;letter-spacing:normal;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:'liga'}.misago-markup h1,.misago-markup h2,.misago-markup h3,.misago-markup h4,.misago-markup h5,.misago-markup h6,.misago-markup p,.page-header h1,.post-attachments .attachment-name,.post-feed .post-heading .btn{word-wrap:break-word}.modal-toolbar{background:#eee;border-bottom:1px solid #e5e5e5;overflow:auto;padding:6px 12px}.modal-toolbar .pull-left{margin-right:8px}.modal-toolbar p{padding:5px 0;margin-bottom:0}@media screen and (max-width:991px){.modal-message{text-align:center}.modal-message .message-icon{margin:30px}.modal-message .message-icon .material-icon{font-size:160px}}@media screen and (min-width:992px){.modal-message .modal-body{padding-top:20px;padding-bottom:30px}.modal-message .message-icon{float:left;position:relative;left:7px}.modal-message .message-icon .material-icon{font-size:50px}.modal-message .message-body{margin-left:75px;margin-top:10px}.modal-message .message-body p{margin-top:20px}.modal-message .message-body .lead{margin-top:0;margin-bottom:0}}.modal-loader{padding:50px 0}.modal-loader .loader{width:100%;height:80px;text-align:center}.modal-loader .loader-spinning-wheel{width:80px;height:80px}.list-item-errors{margin-bottom:20px}.list-errored-items li:last-child .list-item-errors{margin-bottom:0}.modal-post-likers .media-list{margin:0}.modal-post-likers .item-title{display:block}.has-feedback .material-icon.form-control-feedback{top:6px;right:24px;font-size:1.42857143;line-height:1.42857143}.well.well-form.well-done{font-size:18px;text-align:center}.well.well-form.well-done .message-icon{margin-bottom:10px;font-size:90px;line-height:90px}.well.well-form.well-done .message-body{margin-bottom:20px}.well.well-form.well-noscript{font-size:18px;text-align:center}.well.well-form.well-noscript .message-icon{margin-bottom:10px;font-size:90px;line-height:90px}.btn.btn-select,.btn.btn-yes-no{background:0 0;border:1px solid #eee}.btn.btn-select .material-icon,.btn.btn-yes-no .material-icon{margin:-4px 8px -4px 0;position:relative;bottom:1px;width:20px;height:20px;font-size:20px;line-height:20px}@media screen and (max-width:767px){.btn.btn-yes-no{width:100%;overflow:auto}.btn.btn-yes-no .material-icon{float:left;margin-top:1px}.btn.btn-yes-no .btn-text{display:block;margin-left:30px;text-align:left;white-space:normal}}input.hidden-file-upload{position:absolute;top:-9999px;left:-9999px}.form-search{position:relative}.form-search .form-control{padding-right:30px}.form-search .material-icon{position:absolute;top:5px;right:5px;color:#777;font-size:24px;line-height:24px;pointer-events:none}.btn.btn-loading,.btn.btn-loading:active,.btn.btn-loading:focus,.btn.btn-loading:hover,.btn.btn-loading:link,.btn.btn-loading:visited{color:transparent}.btn.btn-loading .loader,.btn.btn-loading:active .loader,.btn.btn-loading:focus .loader,.btn.btn-loading:hover .loader,.btn.btn-loading:link .loader,.btn.btn-loading:visited .loader{height:20px;margin-top:-20px}.btn.btn-loading .loader>div,.btn.btn-loading:active .loader>div,.btn.btn-loading:focus .loader>div,.btn.btn-loading:hover .loader>div,.btn.btn-loading:link .loader>div,.btn.btn-loading:visited .loader>div{width:20px;height:20px}.btn.btn-loading.btn-default .loader>div{border-top-color:#757575;border-bottom-color:#757575}.btn.btn-loading.btn-danger .loader>div,.btn.btn-loading.btn-info .loader>div,.btn.btn-loading.btn-primary .loader>div,.btn.btn-loading.btn-success .loader>div,.btn.btn-loading.btn-warning .loader>div{border-top-color:#fff;border-bottom-color:#fff}.btn .material-icon{margin-right:3px;position:relative;bottom:1px}.btn-icon .material-icon{margin:-1px -4px;width:20px;height:20px;font-size:20px;line-height:20px}.btn-icon .btn-text{margin-left:10px}.btn-icon .btn-text-left{margin-right:10px}.btn-block.btn-icon{padding-left:0;padding-right:0}.dropdown-menu>li>.btn-link,.dropdown-menu>li>a,.modal-menu>li>.btn-link,.modal-menu>li>a{display:block;border:none;clear:both;float:none;padding:6px 20px;width:100%;color:#333;font-weight:400;line-height:1.42857143;text-align:left;white-space:nowrap}.pager-more,.user-dropdown .guest-preview,li.dropdown-search-message{text-align:center}.dropdown-menu>li>.btn-link:active,.dropdown-menu>li>.btn-link:focus,.dropdown-menu>li>.btn-link:hover,.dropdown-menu>li>a:active,.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover,.modal-menu>li>.btn-link:active,.modal-menu>li>.btn-link:focus,.modal-menu>li>.btn-link:hover,.modal-menu>li>a:active,.modal-menu>li>a:focus,.modal-menu>li>a:hover{background-color:#651fff;color:#fff;text-decoration:none}.dropdown-menu>li>.btn-link .material-icon,.dropdown-menu>li>a .material-icon,.modal-menu>li>.btn-link .material-icon,.modal-menu>li>a .material-icon{margin:-2px 7px -2px 0;position:relative;bottom:1px;font-size:18px}.dropdown-menu>li>.btn-link .badge,.dropdown-menu>li>a .badge,.modal-menu>li>.btn-link .badge,.modal-menu>li>a .badge{float:right;position:relative;top:1px}.modal-menu{margin:20px 0;padding:0}.modal-menu>li{margin:6.67px 0;padding:0;list-style:none}.dropdown-menu{width:210px}.dropdown-menu .dropdown-footer{padding:6px 20px}.dropdown-menu .dropdown-buttons{padding:2px 20px 7px}.dropdown-menu .dropdown-buttons .btn{margin:4px 0}.compact-nav,.mobile-dropdown{position:static;margin:0;overflow:auto}.compact-nav.open,.mobile-dropdown.open{margin-bottom:20px}.compact-nav.open{margin-top:-20px}.compact-nav.open>.dropdown-menu,.mobile-dropdown.open>.dropdown-menu{border:none;border-radius:0;-webkit-box-shadow:none;box-shadow:none;display:block;margin:0;width:100%;position:static}.user-dropdown .guest-preview .row{margin:0}.navbar .user-dropdown{width:240px}.user-dropdown .dropdown-header{padding:6px 20px;font-size:18px}@media screen and (min-width:992px){.category-picker .dropdown-menu{width:300px}}.category-picker .dropdown-menu>li>.btn-link{white-space:normal;word-wrap:break-word}.dropdown-search-thread h5,.editor-attachment-complete .editor-attachment-details abbr,.page-tabs ul,.page-tabs ul a,.page-tabs ul li,.post-attachments abbr{white-space:nowrap}@media screen and (max-width:767px){.dropdown-menu.stick-to-bottom{border-radius:0;border:none;max-height:300px;overflow-y:auto;-webkit-box-shadow:0 0 30px #777;box-shadow:0 0 30px #777;clear:both;top:auto;width:100%;position:fixed;bottom:0;margin:0;padding:0 0 20px}.dropdown-menu.stick-to-bottom li{float:none;margin:0;clear:both}.dropdown-menu.stick-to-bottom li>.btn,.dropdown-menu.stick-to-bottom li>a{padding-top:15px;padding-bottom:15px;border-bottom:1px solid #e5e5e5}}.navbar-misago .dropdown-menu.dropdown-search-results{margin:0;padding-top:0;width:400px;left:auto;right:0}.dropdown-search-results .form-group{margin:0;padding:12px}.dropdown-search-thread{width:100%}.dropdown-search-thread h5{margin:0;overflow:hidden;text-overflow:ellipsis}.dropdown-search-thread small{display:block;margin:4px 0 0}.page-header-bg{margin-bottom:20px}.page-header{margin:0;padding:40px 0}.page-header h1{margin:0}.page-header .btn-aligned{float:right;margin-left:8px}.page-header .btn-aligned.pull-left{margin-left:0;margin-right:8px}@media screen and (min-width:992px){.page-header .container>.row h1{margin-top:-3px}.page-header .container>.row .row{margin-top:5px}}@media screen and (max-width:991px){.container h1{font-size:22.5px}.container .btn-icon .material-icon{width:24px;height:24px;margin:-3px 0;font-size:24px;line-height:24px}}.go-back-sm .material-icon,.header-stats .list-inline li .status-icon{width:18px;height:18px;font-size:18px;line-height:18px;position:relative}.page-breadcrumbs{margin-bottom:20px}.page-breadcrumbs .breadcrumb{background:0 0;margin:-20px 0 0;padding:0;overflow:auto}.page-breadcrumbs .breadcrumb li,.page-breadcrumbs .breadcrumb li:before{display:block;float:left}.page-breadcrumbs .breadcrumb li:before{margin-left:4px}.go-back-sm{margin-top:-20px;margin-bottom:20px}.go-back-sm .material-icon{top:-1px}.page-breadcrumbs .go-back-sm{margin-bottom:0}.header-stats{margin-top:20px;margin-bottom:-20px}.header-stats .list-inline{margin-bottom:0}.header-stats .list-inline li{margin-bottom:0;margin-right:8px;overflow:auto;vertical-align:top}.header-stats .list-inline li .status-icon{margin-right:4px;bottom:1px}.header-stats .list-inline li>.icon-legend,.header-stats .list-inline li>.material-icon{float:left}.header-stats .list-inline li>.material-icon{margin-right:4px;position:relative;top:3px}.page-header .page-tabs{margin-top:20px;margin-bottom:-40px}.page-header .page-tabs .nav>li{margin:0}.page-header .page-tabs .nav>li>a{border-radius:0}.page-tabs ul{display:block;overflow-x:auto}.page-tabs ul a,.page-tabs ul li{display:inline-block;float:none}.page-tabs ul a .material-icon,.page-tabs ul li .material-icon{margin-right:6px}@media screen and (max-width:767px){.page-tabs .container{padding-left:0;padding-right:0}.page-tabs li a{padding-left:26.6px;padding-right:26.6px}.header-stats+.page-tabs{margin-top:30px}}.title-edit-form{margin-bottom:12px}@media screen and (max-width:991px){.header-stats .list-inline{font-size:12px}.header-stats .list-inline li>.material-icon{top:2px}.panel-message-body{text-align:center}.panel-message-body .message-icon{margin:30px}.panel-message-body .message-icon .material-icon{font-size:160px}}@media screen and (min-width:992px){.panel-message-body{padding:20px 20px 30px}.panel-message-body .message-icon{float:left}.panel-message-body .message-icon .material-icon{font-size:50px}.panel-message-body .message-body{margin-left:65px;margin-top:10px}.panel-message-body .message-body .lead{margin-bottom:0}.panel-message-body .message-body .help-block{margin-top:13.2px}}.panel-body-loading{padding:0;text-align:center}.misago-footer{margin-bottom:50px}.misago-footer .noscript-message .material-icon{position:relative;bottom:1px;font-size:18px}.ui-preview{color:#eee;-webkit-animation:ui-preview-animation 1s linear infinite;-o-animation:ui-preview-animation 1s linear infinite;animation:ui-preview-animation 1s linear infinite}@keyframes ui-preview-animation{0%,100%{opacity:1;filter:alpha(opacity=100)}50%{opacity:.1;filter:alpha(opacity=10)}}.ui-preview-text{background:#eee;border-radius:100px;display:inline-block;height:14px;position:relative;top:3px}.ui-preview-paragraph .ui-preview-text{margin-right:6px}.ui-preview-paragraph .ui-preview-text:last-child{margin-right:0}.ui-preview-img{background:#eee;border-radius:5px}.pager-undercontent{margin-top:-20px}@media screen and (min-width:992px){.pager-more .btn{padding-left:20px;padding-right:20px}}.misago-pagination{overflow:auto}.misago-pagination .pagination{float:left;margin:0 10px 0 0}.misago-pagination .pagination li>a,.misago-pagination .pagination li>span{padding:2px}.misago-pagination .pagination .material-icon{width:28px;height:28px;font-size:28px;line-height:28px}.misago-pagination p{float:left;margin:0;padding:7px}.panel-poll h2{margin-top:0}.poll-select-choice .btn,.poll-select-choice .btn:active,.poll-select-choice .btn:focus,.poll-select-choice .btn:hover{background:0 0;border:transparent;-webkit-box-shadow:none;box-shadow:none;margin:6px 0;padding:0 0 0 6px;outline:0;text-align:left}.poll-select-choice .btn .material-icon{margin-right:6px;height:28px;width:28px;font-size:28px;line-heigh:28px;color:#eee}.poll-select-choice .btn.btn-selected .material-icon{color:#651fff}.poll-help{font-size:12px}.poll-chart-selected .material-icon{margin-right:4px;position:relative;bottom:1px;height:14px;width:14px;color:#43a047;font-size:14px;line-heigh:14px}.poll-options{margin-bottom:0}.user-status.user-banned .status-icon{color:#f44336}.user-status.user-online .status-icon{color:#43a047}.user-status.user-offline .status-icon{color:#777}.item-title,a.item-title:active,a.item-title:hover,a.item-title:link,a.item-title:visited{color:#212121;font-weight:700}.user-card-small-avatar img{width:100%;height:auto}@media screen and (min-width:768px){.user-card{text-align:center}.user-card-small-avatar{display:none}}@media screen and (max-width:767px){.poll-options{margin-top:-6px}.poll-options .btn{margin:6px 0}.user-card-avatar{display:none}}.toolbar{display:block;margin-bottom:20px}.toolbar.toolbar-bottom{margin-top:10px;margin-bottom:20px}.toolbar>h3{font-size:18px}.toolbar>p{padding:6px 0;text-align:center}@media screen and (min-width:992px){.toolbar-left{float:left;margin-right:16px}.toolbar-right{float:right;margin-left:16px}.toolbar .toolbar-bottom>.form-control,.toolbar .toolbar-control{margin:0;width:auto}.toolbar>h3,.toolbar>p{min-height:34px;margin:0;padding-top:6px;text-align:left}.toolbar>p{padding-top:7px}}.row-toolbar .toolbar-vertical-spacer{margin-top:10px}.row-toolbar-bottom-margin{margin-bottom:20px}@media screen and (min-width:768px){.row-toolbar p{padding-top:7px}}abbr{border:none!important}.item-title{text-decoration:none}a.item-title:hover{text-decoration:underline}.message-line{text-align:center}.message-line .material-icon{margin-right:6.67px;font-size:20px;line-height:20px;height:20px;width:20px}.misago-markup h1,.misago-markup h2,.misago-markup h3,.misago-markup h4,.misago-markup h5,.misago-markup h6{margin-top:40px}.misago-markup blockquote>*,.misago-markup>*{margin:20px 0}.misago-markup blockquote>:first-child,.misago-markup>:first-child{margin-top:0}.misago-markup blockquote>:last-child,.misago-markup>:last-child{margin-bottom:0}.misago-markup img{max-width:100%;max-height:500px}.misago-markup .quote-block,.misago-markup blockquote{background:#eee;border:none;font-size:14px}.misago-markup .quote-block .quote-heading,.misago-markup blockquote .quote-heading{padding:10px 20px;font-size:12px;font-weight:700}.misago-markup .quote-body{margin:0;padding:20px}.misago-markup .quote-body>.quote-block,.misago-markup .quote-body>blockquote{border:1px solid #dadada}.misago-markup ul,.misago-markup ul li{list-style-type:square}.misago-markup ol,.misago-markup ol li{list-style-type:decimal}.misago-markup pre{background:#eee;border:none;padding:10px;overflow:hidden;color:#000}.misago-markup pre code.hljs{margin:-10px;padding:9.5px}.modal-change-avatar .modal-avatar-index .avatar-preview{border-radius:6px;margin:0 auto;overflow:hidden;position:relative;width:200px;height:200px}.modal-change-avatar .modal-avatar-index .avatar-preview .loader{display:none;position:absolute;top:50px;height:100px}.modal-change-avatar .modal-avatar-index .avatar-preview .loader .loader-spinning-wheel{border-width:10px;border-color:#fff transparent;width:100px;height:100px}.modal-change-avatar .modal-avatar-index .avatar-preview.preview-loading img{opacity:.33;filter:alpha(opacity=33)}.modal-change-avatar .modal-avatar-index .avatar-preview.preview-loading .loader{display:block}@media (max-width:699px){.modal-change-avatar .modal-avatar-index .avatar-preview{margin-bottom:20px;width:150px;height:150px}.modal-change-avatar .modal-avatar-index .avatar-preview img{width:150px;height:150px}.modal-change-avatar .modal-avatar-index .avatar-preview .loader{top:25px;height:100px}.modal-change-avatar .modal-avatar-index .avatar-preview .loader .loader-spinning-wheel{width:100px;height:100px}}.modal-change-avatar .modal-avatar-index .btn{text-align:left}.modal-change-avatar .modal-avatar-upload{text-align:center}.modal-change-avatar .modal-avatar-upload .btn-pick-file{background:0 0;border:2px solid #eee;border-radius:6px;padding:10px 24px;-webkit-box-shadow:none;box-shadow:none;color:#777;font-size:18px;text-align:center}.modal-change-avatar .modal-avatar-upload .btn-pick-file>.material-icon{display:block;margin:0 auto 13.2px;font-size:50px;width:50px;height:50px}.modal-change-avatar .modal-avatar-upload .btn-pick-file:active,.modal-change-avatar .modal-avatar-upload .btn-pick-file:hover{border-color:#777}.modal-change-avatar .modal-avatar-upload .text-muted{margin-top:13.2px}.modal-change-avatar .modal-avatar-upload .upload-progress img{border-radius:4px;margin-bottom:20px;max-height:80px;width:auto}.modal-change-avatar .modal-avatar-upload .upload-progress .progress{width:70%;margin:0 auto}.modal-avatar-crop .crop-form{margin:0 auto}.modal-avatar-crop .crop-form .cropit-image-zoom-input{margin-top:10px;-webkit-appearance:none;border:1px solid #fff;width:100%}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-webkit-slider-runnable-track{width:100%;height:8px;background:#eee;border:none;border-radius:3px}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-webkit-slider-thumb{-webkit-appearance:none;border:none;height:20px;width:20px;border-radius:50%;background:#777;margin-top:-6px}.modal-avatar-crop .crop-form .cropit-image-zoom-input:focus{outline:0}.modal-avatar-crop .crop-form .cropit-image-zoom-input:focus::-webkit-slider-runnable-track{background:#eee}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-moz-range-track{width:100%;height:8px;background:#eee;border:none;border-radius:4px}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-moz-range-thumb{border:none;height:20px;width:20px;border-radius:50%;background:#777}.modal-avatar-crop .crop-form .cropit-image-zoom-input:-moz-focusring{outline:#fff solid 1px;outline-offset:-1px}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-ms-track{width:100%;height:8px;background:0 0;border-color:transparent;border-width:8px 0;color:transparent}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-ms-fill-lower{background:#eee;border-radius:16px}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-ms-fill-upper{background:#eee;border-radius:16px}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-ms-thumb{border:none;height:20px;width:20px;border-radius:50%;background:#777}.modal-avatar-crop .crop-form .cropit-image-zoom-input:focus::-ms-fill-lower{background:#eee}.modal-avatar-crop .crop-form .cropit-image-zoom-input:focus::-ms-fill-upper{background:#eee}.modal-change-avatar .modal-avatar-gallery{padding-bottom:0}.modal-change-avatar .modal-avatar-gallery .avatars-gallery{margin-bottom:20px}.modal-change-avatar .modal-avatar-gallery .avatars-gallery h3{margin-top:0}.modal-change-avatar .modal-avatar-gallery .avatars-gallery-images .row{margin-bottom:10px}.modal-change-avatar .modal-avatar-gallery .avatars-gallery-images .btn{border-radius:6px;border:2px solid #eee;background:0 0;padding:2px;position:relative}.modal-change-avatar .modal-avatar-gallery .avatars-gallery-images .btn:focus,.modal-change-avatar .modal-avatar-gallery .avatars-gallery-images .btn:hover{border-color:#777}.modal-change-avatar .modal-avatar-gallery .avatars-gallery-images .btn.avatar-selected,.modal-change-avatar .modal-avatar-gallery .avatars-gallery-images .btn:active{border-color:#651fff}.modal-change-avatar .modal-avatar-gallery .avatars-gallery-images .btn img{border-radius:4px;width:100%;height:auto}.category-main .read-status .material-icon{color:#eee}.category-main .read-status.item-new .material-icon{color:#651fff}.category-last-thread .media-heading a{display:inline-block;overflow:hidden;white-space:nowrap;width:290px;text-overflow:ellipsis;vertical-align:top}@media screen and (max-width:991px){.category-last-thread .media-heading a{width:275px}}@media screen and (max-width:767px){.category-last-thread .media-heading a{width:260px}}.category-thread-message .material-icon{width:28px;height:28px;font-size:28px;line-height:28px}.category-thread-message p{margin:0}.list-inline.subcategories-list{overflow:auto;margin-top:-10px}.list-inline.subcategories-list li{display:block;float:left}.list-inline.subcategories-list li a,.list-inline.subcategories-list li a:active,.list-inline.subcategories-list li a:focus,.list-inline.subcategories-list li a:hover,.list-inline.subcategories-list li a:link,.list-inline.subcategories-list li a:visited{background-color:#eee;border:1px solid #e2e2e2;border-radius:4px;display:inline-block;margin-top:10px;padding:6px 12px;color:#555}#posting-placeholder .first-row .form-control,.editor-border{border:1px solid #c8c8c8}.list-inline.subcategories-list li a:active,.list-inline.subcategories-list li a:hover,.list-inline.subcategories-list li:focus{background-color:#e2e2e2;color:#212121;text-decoration:none}.row.subcategories-list .btn{margin-top:20px;text-align:left}#posting-placeholder{background-color:#eee;display:none;margin-top:30px;margin-bottom:-30px;padding:20px 0;transition:height .3s}#posting-placeholder.slide-in{display:block}#posting-placeholder .first-row{margin-bottom:20px}#posting-placeholder .first-row .posting-options .btn{padding-top:4px;padding-bottom:4px}#posting-placeholder .first-row .posting-options .btn .btn-text{margin-left:5px;position:relative;top:1px}#posting-placeholder .first-row .posting-options .material-icon{width:14px;height:24px;margin-right:0;position:relative;top:5px;font-size:14px;line-height:14px;text-align:center}.posting-ui-preview{padding:20px 0;position:relative}.posting-ui-preview .form-control{box-shadow:none;resize:none}.posting-loader{text-align:center}.posting-loader .loader{height:100px}.posting-loader .loader .loader-spinning-wheel{width:100px;height:100px}.posting-message{text-align:center}.posting-message .material-icon{margin-right:6.67px;position:relative;top:-1px;width:28px;height:28px;font-size:28px;line-height:28px}.posting-message .message-body p{font-size:18px}.editor-border{background-color:#fff;border-radius:4px}.editor-border .form-control{border:none;resize:none}.editor-border .form-control,.editor-border .form-control:active,.editor-border .form-control:focus{-webkit-box-shadow:none;box-shadow:none}.editor-footer{border-top:1px solid #c8c8c8;padding:6px 12px;overflow:auto}.editor-footer .pull-left{margin-right:12px}.editor-footer .pull-right{margin-left:12px}.editor-footer .btn-icon .material-icon{margin-bottom:-2px}@media screen and (max-width:991px){.editor-footer .buttons-list{float:none!important;margin:0 0 10px}.editor-footer .buttons-list .btn{display:inline-block;float:none!important;margin:6.67px}.editor-footer .btn-protect .btn-text{margin-left:10px}.editor-footer .btn-protect .material-icon{position:relative;bottom:2px;width:14px;height:14px;font-size:14px;line-height:14px}}@media screen and (min-width:768px) and (max-width:991px){.buttons-list .btn:first-child{margin-left:0}}@media screen and (max-width:767px){.buttons-list{text-align:center}.buttons-list .btn-protect{display:block;float:none!important;width:100%;margin:10px 0 0}}.editor-attachments-list{margin:0;padding:0}.editor-attachments-list li{margin:0}.editor-attachment-complete{border-top:1px solid #c8c8c8;padding:6px 12px 6px 0}.editor-attachment-complete .editor-attachment-image{float:left;width:50px}.editor-attachment-complete .editor-attachment-image a{background-size:cover;background-position:center;border-radius:3px;display:block;margin:0 auto;width:36px;height:36px}.editor-attachment-complete .editor-attachment-icon{float:left;width:50px;text-align:center}.editor-attachment-complete .editor-attachment-icon .material-icon{position:relative;top:2px;height:28px;width:28px;font-size:28px;line-height:28px}.editor-attachment-complete .editor-attachment-details{margin-left:50px}.editor-attachment-complete .editor-attachment-details h4,.editor-attachment-complete .editor-attachment-details p{margin:0;padding:0;font-size:14px}.editor-attachment-complete .editor-attachment-details p{margin-top:3px;color:#777;font-size:12px}@media screen and (min-width:768px){.editor-attachment-actions{padding-top:3px}}@media screen and (max-width:767px){.editor-attachment-actions{padding-left:12px;padding-right:12px}}.editor-attachment-error{border-top:1px solid #c8c8c8;padding:6px 12px 6px 0}.editor-attachment-error-icon{float:left;width:50px;text-align:center}.editor-attachment-error-icon .material-icon{position:relative;top:2px;height:28px;width:28px;font-size:28px;line-height:28px}.editor-attachment-error-message{margin-left:50px;padding:6px 0;position:relative}.editor-attachment-error-message h4,.editor-attachment-error-message p{margin:0;padding:0;font-size:14px}.editor-attachment-error-message p{margin-top:3px;font-size:12px}.editor-attachment-error-message .btn{position:absolute;top:9px;right:12px}@media screen and (max-width:767px){.editor-attachment-error-message .btn{display:block;margin-top:10px;position:static}}.editor-attachment-progress-bar{background:#c8c8c8;overflow:auto}.editor-attachment-progress{background:#651fff;float:left;height:1px}.editor-attachment-upload-message{margin:0;padding:6px 12px}#editor-upload-field{position:absolute;left:-1000px;top:-1000px}.atwho-view ul li img{border-radius:3px;margin-right:4.67px;width:20px;height:20px}.participant-card .btn-user,.participant-card .dropdown.open .btn-user{margin-bottom:20px}.participant-card .btn-user,.participant-card .btn-user:focus,.participant-card .btn-user:focus:active,.participant-card .btn-user:hover,.participant-card .dropdown.open .btn-user,.participant-card .dropdown.open .btn-user:focus,.participant-card .dropdown.open .btn-user:focus:active,.participant-card .dropdown.open .btn-user:hover{padding:0;overflow:hidden;text-align:left}.participant-card .btn-user img,.participant-card .dropdown.open .btn-user img{background-color:#fff;width:34px;height:34px;margin-right:8px}.panel-participants p{margin:7px 0 0}.poll-choices-control .list-group-item{padding:0}.poll-choices-control .list-group-item .btn{background:0 0;border:transparent;float:left;margin:0 2px -29px;padding:0;width:28px;height:28px;position:relative;top:3px}.poll-choices-control .list-group-item .btn .material-icon{width:28px;height:28px;font-size:28px;line-height:28px}.poll-choices-control input,.poll-choices-control input:active,.poll-choices-control input:focus{background:0 0;border:none;-webkit-box-shadow:none;box-shadow:none;outline:0;margin-left:30px;padding:6px 12px;width:100%}.posts-list{margin:0;padding:0;clear:both}.posts-list li{list-style:none;margin:0;padding:0}.post-side{font-size:12px}.post-side .media{margin:0}.post-side .poster-avatar{height:36px;width:36px}@media screen and (min-width:992px){.post-side .poster-avatar{margin-top:4px;height:82px;width:82px}}.post-side .media-heading{display:block;margin:-1px 0 0;font-size:14px}.post-side .media-heading .user-status{margin-left:2px}.post-heading .pull-right,.post-side .pull-right{margin-left:16px}@media screen and (min-width:992px){.post-side .media-heading{margin-top:3px;font-size:18px}.post-side .media-heading .user-status{display:none}.post-side .user-title{margin-top:4px;margin-bottom:5px}.post-side .user-postcount,.post-side .user-status{display:block}.post-side .pull-right{display:none}}.post-heading{height:36px}@media screen and (max-width:991px){.post-heading{margin-top:10px}.post-heading .pull-right{display:none}}.post-heading .label{margin-top:6px;font-size:14px;font-weight:400}.post-heading .label-unread{color:#fff}.post-body{padding-top:20px;padding-bottom:30px}.post-status-message{overflow:auto}.post-status-message .material-icon{float:left;font-size:28px;line-height:28px}.post-status-message p{margin:4px 0 0 36px}.post-status-hidden{background-color:#f44336;color:#fff}.post-status-unapproved{background-color:#651fff;color:#fff}.post-status-protected{background-color:#555;color:#fff}.post-footer .pull-left{margin-right:16px}.post-footer .pull-right{margin-left:16px}.post-footer p{padding-top:7px;padding-bottom:6px;margin-bottom:0}.post-attachments{padding:6px 16px}.post-attachments .row>div{margin:10px 0}.post-attachments .post-attachment-preview{float:left;height:40px;width:40px;text-align:center}.post-attachments .post-attachment{margin-left:52px}.post-attachments .post-thumbnail{display:block;background-size:cover;background-position:center;border-radius:3px;width:40px;height:40px}.post-attachments .material-icon{width:28px;height:28px;position:relative;top:5px;font-size:28px;line-height:28px}.post-attachments .material-icon:active,.post-attachments .material-icon:focus,.post-attachments .material-icon:hover,.post-attachments .material-icon:link,.post-attachments .material-icon:visited{color:#222;text-decoration:none}.post-attachments .post-attachment-description{margin:0;padding:0;color:#777;font-size:12px}.post-feed .post-side .media-heading{margin:0;font-size:14px}.post-feed .post-side .user-title{margin:0;font-size:12px}.post-feed .post-side .btn{display:inline-block}.post-feed .post-side img{margin-top:0;width:36px;height:36px}.post-feed .post-heading{height:auto;margin:10px 0}.post-feed .post-heading .btn{margin-right:16px;max-width:100%;text-align:left;white-space:normal}.posts-list .event{margin-bottom:20px;color:#777}.posts-list .event .media{margin-top:5px}.posts-list .event-label .label-unread{background-color:#43a047;color:#fff}.posts-list .event .text-right{padding-right:0;text-align:right}.posts-list .event .text-right .material-icon{margin-right:-12px;height:28px;width:28px;font-size:28px;line-height:28px;text-align:center}.posts-list .event .text-left{padding-left:24px}.posts-list .event .event-message{margin-bottom:5px;font-size:18px}.posts-list .event .event-info{margin:0;font-size:12px}.posts-list .event .event-info li{margin-right:12px}.posts-list .event .event-info li:last-child{margin-right:0}.posts-list .event .event-controls .btn-link{border:0;margin:0 12px 0 0;padding:0;font-size:12px}.posts-list .event .event-controls .btn-link:last-child{margin-right:0}@media screen and (max-width:767px){.posts-list .event .text-right{width:28px;text-align:right}.posts-list .event .text-left:first-child{padding-left:0}.posts-list .event .event-info{margin-top:5px}.posts-list .event .event-controls{clear:both;margin-top:5px}.posts-list .event .event-controls .btn-link{margin-right:20px;font-size:14px}.posts-list .event .event-controls .btn-link:last-child{margin-right:0}.post-changelog-toolbar .post-change-label{text-align:center}}.post-changelog-diff{padding:0;margin:0}.post-changelog-diff .list-unstyled{padding:0;margin:5px 0}.post-changelog-diff .diff-item{padding:5px 10px}.post-changelog-diff .diff-item-sub{color:#f44336}.post-changelog-diff .diff-item-add{color:#43a047}.post-changelog-toolbar .row{margin-left:-12px;margin-right:-12px}@media screen and (max-width:767px){.page-error .message-panel,.page-message .message-panel{text-align:center}.page-error .message-icon,.page-message .message-icon{margin:30px;font-size:80px}}@media screen and (min-width:768px){.page-error .message-panel,.page-message .message-panel{margin:60px auto;max-width:779.35px;overflow:auto}.page-error .message-icon,.page-message .message-icon{float:left}.page-error .message-icon .material-icon,.page-message .message-icon .material-icon{font-size:80px}.page-error .message-body,.page-message .message-body{margin-top:16px;margin-left:100px;font-size:18px}.page-error .message-body p.lead,.page-message .message-body p.lead{font-size:36px}}.threads-list{margin-bottom:20px}.threads-list .thread-title,.threads-list .thread-title:active,.threads-list .thread-title:focus,.threads-list .thread-title:hover,.threads-list .thread-title:link,.threads-list .thread-title:visited{font-size:18px;font-weight:400}.thread-last-action .media-body,.thread-last-action .media-left{padding-top:2px}.threads-list .thread-options{padding-top:5px}.threads-list .thread-main .media-left{padding-top:2px;padding-bottom:1px}.threads-list .thread-details-top{overflow-x:auto;white-space:nowrap}.threads-list .thread-details-bottom div>a,.threads-list .thread-details-bottom div>span,.threads-list .thread-details-top>a,.threads-list .thread-details-top>span{margin-right:16px;font-size:12px;font-weight:400}.threads-list .thread-details-bottom div>a>.material-icon,.threads-list .thread-details-bottom div>span>.material-icon,.threads-list .thread-details-top>a>.material-icon,.threads-list .thread-details-top>span>.material-icon{position:relative;top:-1px}.threads-list .thread-details-bottom div>a .detail-text,.threads-list .thread-details-bottom div>span .detail-text,.threads-list .thread-details-top>a .detail-text,.threads-list .thread-details-top>span .detail-text{margin-left:2px}@media screen and (max-width:991px){.threads-list .thread-details-bottom div>a,.threads-list .thread-details-bottom div>span,.threads-list .thread-details-top>a,.threads-list .thread-details-top>span{margin-right:12px}}@media screen and (max-width:767px){.threads-list .thread-details-bottom{margin-top:8px}.threads-list .thread-details-top{margin-bottom:6px}}@media screen and (min-width:768px){.threads-list .thread-details-top{margin-left:50px}}.thread-last-action{padding-top:1px}.thread-last-action .thread-last-poster{display:block}.thread-options-xs{margin-top:-10px;margin-bottom:-20px;position:relative;top:5px}.thread-options-xs .btn{padding:0 2px;font-size:12px}.thread-options-xs .btn .material-icon{width:14px;height:14px;font-size:14px;line-height:14px}.threads-diff-message{padding:0}.threads-diff-message .btn{border-bottom-left-radius:0;border-bottom-right-radius:0;padding:10px 16px;width:100%;overflow:none;text-align:left}.threads-diff-message .btn .material-icon{margin-right:4px;width:24px;font-size:24px;height:24px}@media screen and (max-width:991px){.threads-diff-message .btn{text-align:center;white-space:normal;word-wrap:break-word}.threads-diff-message .btn .material-icon{display:none}}.threads-list .thread-preview .ui-preview-text{margin-right:16px}.threads-list .thread-preview .thread-details-bottom div .ui-preview-text,.threads-list .thread-preview .thread-details-top .ui-preview-text{height:9.6px}.threads-list .thread-preview .thread-details-bottom{margin-top:6px}.threads-list .thread-preview .thread-details-top{margin-bottom:6px}.threads-list .thread-busy .thread-row{-webkit-animation:thread-busy-animation .6s linear infinite;-o-animation:thread-busy-animation .6s linear infinite;animation:thread-busy-animation .6s linear infinite}@keyframes thread-busy-animation{0%,100%{opacity:.2;filter:alpha(opacity=20)}50%{opacity:.5;filter:alpha(opacity=50)}}.btn-danger.disabled,.btn-danger.disabled:active,.btn-danger.disabled:hover,.btn-danger:disabled,.btn-danger:disabled:hover,.btn-default.btn-outline.disabled,.btn-default.btn-outline.disabled:active,.btn-default.btn-outline.disabled:hover,.btn-default.btn-outline:disabled,.btn-default.btn-outline:disabled:hover,.btn-default.disabled,.btn-default.disabled:active,.btn-default.disabled:hover,.btn-default:disabled,.btn-default:disabled:hover,.btn-primary.btn-outline.disabled,.btn-primary.btn-outline.disabled:active,.btn-primary.btn-outline.disabled:hover,.btn-primary.btn-outline:disabled,.btn-primary.btn-outline:disabled:hover,.btn-primary.disabled,.btn-primary.disabled:active,.btn-primary.disabled:hover,.btn-primary:disabled,.btn-primary:disabled:hover,.btn-register.disabled,.btn-register.disabled:active,.btn-register.disabled:hover,.btn-register:disabled,.btn-register:disabled:hover,.btn-sign-in.disabled,.btn-sign-in.disabled:active,.btn-sign-in.disabled:hover,.btn-sign-in:disabled,.btn-sign-in:disabled:hover,.btn-success.disabled,.btn-success.disabled:active,.btn-success.disabled:hover,.btn-success:disabled,.btn-success:disabled:hover,.threads-diff-message .btn.disabled,.threads-diff-message .btn.disabled:active,.threads-diff-message .btn.disabled:hover,.threads-diff-message .btn:disabled,.threads-diff-message .btn:disabled:hover{opacity:.25;filter:alpha(opacity=25)}.active-posters li{display:block;overflow:auto}.active-posters .rank-user-avatar{float:left}.active-posters .rank-user{float:left;margin-top:3px}@media screen and (max-width:991px){.active-posters .rank-user-avatar{height:42px}.active-posters .rank-user-avatar img{width:36px;height:36px;position:relative;top:3px}.active-posters .rank-user{margin-left:13.2px;width:40%}}@media screen and (max-width:767px){.active-posters .rank-user{float:none;margin-left:50px;width:auto}.active-posters .user-details{margin-top:3px}.active-posters .user-details .rank-name,.active-posters .user-details .user-title{font-weight:400}}@media screen and (min-width:992px){.active-posters .rank-user{margin-left:16px;width:25%}.active-posters .rank-user .user-name{font-size:18px}}.active-posters .user-details{overflow:auto;font-family:Sans-Serif}.active-posters .user-details .rank-name,.active-posters .user-details .user-status,.active-posters .user-details .user-title{display:block;float:left;margin-right:3px;font-size:12px}@media screen and (min-width:992px){.active-posters .user-details .rank-name,.active-posters .user-details .user-status,.active-posters .user-details .user-title{margin-right:8px}.active-posters .user-details{overflow:visible}.active-posters .user-details .rank-name,.active-posters .user-details .user-title{height:14px;overflow:hidden;position:relative;top:1px;vertical-align:baseline}}.active-posters .user-details .user-title{margin-right:0}.active-posters .user-status{overflow:auto;position:relative;top:1px}.active-posters .user-status span{display:block;float:left}@media screen and (min-width:992px){.active-posters .user-status{height:14px;overflow:hidden}}.active-posters .user-status .status-icon{position:relative}@media screen and (max-width:991px){.active-posters .user-status .status-icon{top:0;width:12px;height:12px;font-size:12px;line-height:12px}}@media screen and (min-width:992px){.active-posters .user-status .status-icon{top:1px;margin-right:3px;width:13px;height:13px;font-size:13px;line-height:13px}}.active-posters .rank-name .ui-preview-text,.active-posters .status-label.ui-preview-text,.active-posters .user-title .ui-preview-text{height:11px;position:relative;top:2px;font-size:11px;line-height:11px}.active-posters .rank-name .ui-preview-text,.active-posters .user-title .ui-preview-text{position:static}.active-posters .rank-position small,.active-posters .rank-position strong,.active-posters .rank-posts-counted small,.active-posters .rank-posts-counted strong,.active-posters .rank-posts-total small,.active-posters .rank-posts-total strong{display:block}@media screen and (max-width:991px){.active-posters .rank-position,.active-posters .rank-posts-counted,.active-posters .rank-posts-total{overflow:auto}.active-posters .rank-position small,.active-posters .rank-position strong,.active-posters .rank-posts-counted small,.active-posters .rank-posts-counted strong,.active-posters .rank-posts-total small,.active-posters .rank-posts-total strong{float:left;font-size:10.5px}.active-posters .rank-position strong,.active-posters .rank-posts-counted strong,.active-posters .rank-posts-total strong{min-width:30px;margin-right:3px;text-align:right}.active-posters .rank-position .ui-preview-text,.active-posters .rank-posts-counted .ui-preview-text,.active-posters .rank-posts-total .ui-preview-text{height:8px;position:relative;top:-1px;font-size:8px;line-height:8px}}@media screen and (min-width:992px){.active-posters .rank-position,.active-posters .rank-posts-counted,.active-posters .rank-posts-total{float:left;margin-top:3px;width:23%;font-size:18px;text-align:center}.active-posters .rank-position small,.active-posters .rank-posts-counted small,.active-posters .rank-posts-total small{font-size:12px;font-weight:400}}.user-compact-stats .rank-position small,.user-compact-stats .rank-position strong,.user-compact-stats .rank-posts-counted small,.user-compact-stats .rank-posts-counted strong{display:inline-block;float:none}.user-compact-stats .rank-position strong,.user-compact-stats .rank-posts-counted strong{min-width:auto}.user-compact-stats .rank-position small,.user-compact-stats .rank-posts-counted small{margin-right:20px}@media screen and (min-width:768px) and (max-width:991px){.active-posters .rank-position{margin-top:6px}.active-posters .rank-posts-total{display:none}}.page-user-profile .page-header{padding-top:20px}.page-user-profile .page-header .alert{margin-bottom:20px;text-align:center}.page-user-profile .page-header h1{margin-bottom:0}.page-user-profile .page-header .btn-aligned{margin-top:0}@media screen and (max-width:767px){.page-user-profile .page-header,.page-user-profile .page-header .header-stats ul{text-align:center}.page-user-profile .page-header img{clear:both;margin-top:20px;width:100px;height:100px}.page-user-profile .page-header h1{margin-top:20px;font-size:28px}.page-user-profile .page-header .header-stats ul li{display:inline-block;white-space:nowrap}.page-user-profile .profile-side-avatar{display:none}}@media screen and (min-width:768px) and (max-width:991px){.page-user-profile .page-header h1,.page-user-profile .page-header img{float:left}.page-user-profile .page-header img{margin-top:20px;margin-right:24px;width:80px;height:80px}.page-user-profile .page-header h1{position:relative;top:25px}.page-user-profile .page-header .header-stats{margin-left:112px;margin-top:25px;margin-bottom:-45px;position:relative;bottom:50px}}@media screen and (min-width:992px){.page-user-profile .page-header .user-avatar-sm{display:none}.page-user-profile .page-header h1{position:relative;top:5px}.page-user-profile .page-header .header-stats ul li{display:block;float:left}.page-user-profile .profile-side-avatar img{width:100%;height:auto;margin-top:-140px;margin-bottom:20px}.username-history li{display:block;overflow:auto}}.username-history .change-avatar{float:left}.username-history .change-avatar a,.username-history .change-avatar span{margin-right:10px}.username-history .change-avatar a img,.username-history .change-avatar span img{width:42px;height:42px}.username-history .change{min-height:20px;overflow:auto}.username-history .change span{display:block;float:left}.username-history .change .material-icon{margin:0 7px;position:relative;top:4px}.search-footer p{margin-top:20px;color:#555;font-size:12px;text-align:center}@media screen and (min-width:768px){.page-search-form{padding-top:40px}}@media screen and (min-width:992px){.username-history .change-avatar a img,.username-history .change-avatar span img{width:18px;height:18px;position:relative;bottom:1px}.username-history .change-author{float:left;width:30%}.username-history .change{float:left;width:40%}.username-history .change-date{float:left;width:20%}.page-search-form{padding-bottom:40px}.page-search-form h1{position:relative;top:5px}.page-search-form .form-group{margin-bottom:0}}.hljs{display:block;overflow-x:auto;padding:.5em;background:#eee;color:#000}.hljs-addition,.hljs-attribute,.hljs-emphasis,.hljs-link{color:#070}.hljs-emphasis{font-style:italic}.hljs-deletion,.hljs-string,.hljs-strong{color:#d14}.hljs-strong{font-weight:700}.hljs-comment,.hljs-quote{color:#998;font-style:italic}.hljs-section,.hljs-title{color:#900}.hljs-class .hljs-title,.hljs-type{color:#458}.hljs-template-variable,.hljs-variable{color:#369}.hljs-bullet{color:#970}.hljs-meta{color:#34b}.hljs-code,.hljs-keyword,.hljs-literal,.hljs-number,.hljs-selector-tag{color:#099}.hljs-regexp{background-color:#fff0ff;color:#808}.hljs-symbol{color:#990073}.hljs-name,.hljs-selector-class,.hljs-selector-id,.hljs-tag{color:#070}.atwho-view{position:absolute;top:0;left:0;display:none;margin-top:18px;background:#fff;color:#000;border:1px solid #DDD;border-radius:3px;box-shadow:0 0 5px rgba(0,0,0,.1);min-width:120px;z-index:11110!important}.atwho-view .atwho-header{padding:5px;margin:5px;cursor:pointer;border-bottom:solid 1px #eaeff1;color:#6f8092;font-size:11px;font-weight:700}.atwho-view .atwho-header .small{color:#6f8092;float:right;padding-top:2px;margin-right:-5px;font-size:12px;font-weight:400}.atwho-view .atwho-header:hover{cursor:default}.atwho-view .cur{background:#36F;color:#fff}.atwho-view .cur small{color:#fff}.atwho-view strong{color:#36F}.atwho-view .cur strong{color:#fff;font:700}.atwho-view ul{list-style:none;padding:0;margin:auto;max-height:200px;overflow-y:auto}.atwho-view ul li{display:block;padding:5px 10px;border-bottom:1px solid #DDD;cursor:pointer}.atwho-view small{font-size:smaller;color:#777;font-weight:400}#misago-container,body,html{background:#fff}abbr{outline:0;text-decoration:none}.shadow-2dp{box-shadow:0 2px 2px 0 rgba(0,0,0,.04),0 3px 1px -2px rgba(0,0,0,.06),0 1px 5px 0 rgba(0,0,0,.12)}.shadow-3dp{box-shadow:0 3px 4px 0 rgba(0,0,0,.04),0 3px 3px -2px rgba(0,0,0,.06),0 1px 8px 0 rgba(0,0,0,.12)}.shadow-4dp{box-shadow:0 4px 5px 0 rgba(0,0,0,.04),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.06)}.shadow-6dp{box-shadow:0 6px 10px 0 rgba(0,0,0,.04),0 1px 18px 0 rgba(0,0,0,.12),0 3px 5px -1px rgba(0,0,0,.06)}.shadow-8dp{box-shadow:0 8px 10px 1px rgba(0,0,0,.04),0 3px 14px 2px rgba(0,0,0,.12),0 5px 5px -3px rgba(0,0,0,.06)}.shadow-16dp{box-shadow:0 16px 24px 2px rgba(0,0,0,.04),0 6px 30px 5px rgba(0,0,0,.12),0 8px 10px -5px rgba(0,0,0,.06)}.shadow-24dp{box-shadow:0 9px 46px 8px rgba(0,0,0,.04),0 11px 15px -7px rgba(0,0,0,.12),0 24px 38px 3px rgba(0,0,0,.06)}.btn-default,.btn-default.disabled,.btn-default.disabled:active,.btn-default.disabled:hover,.btn-default:disabled,.btn-default:disabled:hover{background:#f3f3f3;border:1px solid #f3f3f3;color:#757575;-webkit-box-shadow:none;box-shadow:none}.btn-default:focus,.btn-default:hover{background:#e0e0e0;border:1px solid #e0e0e0;color:#212121;-webkit-box-shadow:none;box-shadow:none}.btn-default:active,.btn-default:active:focus,.dropdown.open .btn-default,.dropdown.open .btn-default:active:focus,.dropdown.open .btn-default:focus,.dropdown.open .btn-default:hover{background:#bdbdbd;border:1px solid #bdbdbd;color:#212121;-webkit-box-shadow:none;box-shadow:none}.btn-default.btn-loading,.btn-default.btn-loading:active,.btn-default.btn-loading:active:focus,.btn-default.btn-loading:disabled,.btn-default.btn-loading:disabled:hover,.btn-default.btn-loading:focus,.btn-default.btn-loading:hover{color:transparent}.btn-primary,.btn-primary.disabled,.btn-primary.disabled:active,.btn-primary.disabled:hover,.btn-primary:disabled,.btn-primary:disabled:hover{background:#a36eff;border:1px solid #a36eff;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-primary:focus,.btn-primary:hover{background:#b388ff;border:1px solid #b388ff;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-primary:active,.btn-primary:active:focus,.dropdown.open .btn-primary,.dropdown.open .btn-primary:active:focus,.dropdown.open .btn-primary:focus,.dropdown.open .btn-primary:hover{background:#823bff;border:1px solid #823bff;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-primary.btn-loading,.btn-primary.btn-loading:active,.btn-primary.btn-loading:active:focus,.btn-primary.btn-loading:disabled,.btn-primary.btn-loading:disabled:hover,.btn-primary.btn-loading:focus,.btn-primary.btn-loading:hover{color:transparent}.btn-success,.btn-success.disabled,.btn-success.disabled:active,.btn-success.disabled:hover,.btn-success:disabled,.btn-success:disabled:hover{background:#00c853;border:1px solid #00c853;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-success:focus,.btn-success:hover{background:#00af48;border:1px solid #00af48;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-success:active,.btn-success:active:focus,.dropdown.open .btn-success,.dropdown.open .btn-success:active:focus,.dropdown.open .btn-success:focus,.dropdown.open .btn-success:hover{background:#007c33;border:1px solid #007c33;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-success.btn-loading,.btn-success.btn-loading:active,.btn-success.btn-loading:active:focus,.btn-success.btn-loading:disabled,.btn-success.btn-loading:disabled:hover,.btn-success.btn-loading:focus,.btn-success.btn-loading:hover{color:transparent}.btn-danger,.btn-danger.disabled,.btn-danger.disabled:active,.btn-danger.disabled:hover,.btn-danger:disabled,.btn-danger:disabled:hover{background:#ef5350;border:1px solid #ef5350;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-danger:focus,.btn-danger:hover{background:#ff8a80;border:1px solid #ff8a80;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-danger:active,.btn-danger:active:focus,.dropdown.open .btn-danger,.dropdown.open .btn-danger:active:focus,.dropdown.open .btn-danger:focus,.dropdown.open .btn-danger:hover{background:#d32f2f;border:1px solid #d32f2f;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-danger.btn-loading,.btn-danger.btn-loading:active,.btn-danger.btn-loading:active:focus,.btn-danger.btn-loading:disabled,.btn-danger.btn-loading:disabled:hover,.btn-danger.btn-loading:focus,.btn-danger.btn-loading:hover{color:transparent}.btn-default.btn-outline,.btn-default.btn-outline.disabled,.btn-default.btn-outline.disabled:active,.btn-default.btn-outline.disabled:hover,.btn-default.btn-outline:disabled,.btn-default.btn-outline:disabled:hover{background:#e0e0e0;border:1px solid #e0e0e0;color:#616161;-webkit-box-shadow:none;box-shadow:none}.btn-default.btn-outline:focus,.btn-default.btn-outline:hover{background:#bdbdbd;border:1px solid #bdbdbd;color:#424242;-webkit-box-shadow:none;box-shadow:none}.btn-default.btn-outline:active,.btn-default.btn-outline:active:focus,.dropdown.open .btn-default.btn-outline,.dropdown.open .btn-default.btn-outline:active:focus,.dropdown.open .btn-default.btn-outline:focus,.dropdown.open .btn-default.btn-outline:hover{background:#eee;border:1px solid #eee;color:#212121;-webkit-box-shadow:none;box-shadow:none}.btn-default.btn-outline.btn-loading,.btn-default.btn-outline.btn-loading:active,.btn-default.btn-outline.btn-loading:active:focus,.btn-default.btn-outline.btn-loading:disabled,.btn-default.btn-outline.btn-loading:disabled:hover,.btn-default.btn-outline.btn-loading:focus,.btn-default.btn-outline.btn-loading:hover{background:#e0e0e0;border:1px solid #e0e0e0;color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-primary.btn-outline,.btn-primary.btn-outline.disabled,.btn-primary.btn-outline.disabled:active,.btn-primary.btn-outline.disabled:hover,.btn-primary.btn-outline:disabled,.btn-primary.btn-outline:disabled:hover{background:#7c4dff;border:1px solid #7c4dff;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-primary.btn-outline:focus,.btn-primary.btn-outline:hover{background:#651fff;border:1px solid #651fff;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-primary.btn-outline:active,.btn-primary.btn-outline:active:focus,.dropdown.open .btn-primary.btn-outline,.dropdown.open .btn-primary.btn-outline:active:focus,.dropdown.open .btn-primary.btn-outline:focus,.dropdown.open .btn-primary.btn-outline:hover{background:#6200ea;border:1px solid #6200ea;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-primary.btn-outline.btn-loading,.btn-primary.btn-outline.btn-loading:active,.btn-primary.btn-outline.btn-loading:active:focus,.btn-primary.btn-outline.btn-loading:disabled,.btn-primary.btn-outline.btn-loading:disabled:hover,.btn-primary.btn-outline.btn-loading:focus,.btn-primary.btn-outline.btn-loading:hover{background:#7c4dff;border:1px solid #7c4dff;color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-sign-in{border-radius:100px}.btn-sign-in,.btn-sign-in.disabled,.btn-sign-in.disabled:active,.btn-sign-in.disabled:hover,.btn-sign-in:disabled,.btn-sign-in:disabled:hover{background:0 0;border:1px solid transparent;color:#e0e0e0;-webkit-box-shadow:none;box-shadow:none}.btn-sign-in:focus,.btn-sign-in:hover{background:#666060;border:1px solid #666060;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-sign-in:active,.btn-sign-in:active:focus,.dropdown.open .btn-sign-in,.dropdown.open .btn-sign-in:active:focus,.dropdown.open .btn-sign-in:focus,.dropdown.open .btn-sign-in:hover{background:#424242;border:1px solid #424242;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-sign-in.btn-loading,.btn-sign-in.btn-loading:active,.btn-sign-in.btn-loading:active:focus,.btn-sign-in.btn-loading:disabled,.btn-sign-in.btn-loading:disabled:hover,.btn-sign-in.btn-loading:focus,.btn-sign-in.btn-loading:hover{background:0 0;border:1px solid transparent;color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-register{border-radius:100px}.btn-register,.btn-register.disabled,.btn-register.disabled:active,.btn-register.disabled:hover,.btn-register:disabled,.btn-register:disabled:hover{background:0 0;border:1px solid #757575;color:#e0e0e0;-webkit-box-shadow:none;box-shadow:none}.btn-register:focus,.btn-register:hover{background:#fff;border:1px solid #fff;color:#212121;-webkit-box-shadow:none;box-shadow:none}.btn-register:active,.btn-register:active:focus,.dropdown.open .btn-register,.dropdown.open .btn-register:active:focus,.dropdown.open .btn-register:focus,.dropdown.open .btn-register:hover{background:#bdbdbd;border:1px solid #bdbdbd;color:#212121;-webkit-box-shadow:none;box-shadow:none}.btn-register.btn-loading,.btn-register.btn-loading:active,.btn-register.btn-loading:active:focus,.btn-register.btn-loading:disabled,.btn-register.btn-loading:disabled:hover,.btn-register.btn-loading:focus,.btn-register.btn-loading:hover{background:0 0;border:1px solid #757575;color:transparent;-webkit-box-shadow:none;box-shadow:none}input.form-control,textarea.form-control{border-color:#ccc;box-shadow:inset 0 0 0 1px #ccc}input.form-control:focus,textarea.form-control:focus{border-color:#66afe9;box-shadow:inset 0 0 0 1px #66afe9}.has-error input.form-control{border-color:#f44336;box-shadow:inset 0 0 0 1px #f44336}.has-error input.form-control:focus{border-color:#f99d97;box-shadow:inset 0 0 0 1px #f99d97}.has-success input.form-control{border-color:#00c853;box-shadow:inset 0 0 0 1px #00c853}.has-success input.form-control:focus{border-color:#2fff85;box-shadow:inset 0 0 0 1px #2fff85}.password-strength{margin-top:10px}.password-strength .text-small{margin-top:4px;color:#616161;font-size:12px}.password-strength .progress{margin:0}.auth-message{background:#651fff;padding:80px 0;box-shadow:0 8px 10px 1px rgba(0,0,0,.04),0 3px 14px 2px rgba(0,0,0,.12),0 5px 5px -3px rgba(0,0,0,.06)}.auth-message p{color:#fff}.auth-message .btn{background:#4527a0;border-color:#4527a0;color:#fff}.auth-message .btn:focus,.auth-message .btn:hover{background:#b388ff;border-color:#b388ff;color:#fff}.auth-message .btn:active{background:#fff;border-color:#fff;color:#651fff}.navbar-misago,.page-header{border-bottom:none}.dropdown-menu{border:none;box-shadow:0 2px 2px 0 rgba(0,0,0,.04),0 3px 1px -2px rgba(0,0,0,.06),0 1px 5px 0 rgba(0,0,0,.12)}.list-group,.page-header-bg{box-shadow:0 4px 5px 0 rgba(0,0,0,.04),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.06)}.mobile-dropdown.open .dropdown-menu,.navbar-misago .user-dropdown{background:#2f2f2f}.mobile-dropdown.open .dropdown-menu .btn-link,.mobile-dropdown.open .dropdown-menu a,.mobile-dropdown.open .dropdown-menu a:link,.mobile-dropdown.open .dropdown-menu a:visited,.navbar-misago .user-dropdown .btn-link,.navbar-misago .user-dropdown a,.navbar-misago .user-dropdown a:link,.navbar-misago .user-dropdown a:visited{color:#eee}.mobile-dropdown.open .dropdown-menu .btn-link:active,.mobile-dropdown.open .dropdown-menu .btn-link:focus,.mobile-dropdown.open .dropdown-menu .btn-link:hover,.mobile-dropdown.open .dropdown-menu a:active,.mobile-dropdown.open .dropdown-menu a:focus,.mobile-dropdown.open .dropdown-menu a:hover,.navbar-misago .user-dropdown .btn-link:active,.navbar-misago .user-dropdown .btn-link:focus,.navbar-misago .user-dropdown .btn-link:hover,.navbar-misago .user-dropdown a:active,.navbar-misago .user-dropdown a:focus,.navbar-misago .user-dropdown a:hover{background:#651fff;color:#fff}.mobile-dropdown.open .dropdown-menu .divider,.navbar-misago .user-dropdown .divider{background-color:#777}.user-dropdown .dropdown-header strong{display:block;color:#fff;font-size:18px;font-weight:300}.user-dropdown .dropdown-header .user-stats{margin-top:10px;color:#d9d9d9;font-size:12px}.user-dropdown .dropdown-header .user-stats .material-icon{margin-right:3px;position:relative;bottom:1px;width:14px;height:14px;font-size:14px}.user-dropdown .guest-preview{padding-bottom:10px}.dropdown-search-loader,.dropdown-search-message{padding:10px 16px;border-top:1px solid #eee}.user-dropdown .guest-preview h4{color:#fff}.user-dropdown .guest-preview p{color:#d9d9d9}.user-dropdown .badge{background-color:#f44336}.user-dropdown .btn-link:active .badge,.user-dropdown .btn-link:focus .badge,.user-dropdown .btn-link:hover .badge,.user-dropdown a:active .badge,.user-dropdown a:focus .badge,.user-dropdown a:hover .badge{background-color:#fff;color:#f44336}.mobile-dropdown.open{margin:0}.navbar-misago .user-avatar{background:#fff;border-radius:3px}.navbar-misago .brand-link img{border-radius:3px}.dropdown-search-results{border-radius:0 0 4px 4px}.list-group,.threads-list .thread-last-action img,.threads-list .thread-main img{border-radius:4px}.dropdown-search-message{color:#777}.dropdown-search-header{border-top:1px solid #eee;padding:8px 20px;color:#777;font-weight:700}.dropdown-search-thread small,.dropdown-search-user small{color:#777}.dropdown-search-thread:active small,.dropdown-search-thread:focus small,.dropdown-search-thread:hover small,.dropdown-search-user:active small,.dropdown-search-user:focus small,.dropdown-search-user:hover small{color:#fff}.dropdown-search-thread .dropdown-search-post-content{overflow:hidden;white-space:normal;max-height:47px}.dropdown-search-thread .dropdown-search-post-footer{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-search-footer{padding-bottom:5px}.dropdown-search-footer:last-child{padding-bottom:0}.dropdown-menu>li.dropdown-search-footer>a{font-size:small}.page-header{background:0 0}.page-header-bg{background:url(../img/page-header.svg) #512da8;background-size:cover}@media screen and (min-width:992px){.page-header-bg{margin-bottom:40px}}.page-header h1{color:#fff;font-weight:400}.header-stats{color:#ede7f6}.header-stats li a,.header-stats li a:link,.header-stats li a:visited{color:#fff}.header-stats li a:active,.header-stats li a:focus,.header-stats li a:hover{color:#f5f5f5}.page-header .go-back-sm,.page-header .go-back-sm:link,.page-header .go-back-sm:visited{color:#ede7f6}.page-header .go-back-sm:active,.page-header .go-back-sm:focus,.page-header .go-back-sm:hover{color:#f5f5f5}.page-header .breadcrumb,.page-header .breadcrumb a,.page-header .breadcrumb a:link,.page-header .breadcrumb a:visited{color:#ede7f6}.page-header .breadcrumb a:active,.page-header .breadcrumb a:focus,.page-header .breadcrumb a:hover{color:#fff}.page-header .breadcrumb li:before{color:#ede7f6;text-shadow:0 1px 1px #512da8}.page-tabs{background-color:rgba(255,255,255,.6)}.page-tabs li a{padding-bottom:7px}.page-tabs li a,.page-tabs li a:link,.page-tabs li a:visited{background-color:transparent;border-bottom:3px solid transparent;color:#777}.page-tabs li a:focus,.page-tabs li a:hover{background-color:transparent;border-bottom:3px solid #e0e0e0;color:#212121}@media screen and (max-width:991px){.page-tabs li a:focus,.page-tabs li a:hover{background-color:transparent;border-bottom:3px solid transparent;color:#777}}.page-tabs li.active a,.page-tabs li.active a:active,.page-tabs li.active a:focus,.page-tabs li.active a:hover,.page-tabs li.active a:link,.page-tabs li.active a:visited{background-color:transparent;border-bottom:3px solid #651fff;color:#651fff}.misago-footer{background:#fff;margin-top:40px}.misago-footer .footer-content{border-top:1px solid #e6e6e6;padding-top:20px;color:#bdbdbd}@media screen and (max-width:767px){.misago-footer .footer-content{text-align:center}.misago-footer .footer-content .site-footnote{clear:both;margin-bottom:15px}}.misago-footer .footer-content a,.misago-footer .footer-content a:link,.misago-footer .footer-content a:visited{color:#757575}.misago-footer .footer-content a:focus,.misago-footer .footer-content a:hover{color:#212121}.misago-footer .footer-content .misago-branding,.misago-footer .footer-content .misago-branding:link,.misago-footer .footer-content .misago-branding:visited{color:#b388ff}.misago-footer .footer-content .misago-branding:focus,.misago-footer .footer-content .misago-branding:hover{color:#7c4dff}.list-group .list-group-item{border-left:none;border-right:none}.list-group .list-group-item:first-child{border-top:none}.list-group .list-group-item:last-child{border-bottom:none}.list-group-item.empty-message{padding-top:20px;padding-bottom:20px;text-align:center}.list-group-item.empty-message p{margin:10px 0}.threads-list .thread-last-action .thread-last-reply,.threads-list .thread-last-action .thread-last-reply:link,.threads-list .thread-last-action .thread-last-reply:visited{color:#777;font-size:12px}.threads-list .thread-last-action .thread-last-reply:active,.threads-list .thread-last-action .thread-last-reply:focus,.threads-list .thread-last-action .thread-last-reply:hover{color:#555}.threads-list .thread-details-top{color:#777}.threads-list .thread-details-top a,.threads-list .thread-details-top a:link,.threads-list .thread-details-top a:visited{color:#777;font-size:12px}.threads-list .thread-details-top a:active,.threads-list .thread-details-top a:focus,.threads-list .thread-details-top a:hover{color:#212121}.threads-list .thread-details-top .thread-detail-new,.threads-list .thread-details-top .thread-detail-new:link,.threads-list .thread-details-top .thread-detail-new:visited{color:#a0f}.threads-list .thread-details-top .thread-detail-new:active,.threads-list .thread-details-top .thread-detail-new:focus,.threads-list .thread-details-top .thread-detail-new:hover{color:#80c}.threads-list .thread-details-top .thread-detail-pinned-globally{color:#3d5afe}.threads-list .thread-details-top .thread-detail-pinned-locally{color:#8c9eff}.threads-list .thread-details-top .thread-detail-unapproved{color:#ef6c00}.threads-list .thread-details-top .thread-detail-unapproved-posts{color:#f4511e}.threads-list .thread-details-bottom{color:#777}.threads-list .thread-details-bottom a,.threads-list .thread-details-bottom a:link,.threads-list .thread-details-bottom a:visited{color:#555;font-size:12px}.threads-list .thread-details-bottom a:active,.threads-list .thread-details-bottom a:focus,.threads-list .thread-details-bottom a:hover{color:#212121}.threads-list .thread-read .thread-title,.threads-list .thread-read .thread-title:active,.threads-list .thread-read .thread-title:focus,.threads-list .thread-read .thread-title:hover,.threads-list .thread-read .thread-title:link,.threads-list .thread-read .thread-title:visited{color:#555}.threads-diff-message .btn,.threads-diff-message .btn.disabled,.threads-diff-message .btn.disabled:active,.threads-diff-message .btn.disabled:hover,.threads-diff-message .btn:disabled,.threads-diff-message .btn:disabled:hover{background:#7c4dff;border:1px solid #7c4dff;color:#fff;-webkit-box-shadow:none;box-shadow:none}.threads-diff-message .btn:focus,.threads-diff-message .btn:hover{background:#6200ea;color:#fff;-webkit-box-shadow:none;box-shadow:none}.dropdown.open .threads-diff-message .btn,.dropdown.open .threads-diff-message .btn:active:focus,.dropdown.open .threads-diff-message .btn:focus,.dropdown.open .threads-diff-message .btn:hover,.threads-diff-message .btn:active,.threads-diff-message .btn:active:focus{background:#4d00b7;border:1px solid #4d00b7;color:#fff;-webkit-box-shadow:none;box-shadow:none}.panel,.threads-diff-message .btn,.threads-diff-message .btn:active,.threads-diff-message .btn:focus,.threads-diff-message .btn:focus:active,.threads-diff-message .btn:hover{border:none}.threads-diff-message .btn.btn-loading,.threads-diff-message .btn.btn-loading:active,.threads-diff-message .btn.btn-loading:active:focus,.threads-diff-message .btn.btn-loading:disabled,.threads-diff-message .btn.btn-loading:disabled:hover,.threads-diff-message .btn.btn-loading:focus,.threads-diff-message .btn.btn-loading:hover{color:transparent}.nav-side>a.active .badge{background:#651fff;color:#fff}.username-history .user-avatar{border-radius:4px}.panel{border-radius:4px;box-shadow:0 4px 5px 0 rgba(0,0,0,.04),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.06)}.panel .panel-footer,.panel .panel-heading{background:#fff}.panel .panel-title{color:#777}.panel .form-group+.form-group{margin-top:20px}.panel .panel-body>.form-group:first-child{margin-top:10px}.panel fieldset{margin-top:20px}.panel fieldset:first-child{margin-top:0}.panel fieldset legend{border:none;color:#555;font-weight:300}.poll-form .panel{margin:0}.panel-message-body .message-icon{color:#9575cd}.category-main .media-left .read-status{background:#eee;border-radius:4px;padding:5px 8px}.category-main .media-left .material-icon{height:14px;width:14px;color:#555;font-size:14px;line-height:14px}.category-main .media-left .read-status.item-new{background-color:#651fff}.category-main .media-left .read-status.item-new .material-icon{color:#fff}@media screen and (min-width:768px){.category-main .media-left{padding:5px 0}}.category-main .media-body{padding-left:12px}.list-group-category-no-description .category-main .media-heading{margin-top:10px}.category-main .media-heading a,.category-main .media-heading a:link,.category-main .media-heading a:visited{color:#333}.category-main .media-heading a:active,.category-main .media-heading a:focus,.category-main .media-heading a:hover{color:#212121}.category-stats{color:#555}.category-main .category-description p{font-size:12px}.category-main .category-description p:last-child{margin-bottom:0}.category-last-thread img{background-color:#fff;border-radius:4px}.category-last-thread .media-heading{margin-bottom:2px}@media screen and (max-width:767px){.category-main .media-body{padding-left:3.33px}.list-group-category-no-description .category-main .media-heading{margin-top:5px}.category-last-thread .media-heading{margin-top:10px}}.category-last-thread .list-inline{color:#777;font-size:12px}.category-last-thread .list-inline a,.category-last-thread .list-inline a:link,.category-last-thread .list-inline a:visited{color:#777}.category-last-thread .list-inline .item-title,.category-last-thread .list-inline .item-title:link,.category-last-thread .list-inline .item-title:visited,.category-last-thread .list-inline a:active,.category-last-thread .list-inline a:focus,.category-last-thread .list-inline a:hover{color:#333}.category-last-thread .list-inline .item-title:active,.category-last-thread .list-inline .item-title:focus,.category-last-thread .list-inline .item-title:hover{color:#212121}.category-thread-message{color:#777}.category-thread-message .material-icon{padding:6px 0;margin-right:3px}@media screen and (max-width:767px){.category-thread-message{padding-top:15px;font-size:12px}.category-thread-message .material-icon{padding:3px 0}.panel-participants p{margin-top:10px;text-align:center}}.participant-card .btn-user{border:0!important}.participant-card .dropdown-header-owner{color:#651fff}.participant-card .dropdown-header-owner .material-icon{width:14px;height:14px;font-size:14px;line-height:14px}.panel-poll .poll-chart,.panel-poll .poll-details{color:#777;font-size:12px}.participant-card .dropdown-header-owner .icon-text{margin-left:4px;position:relative;top:2px}.panel-participants p{color:#777}.panel-poll .poll-select-choices{margin-top:-10px}.panel-poll .poll-details{margin-bottom:20px}.panel-poll .progress{margin-top:6.67px;margin-bottom:5px}.panel-poll .poll-options,.posting-message .btn{margin-top:20px}.posting-message .material-icon{color:#9575cd}.post-side{color:#777}.post-side .poster-avatar{border-radius:4px}.post-side .user-title,.post-side .user-title a,.post-side .user-title a:active,.post-side .user-title a:focus,.post-side .user-title a:hover,.post-side .user-title a:link,.post-side .user-title a:visited{color:#555}.post-heading .label-unread{background-color:#a0f;margin-right:16px}.post-heading .label-protected{background-color:transparent;margin-left:24px;position:relative;top:1px;color:#bdbdbd}.post-heading .label-protected .material-icon{margin-right:2px;position:relative;top:-1px;font-size:16px;line-height:16px}.post-heading>.btn-link{padding-left:0;padding-right:0}.post-heading>.btn-link,.post-heading>.btn-link:link,.post-heading>.btn-link:visited{color:#777}.post-heading>.btn-link:active,.post-heading>.btn-link:focus,.post-heading>.btn-link:focus:active,.post-heading>.btn-link:hover{color:#212121;text-decoration:none}.post-heading .btn-see-edits{margin-left:24px}.post-status-message{border-radius:4px;margin-top:10px;padding:6px 12px}.post-body:last-child{padding-bottom:10px}.post-attachments{background-color:#f2f2f2;border:none;border-radius:4px;margin-bottom:30px}.post-attachments:last-child{margin-bottom:10px}@media screen and (max-width:767px){.post-status-message{font-size:12px}.post-status-message .material-icon{margin-top:3px}.post-status-message p{margin-top:0}.post-attachments{border-radius:0;margin:0 -15px 20px}}.misago-markup img,.user-card-avatar img,.user-card-small-avatar img{border-radius:4px}.post-footer>.btn-link{padding-left:0;padding-right:0}.post-footer>.btn-link,.post-footer>.btn-link:link,.post-footer>.btn-link:visited{color:#777}.post-footer>.btn-link:active,.post-footer>.btn-link:focus,.post-footer>.btn-link:focus:active,.post-footer>.btn-link:hover{color:#212121;text-decoration:none}.post-footer p{color:#777;font-size:12px}.post-body-hidden,.post-body-invalid{padding-top:10px;padding-bottom:10px}.post-body-hidden .lead,.post-body-invalid .lead{margin-bottom:10px}.post-body-hidden .text-muted,.post-body-invalid .text-muted{margin-bottom:0;font-size:12px}.post-hidden{opacity:.75;filter:alpha(opacity=75)}.post-feed .panel-body{padding-bottom:0}.post-feed .post-body{position:relative;padding-top:0;padding-bottom:20px;max-height:300px;overflow-y:hidden}.post-feed .post-body:after{box-shadow:0 0 16px 16px #fff;display:block;position:absolute;bottom:0;height:0;width:100%;content:'-';color:transparent}.posts-list .event .event-label{margin-bottom:5px}.posts-list .event .label-unread{background-color:#a0f;color:#fff}.posts-list .event-info .btn-link,.posts-list .event-info a,.posts-list .event-info a:link,.posts-list .event-info a:visited{color:#555}.posts-list .event-info .btn-link:active,.posts-list .event-info .btn-link:focus,.posts-list .event-info .btn-link:focus:active,.posts-list .event-info a:active,.posts-list .event-info a:focus,.posts-list .event-info a:focus:active{color:#212121}.posts-list .event-hidden{opacity:.33;filter:alpha(opacity=33)}.user-card-avatar{margin:20px 0}.user-card-avatar img{width:150px;height:150px}.user-card-username a,.user-card-username a:active,.user-card-username a:focus,.user-card-username a:hover,.user-card-username a:link,.user-card-username a:visited{color:#212121;font-size:18px;font-weight:700}.user-card-title a,.user-card-title a:link,.user-card-title a:visited,.user-card-title span{color:#555}.user-card-title a:active,.user-card-title a:focus,.user-card-title a:hover{color:#212121}@media screen and (min-width:768px){.user-card-stats{margin-top:20px}}.user-card-stats ul{margin:0}.user-card-stats li{display:inline-block;margin-right:12px;color:#777;font-size:12px}.user-card-stats li.user-stat-empty{display:none}@media screen and (min-width:768px){.user-card-stats li{margin:0 6px}li.user-stat-divider{display:block;margin:0}.user-card-stats{min-height:60px}}@media screen and (max-width:767px){li.user-stat-divider{display:none}.user-card-left{padding-right:0}}.progress,.progress .progress-bar{-webkit-box-shadow:none;box-shadow:none;height:8px}.misago-markup .quote-block,.misago-markup blockquote{background-color:#ffecb3;border-color:#b3e5fc;overflow:hidden;color:#3e2723}.misago-markup .quote-block .quote-heading,.misago-markup blockquote .quote-heading{background-color:#ffe082;border:none;color:#795548}.misago-markup .quote-block .quote-heading a,.misago-markup .quote-block .quote-heading a:link,.misago-markup .quote-block .quote-heading a:visited,.misago-markup blockquote .quote-heading a,.misago-markup blockquote .quote-heading a:link,.misago-markup blockquote .quote-heading a:visited{color:#5d4037}.misago-markup .quote-block .quote-heading a:active,.misago-markup .quote-block .quote-heading a:focus,.misago-markup .quote-block .quote-heading a:hover,.misago-markup blockquote .quote-heading a:active,.misago-markup blockquote .quote-heading a:focus,.misago-markup blockquote .quote-heading a:hover{color:#3e2723}.misago-markup .quote-block hr,.misago-markup blockquote hr{border-color:#ffca28}.misago-markup>.quote-block,.misago-markup>blockquote{background:#ffecb3;border:none;border-radius:4px}.misago-markup .quote-body,.misago-markup>.quote-block .quote-block,.misago-markup>blockquote .quote-block{background:#ffecb3}.misago-markup .quote-body>.quote-block,.misago-markup .quote-body>blockquote{border-color:#ffe082;border-radius:4px}.modal-header{background:#eee;border-bottom-color:#eee;border-radius:6px 6px 0 0;color:#424242}.modal-header .close{padding:0 6px;color:#424242;font-size:24px;line-height:24px;text-shadow:none}.modal-message .message-icon{color:#9575cd}.modal-body>.form-group{margin:20px 0}.modal-body>.form-group:first-child{margin-top:0}.modal-body>.form-group:last-child{margin-bottom:0}.modal-sign-in .modal-body{padding-top:0;padding-bottom:0}.modal-sign-in .modal-body>.form-group{margin:20px 0}.modal-register .legal-footnote{text-align:center}.modal-register .legal-footnote .material-icon{margin-right:4px;position:relative;bottom:1px;color:#777;font-size:28px;line-height:28px}.modal-register .legal-footnote a,.modal-register .legal-footnote a:link,.modal-register .legal-footnote a:visited{color:#777}.modal-register .legal-footnote a:active,.modal-register .legal-footnote a:focus,.modal-register .legal-footnote a:hover{color:#212121}.modal-avatar-index .avatar-preview{background:#fff;border-radius:6px}.modal-avatar-crop .cropit-preview{background:#fff;margin:20px 0}.modal-avatar-crop .cropit-image-zoom-input{margin-top:40px;margin-bottom:20px}.modal-post-likers .media{border-bottom:1px solid #eee;padding-bottom:15px}.modal-post-likers .media img{border-radius:4px;width:40px;height:40px}.modal-post-likers .media:last-child{border:none;padding-bottom:0}.well{border:none;box-shadow:0 4px 5px 0 rgba(0,0,0,.04),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.06)}.active-posters .rank-user-avatar img{border-radius:4px}.active-posters .user-details{color:#777}.active-posters .user-details a.rank-name,.active-posters .user-details a.rank-name:link,.active-posters .user-details a.rank-name:visited{color:#555;font-weight:400}.active-posters .user-details a.rank-name:active,.active-posters .user-details a.rank-name:focus,.active-posters .user-details a.rank-name:hover{color:#212121}.active-posters .user-details span.rank-name{color:#555;font-weight:400}.active-posters small{color:#777}.page-error .message-icon{color:#ef5350}.page-message .message-icon,.page-message-info .message-icon{color:#9575cd}.page-message-success .message-icon{color:#81c784}.page-options .message-line,.page-options .message-line a,.page-options .message-line a:link,.page-options .message-line a:visited{color:#777}.page-options .message-line a:active,.page-options .message-line a:focus,.page-options .message-line a:focus:active,.page-options .message-line a:hover{color:#212121}.page-user-profile .page-header img{background-color:#fff;border-radius:6px;box-shadow:0 2px 2px 0 rgba(0,0,0,.04),0 3px 1px -2px rgba(0,0,0,.06),0 1px 5px 0 rgba(0,0,0,.12)}.page-user-profile .page-header .user-status .status-icon{width:14px;height:14px;font-size:14px;line-height:14px}.page-user-profile .profile-side-avatar img{background-color:#fff;border-radius:6px;box-shadow:0 4px 5px 0 rgba(0,0,0,.04),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.06)}.panel-profile-details-group.panel .form-group{margin:0}.panel-profile-details-group .form-control-static p:last-child{margin-bottom:0}.list-group-item.list-group-category-has-flavor{border-left:5px solid #fff;padding-left:10px}.list-group-item.list-group-item-category-red{border-left-color:#f44336}.list-group-item.list-group-item-category-light-red{border-left-color:#ef9a9a}.list-group-item.list-group-item-category-pink{border-left-color:#e91e63}.list-group-item.list-group-item-category-light-pink{border-left-color:#f48fb1}.list-group-item.list-group-item-category-purple{border-left-color:#9c27b0}.list-group-item.list-group-item-category-light-purple{border-left-color:#ce93d8}.list-group-item.list-group-item-category-deep-purple{border-left-color:#673ab7}.list-group-item.list-group-item-category-indigo{border-left-color:#3f51b5}.list-group-item.list-group-item-category-light-indigo{border-left-color:#9fa8da}.list-group-item.list-group-item-category-blue{border-left-color:#2196f3}.list-group-item.list-group-item-category-light-blue{border-left-color:#81d4fa}.list-group-item.list-group-item-category-cyan{border-left-color:#00bcd4}.list-group-item.list-group-item-category-light-cyan{border-left-color:#80deea}.list-group-item.list-group-item-category-teal{border-left-color:#009688}.list-group-item.list-group-item-category-light-teal{border-left-color:#80cbc4}.list-group-item.list-group-item-category-green{border-left-color:#4caf50}.list-group-item.list-group-item-category-light-green{border-left-color:#aed581}.list-group-item.list-group-item-category-lime{border-left-color:#cddc39}.list-group-item.list-group-item-category-yellow{border-left-color:#ffeb3b}.list-group-item.list-group-item-category-amber{border-left-color:#ffc107}.list-group-item.list-group-item-category-orange{border-left-color:#ff9800}.list-group-item.list-group-item-category-deep-orange{border-left-color:#ff5722}.list-group-item.list-group-item-category-brown{border-left-color:#795548}.list-group-item.list-group-item-category-light-brown{border-left-color:#bcaaa4}.list-group-item.list-group-item-category-blue-grey{border-left-color:#607d8b}.list-group-item.list-group-item-category-light-blue-grey{border-left-color:#b0bec5}.list-group-item.list-group-item-category-grey{border-left-color:#9e9e9e}.list-group-item.list-group-item-category-black{border-left-color:#000}.post-primary .panel-body{border:2px solid #d1c4e9;border-radius:4px;padding:13px}.post-primary .user-title,.post-primary .user-title a,.post-primary .user-title a:active,.post-primary .user-title a:focus,.post-primary .user-title a:hover,.post-primary .user-title a:link,.post-primary .user-title a:visited{color:#6200ea}.post-success .panel-body{border:2px solid #c8e6c9;border-radius:4px;padding:13px}.post-success .user-title,.post-success .user-title a,.post-success .user-title a:active,.post-success .user-title a:focus,.post-success .user-title a:hover,.post-success .user-title a:link,.post-success .user-title a:visited{color:#388e3c}.post-warning .panel-body{border:2px solid #ffe0b2;border-radius:4px;padding:13px}.post-warning .user-title,.post-warning .user-title a,.post-warning .user-title a:active,.post-warning .user-title a:focus,.post-warning .user-title a:hover,.post-warning .user-title a:link,.post-warning .user-title a:visited{color:#ff6d00}.post-danger .panel-body{border:2px solid #ffcdd2;border-radius:4px;padding:13px}.post-danger .user-title,.post-danger .user-title a,.post-danger .user-title a:active,.post-danger .user-title a:focus,.post-danger .user-title a:hover,.post-danger .user-title a:link,.post-danger .user-title a:visited{color:#d50000}.user-card-primary .panel-body{border:2px solid #d1c4e9;border-radius:4px;padding:13px}.user-card-primary .user-card-title,.user-card-primary .user-card-title a.user-title,.user-card-primary .user-card-title a.user-title:active,.user-card-primary .user-card-title a.user-title:focus,.user-card-primary .user-card-title a.user-title:hover,.user-card-primary .user-card-title a.user-title:link,.user-card-primary .user-card-title a.user-title:visited{color:#6200ea}.user-card-success .panel-body{border:2px solid #c8e6c9;border-radius:4px;padding:13px}.user-card-success .user-card-title,.user-card-success .user-card-title a.user-title,.user-card-success .user-card-title a.user-title:active,.user-card-success .user-card-title a.user-title:focus,.user-card-success .user-card-title a.user-title:hover,.user-card-success .user-card-title a.user-title:link,.user-card-success .user-card-title a.user-title:visited{color:#388e3c}.user-card-warning .panel-body{border:2px solid #ffe0b2;border-radius:4px;padding:13px}.user-card-warning .user-card-title,.user-card-warning .user-card-title a.user-title,.user-card-warning .user-card-title a.user-title:active,.user-card-warning .user-card-title a.user-title:focus,.user-card-warning .user-card-title a.user-title:hover,.user-card-warning .user-card-title a.user-title:link,.user-card-warning .user-card-title a.user-title:visited{color:#ff6d00}.user-card-danger .panel-body{border:2px solid #ffcdd2;border-radius:4px;padding:13px}.user-card-danger .user-card-title,.user-card-danger .user-card-title a.user-title,.user-card-danger .user-card-title a.user-title:active,.user-card-danger .user-card-title a.user-title:focus,.user-card-danger .user-card-title a.user-title:hover,.user-card-danger .user-card-title a.user-title:link,.user-card-danger .user-card-title a.user-title:visited{color:#d50000}.list-group .list-group-rank-primary{border-left:4px solid #d1c4e9;padding-left:11px}.list-group .list-group-rank-primary a.rank-name,.list-group .list-group-rank-primary a.rank-name:active,.list-group .list-group-rank-primary a.rank-name:focus,.list-group .list-group-rank-primary a.rank-name:hover,.list-group .list-group-rank-primary a.rank-name:link,.list-group .list-group-rank-primary a.rank-name:visited,.list-group .list-group-rank-primary span.rank-name{color:#6200ea}.list-group .list-group-rank-success{border-left:4px solid #c8e6c9;padding-left:11px}.list-group .list-group-rank-success a.rank-name,.list-group .list-group-rank-success a.rank-name:active,.list-group .list-group-rank-success a.rank-name:focus,.list-group .list-group-rank-success a.rank-name:hover,.list-group .list-group-rank-success a.rank-name:link,.list-group .list-group-rank-success a.rank-name:visited,.list-group .list-group-rank-success span.rank-name{color:#388e3c}.list-group .list-group-rank-warning{border-left:4px solid #ffe0b2;padding-left:11px}.list-group .list-group-rank-warning a.rank-name,.list-group .list-group-rank-warning a.rank-name:active,.list-group .list-group-rank-warning a.rank-name:focus,.list-group .list-group-rank-warning a.rank-name:hover,.list-group .list-group-rank-warning a.rank-name:link,.list-group .list-group-rank-warning a.rank-name:visited,.list-group .list-group-rank-warning span.rank-name{color:#ff6d00}.list-group .list-group-rank-danger{border-left:4px solid #ffcdd2;padding-left:11px}.list-group .list-group-rank-danger a.rank-name,.list-group .list-group-rank-danger a.rank-name:active,.list-group .list-group-rank-danger a.rank-name:focus,.list-group .list-group-rank-danger a.rank-name:hover,.list-group .list-group-rank-danger a.rank-name:link,.list-group .list-group-rank-danger a.rank-name:visited,.list-group .list-group-rank-danger span.rank-name{color:#d50000}.page-header-rank-primary .user-rank,.page-header-rank-primary .user-rank a,.page-header-rank-primary .user-rank a:active,.page-header-rank-primary .user-rank a:focus,.page-header-rank-primary .user-rank a:hover,.page-header-rank-primary .user-rank a:link,.page-header-rank-primary .user-rank a:visited{color:#6200ea}.page-header-rank-success .user-rank,.page-header-rank-success .user-rank a,.page-header-rank-success .user-rank a:active,.page-header-rank-success .user-rank a:focus,.page-header-rank-success .user-rank a:hover,.page-header-rank-success .user-rank a:link,.page-header-rank-success .user-rank a:visited{color:#388e3c}.page-header-rank-warning .user-rank,.page-header-rank-warning .user-rank a,.page-header-rank-warning .user-rank a:active,.page-header-rank-warning .user-rank a:focus,.page-header-rank-warning .user-rank a:hover,.page-header-rank-warning .user-rank a:link,.page-header-rank-warning .user-rank a:visited{color:#ff6d00}.page-header-rank-danger .user-rank,.page-header-rank-danger .user-rank a,.page-header-rank-danger .user-rank a:active,.page-header-rank-danger .user-rank a:focus,.page-header-rank-danger .user-rank a:hover,.page-header-rank-danger .user-rank a:link,.page-header-rank-danger .user-rank a:visited{color:#d50000} \ No newline at end of file +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */.btn,.caret,img{vertical-align:middle}hr,img{border:0}body,figure{margin:0}.img-thumbnail,.table,label{max-width:100%}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.pre-scrollable{max-height:340px}.alerts-snackbar,.form-control-feedback,a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}b,optgroup,strong{font-weight:700}dfn{font-style:italic}h1{margin:.67em 0}mark{background:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}svg:not(:root){overflow:hidden}hr{box-sizing:content-box;height:0}pre,textarea{overflow:auto}code,kbd,pre,samp{font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{blockquote,img,pre,tr{page-break-inside:avoid}*,:after,:before{background:0 0!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}blockquote,pre{border:1px solid #999}thead{display:table-header-group}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}}.btn,.btn-danger.active,.btn-danger:active,.btn-default.active,.btn-default:active,.btn-info.active,.btn-info:active,.btn-primary.active,.btn-primary:active,.btn-warning.active,.btn-warning:active,.btn.active,.btn:active,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover,.form-control,.navbar-toggle,.open>.dropdown-toggle.btn-danger,.open>.dropdown-toggle.btn-default,.open>.dropdown-toggle.btn-info,.open>.dropdown-toggle.btn-primary,.open>.dropdown-toggle.btn-warning{background-image:none}.img-thumbnail,body{background-color:#fff}*,:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:transparent}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#212121}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#651fff;text-decoration:none}a:focus,a:hover{color:#4100d2;text-decoration:underline}a:focus{outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.img-responsive{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.42857143;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role=button]{cursor:pointer}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#777}.h1,.h2,.h3,h1,h2,h3{margin-top:20px;margin-bottom:10px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small{font-size:65%}.h4,.h5,.h6,h4,h5,h6{margin-top:10px;margin-bottom:10px}dl,ol,ul{margin-top:0}.lead,address,dl{margin-bottom:20px}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-size:75%}.h1,h1{font-size:36px}.h2,h2{font-size:30px}.h3,h3{font-size:24px}.h4,h4{font-size:18px}.h5,h5{font-size:14px}.h6,h6{font-size:12px}p{margin:0 0 10px}.lead{font-size:16px;font-weight:300;line-height:1.4}blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child,ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt,kbd kbd,label{font-weight:700}address,blockquote .small,blockquote footer,blockquote small,dd,dt,pre{line-height:1.42857143}@media (min-width:768px){.lead{font-size:21px}}.small,small{font-size:85%}.mark,mark{background-color:#fcf8e3;padding:.2em}.list-inline,.list-unstyled{padding-left:0;list-style:none}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#651fff}a.text-primary:focus,a.text-primary:hover{color:#4900eb}.text-success{color:#3c763d}a.text-success:focus,a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:focus,a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:focus,a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:focus,a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#651fff}a.bg-primary:focus,a.bg-primary:hover{background-color:#4900eb}.bg-success{background-color:#dff0d8}a.bg-success:focus,a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:focus,a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:focus,a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:focus,a.bg-danger:hover{background-color:#e4b9b9}pre code,table{background-color:transparent}.page-header{padding-bottom:9px}ol,ul{margin-bottom:10px}.list-inline{margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dd{margin-left:0}@media (min-width:700px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;color:#777}legend,pre{display:block;color:#333}blockquote .small:before,blockquote footer:before,blockquote small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}code,kbd{padding:2px 4px;font-size:90%}caption,th{text-align:left}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:''}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after{content:'\00A0 \2014'}address{font-style:normal}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{color:#fff;background-color:#333;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;box-shadow:none}pre{padding:9.5px;margin:0 0 10px;font-size:13px;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}.container,.container-fluid{margin-right:auto;margin-left:auto}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;border-radius:0}.container,.container-fluid{padding-left:15px;padding-right:15px}.badge,.btn,.dropdown-header,.input-group-btn,.label,.material-icon{white-space:nowrap}.pre-scrollable{overflow-y:scroll}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.row{margin-left:-15px;margin-right:-15px}.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}caption{padding-top:8px;padding-bottom:8px;color:#777}.table{width:100%;margin-bottom:20px}.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered,.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #ddd}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover,.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}table col[class*=col-]{position:static;float:none;display:table-column}table td[class*=col-],table th[class*=col-]{position:static;float:none;display:table-cell}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#dff0d8}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#d9edf7}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#fcf8e3}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#f2dede}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.table-responsive{overflow-x:auto;min-height:.01%}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset,legend{padding:0;border:0}fieldset{margin:0;min-width:0}legend{width:100%;margin-bottom:20px;font-size:21px;line-height:inherit;border-bottom:1px solid #e5e5e5}label{display:inline-block;margin-bottom:5px}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:none}input[type=checkbox],input[type=radio]{margin:4px 0 0;margin-top:1px\9;line-height:normal}.form-control,output{font-size:14px;line-height:1.42857143;color:#555;display:block}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=file]:focus,input[type=checkbox]:focus,input[type=radio]:focus{outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}output{padding-top:7px}.form-control{width:100%;height:34px;padding:6px 12px;background-color:#fff;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.has-success .checkbox,.has-success .checkbox-inline,.has-success .control-label,.has-success .form-control-feedback,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.checkbox label,.has-success.checkbox-inline label,.has-success.radio label,.has-success.radio-inline label{color:#3c763d}.form-control::-ms-expand{border:0;background-color:transparent}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date].form-control,input[type=time].form-control,input[type=datetime-local].form-control,input[type=month].form-control{line-height:34px}.input-group-sm input[type=date],.input-group-sm input[type=time],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],input[type=date].input-sm,input[type=time].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm{line-height:30px}.input-group-lg input[type=date],.input-group-lg input[type=time],.input-group-lg input[type=datetime-local],.input-group-lg input[type=month],input[type=date].input-lg,input[type=time].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg{line-height:46px}}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.checkbox label,.radio label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox],.radio input[type=radio],.radio-inline input[type=radio]{position:absolute;margin-left:-20px;margin-top:4px\9}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:400;cursor:pointer}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}.checkbox-inline.disabled,.checkbox.disabled label,.radio-inline.disabled,.radio.disabled label,fieldset[disabled] .checkbox label,fieldset[disabled] .checkbox-inline,fieldset[disabled] .radio label,fieldset[disabled] .radio-inline,fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}.form-control-static{padding-top:7px;padding-bottom:7px;margin-bottom:0;min-height:34px}.form-control-static.input-lg,.form-control-static.input-sm{padding-left:0;padding-right:0}.form-group-sm .form-control,.input-sm{padding:5px 10px;border-radius:3px;font-size:12px}.input-sm{height:30px;line-height:1.5}select.input-sm{height:30px;line-height:30px}select[multiple].input-sm,textarea.input-sm{height:auto}.form-group-sm .form-control{height:30px;line-height:1.5}.form-group-lg .form-control,.input-lg{border-radius:6px;padding:10px 16px;font-size:18px}.form-group-sm select.form-control{height:30px;line-height:30px}.form-group-sm select[multiple].form-control,.form-group-sm textarea.form-control{height:auto}.form-group-sm .form-control-static{height:30px;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.5}.input-lg{height:46px;line-height:1.3333333}select.input-lg{height:46px;line-height:46px}select[multiple].input-lg,textarea.input-lg{height:auto}.form-group-lg .form-control{height:46px;line-height:1.3333333}.form-group-lg select.form-control{height:46px;line-height:46px}.form-group-lg select[multiple].form-control,.form-group-lg textarea.form-control{height:auto}.form-group-lg .form-control-static{height:46px;min-height:38px;padding:11px 16px;font-size:18px;line-height:1.3333333}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center}.collapsing,.dropdown,.dropup{position:relative}.form-group-lg .form-control+.form-control-feedback,.input-group-lg+.form-control-feedback,.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.form-group-sm .form-control+.form-control-feedback,.input-group-sm+.form-control-feedback,.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning .control-label,.has-warning .form-control-feedback,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.checkbox label,.has-warning.checkbox-inline label,.has-warning.radio label,.has-warning.radio-inline label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.has-error .checkbox,.has-error .checkbox-inline,.has-error .control-label,.has-error .form-control-feedback,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.checkbox label,.has-error.checkbox-inline label,.has-error.radio label,.has-error.radio-inline label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#616161}@media (min-width:768px){.form-inline .form-control-static,.form-inline .form-group{display:inline-block}.form-inline .control-label,.form-inline .form-group{margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:7px}}.btn-block,input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .checkbox,.form-horizontal .radio{min-height:27px}.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:11px;font-size:18px}.form-horizontal .form-group-sm .control-label{padding-top:6px;font-size:12px}}.btn{display:inline-block;margin-bottom:0;font-weight:400;text-align:center;touch-action:manipulation;cursor:pointer;border:1px solid transparent;padding:6px 12px;font-size:14px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#757575;text-decoration:none}.btn.active,.btn:active{outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{background-color:#f3f3f3}.btn-default.focus,.btn-default:focus{color:#757575;background-color:#dadada;border-color:#8c8c8c}.btn-default.active,.btn-default:active,.btn-default:hover,.open>.dropdown-toggle.btn-default{color:#757575;background-color:#dadada;border-color:#adadad}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.dropdown-toggle.btn-default.focus,.open>.dropdown-toggle.btn-default:focus,.open>.dropdown-toggle.btn-default:hover{color:#757575;background-color:#c8c8c8;border-color:#8c8c8c}.btn-default.disabled.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#f3f3f3;border-color:#ccc}.btn-default .badge{color:#f3f3f3;background-color:#757575}.btn-primary{background-color:#a36eff}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#823bff;border-color:#4d00d4}.btn-primary.active,.btn-primary:active,.btn-primary:hover,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#823bff;border-color:#6b18ff}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.dropdown-toggle.btn-primary.focus,.open>.dropdown-toggle.btn-primary:focus,.open>.dropdown-toggle.btn-primary:hover{color:#fff;background-color:#6b18ff;border-color:#4d00d4}.btn-primary.disabled.focus,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled].focus,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#a36eff;border-color:#9255ff}.btn-primary .badge{color:#a36eff;background-color:#fff}.btn-success{background-color:#00c853}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#00953e;border-color:#002f14}.btn-success.active,.btn-success:active,.btn-success:hover,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#00953e;border-color:#00712f}.btn-success.active.focus,.btn-success.active:focus,.btn-success.active:hover,.btn-success:active.focus,.btn-success:active:focus,.btn-success:active:hover,.open>.dropdown-toggle.btn-success.focus,.open>.dropdown-toggle.btn-success:focus,.open>.dropdown-toggle.btn-success:hover{color:#fff;background-color:#00712f;border-color:#002f14}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{background-image:none}.btn-success.disabled.focus,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled].focus,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#00c853;border-color:#00af48}.btn-success .badge{color:#00c853;background-color:#fff}.btn-info{color:#fff;background-color:#3d5afe;border-color:#2444fe}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#0a2ffe;border-color:#0119a1}.btn-info.active,.btn-info:active,.btn-info:hover,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#0a2ffe;border-color:#0123e3}.btn-info.active.focus,.btn-info.active:focus,.btn-info.active:hover,.btn-info:active.focus,.btn-info:active:focus,.btn-info:active:hover,.open>.dropdown-toggle.btn-info.focus,.open>.dropdown-toggle.btn-info:focus,.open>.dropdown-toggle.btn-info:hover{color:#fff;background-color:#0123e3;border-color:#0119a1}.btn-info.disabled.focus,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled].focus,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#3d5afe;border-color:#2444fe}.btn-info .badge{color:#3d5afe;background-color:#fff}.btn-warning{color:#fff;background-color:#ef6c00;border-color:#d66000}.btn-warning.focus,.btn-warning:focus{color:#fff;background-color:#bc5500;border-color:#562700}.btn-warning.active,.btn-warning:active,.btn-warning:hover,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#bc5500;border-color:#984500}.btn-warning.active.focus,.btn-warning.active:focus,.btn-warning.active:hover,.btn-warning:active.focus,.btn-warning:active:focus,.btn-warning:active:hover,.open>.dropdown-toggle.btn-warning.focus,.open>.dropdown-toggle.btn-warning:focus,.open>.dropdown-toggle.btn-warning:hover{color:#fff;background-color:#984500;border-color:#562700}.btn-warning.disabled.focus,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled].focus,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#ef6c00;border-color:#d66000}.btn-warning .badge{color:#ef6c00;background-color:#fff}.btn-danger{background-color:#ef5350}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#eb2521;border-color:#98110e}.btn-danger.active,.btn-danger:active,.btn-danger:hover,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#eb2521;border-color:#d51713}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.dropdown-toggle.btn-danger.focus,.open>.dropdown-toggle.btn-danger:focus,.open>.dropdown-toggle.btn-danger:hover{color:#fff;background-color:#d51713;border-color:#98110e}.btn-danger.disabled.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#ef5350;border-color:#ed3c39}.btn-danger .badge{color:#ef5350;background-color:#fff}.btn-link{color:#651fff;font-weight:400;border-radius:0}.alert .alert-link,.label{font-weight:700}.btn-link,.btn-link.active,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#4100d2;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.btn-group-sm>.btn,.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-xs>.btn,.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block}.btn-block+.btn-block{margin-top:5px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{height:0;overflow:hidden;-webkit-transition-property:height,visibility;transition-property:height,visibility;-webkit-transition-duration:.35s;transition-duration:.35s;-webkit-transition-timing-function:ease;transition-timing-function:ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;border-top:4px dashed;border-top:4px solid\9;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;text-align:left;background-color:#fff;border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box}.dropdown-menu-right,.dropdown-menu.pull-right{left:auto;right:0}.nav>li,.nav>li>a,.open>.dropdown-menu{display:block}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{background-color:#651fff}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0;background-color:#651fff}.dropdown-header,.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover,.nav>li.disabled>a{color:#777}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;background-color:transparent;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);cursor:not-allowed}.open>a{outline:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.nav>li,.nav>li>a,.navbar{position:relative}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px dashed;border-bottom:4px solid\9;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:700px){.navbar-right .dropdown-menu{left:auto;right:0}.navbar-right .dropdown-menu-left{left:0;right:auto}}.nav-justified>.dropdown .dropdown-menu,.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav>li>a{padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#777;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{background-color:#eee;border-color:#651fff}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px;margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0;border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-justified>li,.nav-stacked>li{float:none}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:focus,.nav-pills>li.active>a:hover{color:#fff;background-color:#651fff}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{min-height:58px;border:1px solid transparent}.navbar-collapse{overflow-x:visible;padding-right:15px;padding-left:15px;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.1);-webkit-overflow-scrolling:touch}.navbar-collapse.in{overflow-y:auto}@media (min-width:700px){.navbar{border-radius:4px}.navbar-header{float:left}.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-left:0;padding-right:0}}.embed-responsive,.modal,.modal-open,.progress{overflow:hidden}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-15px;margin-left:-15px}.navbar-static-top{z-index:1000;border-width:0 0 1px}.navbar-fixed-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:19px 15px;font-size:18px;line-height:20px;height:58px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:700px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}.navbar-fixed-bottom,.navbar-fixed-top,.navbar-static-top{border-radius:0}.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;margin-right:15px;padding:9px 10px;margin-top:12px;margin-bottom:12px;background-color:transparent;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}.navbar-nav{margin:9.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:699px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}.progress-bar-striped,.progress-striped .progress-bar,.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}@media (min-width:700px){.navbar-toggle{display:none}.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:19px;padding-bottom:19px}}.navbar-form{padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);margin:12px -15px}@media (min-width:768px){.navbar-form .form-control-static,.navbar-form .form-group{display:inline-block}.navbar-form .control-label,.navbar-form .form-group{margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:699px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:700px){.navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}.navbar-text{float:left;margin-left:15px;margin-right:15px}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-radius:4px 4px 0 0}.navbar-btn{margin-top:12px;margin-bottom:12px}.navbar-btn.btn-sm{margin-top:14px;margin-bottom:14px}.navbar-btn.btn-xs{margin-top:18px;margin-bottom:18px}.navbar-text{margin-top:19px;margin-bottom:19px}.alert,.breadcrumb{margin-bottom:20px}@media (min-width:700px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.btn-group>.btn-group,.btn-toolbar .btn,.btn-toolbar .btn-group,.btn-toolbar .input-group,.progress-bar{float:left}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-nav>li>a,.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{background-color:#e7e7e7;color:#555}@media (max-width:699px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#fff}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#e0e0e0}.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#e7e7e7}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{background-color:#e7e7e7;color:#fff}@media (max-width:699px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#e0e0e0}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#e7e7e7}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-inverse .navbar-link{color:#e0e0e0}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#e0e0e0}.navbar-inverse .btn-link:focus,.navbar-inverse .btn-link:hover{color:#fff}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{color:#ccc}.breadcrumb{padding:8px 15px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/\00a0";padding:0 5px;color:#ccc}.breadcrumb>.active{color:#777}.alert{padding:15px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#43a047;border-color:#43a047;color:#fff}.alert-success hr{border-top-color:#3b8e3f}.alert-success .alert-link{color:#e6e6e6}.alert-info{background-color:#448aff;border-color:#448aff;color:#fff}.alert-info hr{border-top-color:#2a7aff}.alert-info .alert-link{color:#e6e6e6}.alert-warning{background-color:#ef6c00;border-color:#ef6c00;color:#fff}.alert-warning hr{border-top-color:#d66000}.alert-warning .alert-link{color:#e6e6e6}.alert-danger{background-color:#f44336;border-color:#f44336;color:#fff}.alert-danger hr{border-top-color:#f32c1e}.alert-danger .alert-link{color:#e6e6e6}.label{display:inline;padding:.2em .6em .3em;font-size:75%;line-height:1;color:#fff;text-align:center;vertical-align:baseline;border-radius:.25em}a.label:focus,a.label:hover{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#777}.label-default[href]:focus,.label-default[href]:hover{background-color:#5e5e5e}.label-primary{background-color:#651fff}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#4900eb}.label-success{background-color:#43a047}.label-success[href]:focus,.label-success[href]:hover{background-color:#347c37}.label-info{background-color:#3d5afe}.label-info[href]:focus,.label-info[href]:hover{background-color:#0a2ffe}.label-warning{background-color:#ef6c00}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#bc5500}.label-danger{background-color:#f44336}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#ea1c0d}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{margin-bottom:20px;background-color:#eee;border-radius:3px}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle,.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child,.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child),.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn,.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.progress-bar{width:0%;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#651fff;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress-bar-striped,.progress-striped .progress-bar{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#00c853}.progress-striped .progress-bar-success{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-striped .progress-bar-info,.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#3d5afe}.progress-striped .progress-bar-info{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#ff9100}.progress-striped .progress-bar-warning{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#ff1744}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn .caret,.btn-group>.btn:first-child{margin-left:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn-lg .caret{border-width:5px 5px 0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-radius:4px 4px 0 0}.btn-group-vertical>.btn:last-child:not(:first-child){border-radius:0 0 4px 4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn input[type=checkbox],[data-toggle=buttons]>.btn input[type=radio],[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-left:0;padding-right:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group .form-control:focus{z-index:3}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn,textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn,textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group .form-control,.input-group-addon,.input-group-btn{display:table-cell}.input-group .form-control:not(:first-child):not(:last-child),.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=checkbox],.input-group-addon input[type=radio]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{z-index:2;margin-left:-1px}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{zoom:1;overflow:hidden}.media-body{width:10000px}.media-object{display:block}.media-object.img-thumbnail{max-width:none}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-body,.media-left,.media-right{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.badge,.material-icon{vertical-align:middle}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #eee}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item,button.list-group-item{color:#777}a.list-group-item .list-group-item-heading,button.list-group-item .list-group-item-heading{color:#333}a.list-group-item:focus,a.list-group-item:hover,button.list-group-item:focus,button.list-group-item:hover{text-decoration:none;color:#212121;background-color:#fff}button.list-group-item{width:100%;text-align:left}.badge,.pager{text-align:center}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{background-color:#eee;color:#777;cursor:not-allowed}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:2;color:#651fff;background-color:#fff;border-color:#eee}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .list-group-item-text{color:#fff}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success,button.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading,button.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:focus,a.list-group-item-success:hover,button.list-group-item-success:focus,button.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover,button.list-group-item-success.active,button.list-group-item-success.active:focus,button.list-group-item-success.active:hover{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info,button.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading,button.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:focus,a.list-group-item-info:hover,button.list-group-item-info:focus,button.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover,button.list-group-item-info.active,button.list-group-item-info.active:focus,button.list-group-item-info.active:hover{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning,button.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading,button.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:focus,a.list-group-item-warning:hover,button.list-group-item-warning:focus,button.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover,button.list-group-item-warning.active,button.list-group-item-warning.active:focus,button.list-group-item-warning.active:hover{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger,button.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading,button.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:focus,a.list-group-item-danger:hover,button.list-group-item-danger:focus,button.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover,button.list-group-item-danger.active,button.list-group-item-danger.active:focus,button.list-group-item-danger.active:hover{color:#fff;background-color:#a94442;border-color:#a94442}.panel-heading>.dropdown .dropdown-toggle,.panel-title,.panel-title>.small,.panel-title>.small>a,.panel-title>a,.panel-title>small,.panel-title>small>a{color:inherit}.panel,.panel-footer{background-color:#fff}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-title,.panel>.list-group,.panel>.panel-collapse>.list-group,.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel-body{padding:15px}.panel-heading{padding:14px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-title{margin-top:0;font-size:16px}.panel-footer{padding:14px 15px;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel-group .panel-heading,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-responsive:last-child>.table:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-left-radius:3px;border-bottom-right-radius:3px}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.panel>.table-responsive:first-child>.table:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table:first-child>thead:first-child>tr:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.list-group+.panel-footer,.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.panel-collapse>.table caption,.panel>.table caption,.panel>.table-responsive>.table caption{padding-left:15px;padding-right:15px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading+.panel-collapse>.list-group,.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#fff;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#fff;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#651fff}.panel-primary>.panel-heading{color:#fff;background-color:#651fff;border-color:#651fff}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#651fff}.panel-primary>.panel-heading .badge{color:#651fff;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#651fff}.panel-success{border-color:#00c853}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#00c853}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#00c853}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#00c853}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#f44336}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#f44336}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#f44336}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#f44336}.pager{padding-left:0;margin:20px 0;list-style:none}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:focus,.pager li>a:hover{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#777;background-color:#fff;cursor:not-allowed}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.42857143;text-decoration:none;color:#651fff;background-color:#fff;border:1px solid #ddd;margin-left:-1px}.close,.list-group-item>.badge{float:right}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{z-index:2;color:#4100d2;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:3;color:#fff;background-color:#651fff;border-color:#651fff;cursor:default}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#777;background-color:#fff;border-color:#ddd;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px;line-height:1.3333333}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px;line-height:1.5}.badge,.close{font-weight:700;line-height:1}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.embed-responsive{position:relative;display:block;height:0;padding:0}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;left:0;bottom:0;height:100%;width:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#fff;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{font-size:21px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;color:#fff;background-color:#777;border-radius:10px}.badge:empty,.modal{display:none}.btn .badge{position:relative;top:-1px}.btn-group-xs>.btn .badge,.btn-xs .badge{top:0;padding:1px 5px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#651fff;background-color:#fff}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}.affix,.auth-message{position:fixed}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before,.btn-toolbar:after,.btn-toolbar:before,.clearfix:after,.clearfix:before,.container-fluid:after,.container-fluid:before,.container:after,.container:before,.dl-horizontal dd:after,.dl-horizontal dd:before,.form-horizontal .form-group:after,.form-horizontal .form-group:before,.modal-footer:after,.modal-footer:before,.modal-header:after,.modal-header:before,.nav:after,.nav:before,.navbar-collapse:after,.navbar-collapse:before,.navbar-header:after,.navbar-header:before,.navbar:after,.navbar:before,.pager:after,.pager:before,.panel-body:after,.panel-body:before,.row:after,.row:before{content:" ";display:table}.btn-group-vertical>.btn-group:after,.btn-toolbar:after,.clearfix:after,.container-fluid:after,.container:after,.dl-horizontal dd:after,.form-horizontal .form-group:after,.modal-footer:after,.modal-header:after,.nav:after,.navbar-collapse:after,.navbar-header:after,.navbar:after,.pager:after,.panel-body:after,.row:after{clear:both}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.hidden,.visible-lg,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-sm,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block{display:none!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.header-stats,.page-header .breadcrumb,.page-header .go-back-sm,.page-header h1{text-shadow:0 1px 1px #512da8}@-ms-viewport{width:device-width}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table!important}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}.visible-xs-block{display:block!important}.visible-xs-inline{display:inline!important}.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table!important}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}.visible-sm-block{display:block!important}.visible-sm-inline{display:inline!important}.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table!important}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}.visible-md-block{display:block!important}.visible-md-inline{display:inline!important}.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table!important}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}.visible-lg-block{display:block!important}.visible-lg-inline{display:inline!important}.visible-lg-inline-block{display:inline-block!important}.hidden-lg{display:none!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table!important}tr.visible-print{display:table-row!important}td.visible-print,th.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}.hidden-print{display:none!important}}@media screen and (min-width:992px){.md-margin-top-no{margin-top:0!important}}@media screen and (min-width:768px) and (max-width:991px){.sm-margin-top{margin-top:20px!important}.sm-margin-top-no{margin-top:0!important}.sm-margin-top-half{margin-top:6.6px!important}.sm-align-row-buttons{margin-top:5px!important}}@media screen and (max-width:767px){.xs-margin-top{margin-top:20px!important}.xs-margin-top-half{margin-top:6.6px!important}}.auth-message{background-color:#eee;width:100%;top:-100%;left:0;z-index:1070;transition:top .3s ease}.auth-message.show{top:0;bottom:auto}.auth-message p{padding:5px 0}@media screen and (max-width:991px){body,html{overflow-x:hidden}.auth-message{text-align:center}.auth-message .btn{padding:10px 16px;font-size:18px}}.alerts-snackbar{position:fixed;top:-100%;width:100%;z-index:1060;text-align:center;font-size:18px;transition:top .3s ease}.alerts-snackbar.in{top:0;transition:top .2s ease}.alerts-snackbar p{display:inline-block;border-radius:0 0 4px 4px;margin:0;pointer-events:all}.loader{width:100%;height:49px;text-align:center}.loader.loader-spaced{margin:40px 0}.loader-spinning-wheel{width:49px;height:49px;margin:0 auto;border:3px solid #777;border-radius:50%;border-left-color:transparent;border-right-color:transparent;animation:cssload-spin 575ms infinite linear;-o-animation:cssload-spin 575ms infinite linear;-ms-animation:cssload-spin 575ms infinite linear;-webkit-animation:cssload-spin 575ms infinite linear;-moz-animation:cssload-spin 575ms infinite linear}@keyframes cssload-spin{100%{transform:rotate(360deg)}}@-o-keyframes cssload-spin{100%{-o-transform:rotate(360deg);transform:rotate(360deg)}}@-ms-keyframes cssload-spin{100%{-ms-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes cssload-spin{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-moz-keyframes cssload-spin{100%{-moz-transform:rotate(360deg);transform:rotate(360deg)}}.navbar{margin-bottom:0}.navbar .navbar-full .navbar-brand{padding-top:13px;padding-bottom:13px;font-size:21px}.navbar .navbar-full .navbar-brand>*{display:inline-block;vertical-align:middle}.navbar .navbar-full .navbar-brand img{height:32px;margin-right:6px}.navbar .navbar-full .navbar-nav>li>a{font-size:16.8px}.navbar .navbar-full .navbar-icon{display:block;height:58px;padding:15px;position:relative;color:#e0e0e0}.navbar .navbar-full .navbar-icon:focus,.navbar .navbar-full .navbar-icon:hover{color:#fff;background-color:transparent}.navbar .navbar-full .navbar-icon .material-icon{width:28px;height:28px;font-size:28px;line-height:28px}.navbar .navbar-full .navbar-icon .badge{background-color:#f44336;position:absolute;top:6px;right:6px;font-size:9px}.nav-side>a>.material-icon,.navbar ul.navbar-compact-nav>li>a>.material-icon{font-size:24px;line-height:24px}.navbar .navbar-full .open .navbar-icon,.navbar .navbar-full .open .navbar-icon:focus,.navbar .navbar-full .open .navbar-icon:hover{background-color:#e7e7e7;color:#555}.navbar .navbar-full .nav-guest,.navbar .navbar-full .nav-user{float:right}.navbar .navbar-full .nav-guest .navbar-btn,.navbar .navbar-full .nav-user .navbar-btn{margin-left:15px}.navbar .navbar-full .nav-user .dropdown-toggle{padding:12px}.navbar .navbar-full .nav-user .dropdown-toggle img{width:34px;height:34px}.navbar ul.navbar-compact-nav{border-collapse:collapse;display:table;margin:0;table-layout:fixed;width:100%}.navbar ul.navbar-compact-nav>li{display:table-cell;width:100%}.navbar ul.navbar-compact-nav>li>a,.navbar ul.navbar-compact-nav>li>button{background:0 0;border:none;display:block;padding-top:13px;padding-bottom:13px;width:100%;color:#e0e0e0;text-align:center}.navbar ul.navbar-compact-nav>li>a.active,.navbar ul.navbar-compact-nav>li>a:focus,.navbar ul.navbar-compact-nav>li>a:hover,.navbar ul.navbar-compact-nav>li>button.active,.navbar ul.navbar-compact-nav>li>button:focus,.navbar ul.navbar-compact-nav>li>button:hover{color:#212121;background-color:#fafafa}.navbar ul.navbar-compact-nav>li>a>img,.navbar ul.navbar-compact-nav>li>button>img{width:24px;height:24px}.navbar ul.navbar-compact-nav>li>button{display:inline-block}@media (max-width:700px){.navbar.navbar-misago{min-height:auto}}.modal-body .form-group,.toolbar{min-height:34px}.navbar-misago .navbar-desktop-nav{display:none}@media (min-width:700px){.navbar-misago ul.navbar-compact-nav{display:none}.navbar-misago .navbar-desktop-nav{display:block}}.nav-side>a>.material-icon{margin:-5px 10px -5px -5px;position:relative;bottom:1px;width:24px;height:24px}.nav-side>a .badge{position:relative;top:1px}@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(../fonts/MaterialIcons-Regular.eot);src:local('Material Icons'),local('MaterialIcons-Regular'),url(../fonts/MaterialIcons-Regular.woff2) format('woff2'),url(../fonts/MaterialIcons-Regular.woff) format('woff'),url(../fonts/MaterialIcons-Regular.ttf) format('truetype')}.material-icon{font-family:'Material Icons';font-weight:400;font-style:normal;display:inline-block;width:1em;height:1em;line-height:1;text-align:center;text-transform:none;letter-spacing:normal;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:'liga'}.misago-markup h1,.misago-markup h2,.misago-markup h3,.misago-markup h4,.misago-markup h5,.misago-markup h6,.misago-markup p,.page-header h1,.post-attachments .attachment-name,.post-feed .post-heading .btn{word-wrap:break-word}.modal-toolbar{background:#eee;border-bottom:1px solid #e5e5e5;overflow:auto;padding:6px 12px}.modal-toolbar .pull-left{margin-right:8px}.modal-toolbar p{padding:5px 0;margin-bottom:0}@media screen and (max-width:991px){.modal-message{text-align:center}.modal-message .message-icon{margin:30px}.modal-message .message-icon .material-icon{font-size:160px}}@media screen and (min-width:992px){.modal-message .modal-body{padding-top:20px;padding-bottom:30px}.modal-message .message-icon{float:left;position:relative;left:7px}.modal-message .message-icon .material-icon{font-size:50px}.modal-message .message-body{margin-left:75px;margin-top:10px}.modal-message .message-body p{margin-top:20px}.modal-message .message-body .lead{margin-top:0;margin-bottom:0}}.modal-loader{padding:50px 0}.modal-loader .loader{width:100%;height:80px;text-align:center}.modal-loader .loader-spinning-wheel{width:80px;height:80px}.list-item-errors{margin-bottom:20px}.list-errored-items li:last-child .list-item-errors{margin-bottom:0}.modal-post-likers .media-list{margin:0}.modal-post-likers .item-title{display:block}.has-feedback .material-icon.form-control-feedback{top:6px;right:24px;font-size:1.42857143;line-height:1.42857143}.well.well-form.well-done{font-size:18px;text-align:center}.well.well-form.well-done .message-icon{margin-bottom:10px;font-size:90px;line-height:90px}.well.well-form.well-done .message-body{margin-bottom:20px}.well.well-form.well-noscript{font-size:18px;text-align:center}.well.well-form.well-noscript .message-icon{margin-bottom:10px;font-size:90px;line-height:90px}.btn.btn-select,.btn.btn-yes-no{background:0 0;border:1px solid #eee}.btn.btn-select .material-icon,.btn.btn-yes-no .material-icon{margin:-4px 8px -4px 0;position:relative;bottom:1px;width:20px;height:20px;font-size:20px;line-height:20px}@media screen and (max-width:767px){.btn.btn-yes-no{width:100%;overflow:auto}.btn.btn-yes-no .material-icon{float:left;margin-top:1px}.btn.btn-yes-no .btn-text{display:block;margin-left:30px;text-align:left;white-space:normal}}input.hidden-file-upload{position:absolute;top:-9999px;left:-9999px}.form-search{position:relative}.form-search .form-control{padding-right:30px}.form-search .material-icon{position:absolute;top:5px;right:5px;color:#777;font-size:24px;line-height:24px;pointer-events:none}.btn.btn-loading,.btn.btn-loading:active,.btn.btn-loading:focus,.btn.btn-loading:hover,.btn.btn-loading:link,.btn.btn-loading:visited{color:transparent}.btn.btn-loading .loader,.btn.btn-loading:active .loader,.btn.btn-loading:focus .loader,.btn.btn-loading:hover .loader,.btn.btn-loading:link .loader,.btn.btn-loading:visited .loader{height:20px;margin-top:-20px}.btn.btn-loading .loader>div,.btn.btn-loading:active .loader>div,.btn.btn-loading:focus .loader>div,.btn.btn-loading:hover .loader>div,.btn.btn-loading:link .loader>div,.btn.btn-loading:visited .loader>div{width:20px;height:20px}.btn.btn-loading.btn-default .loader>div{border-top-color:#757575;border-bottom-color:#757575}.btn.btn-loading.btn-danger .loader>div,.btn.btn-loading.btn-info .loader>div,.btn.btn-loading.btn-primary .loader>div,.btn.btn-loading.btn-success .loader>div,.btn.btn-loading.btn-warning .loader>div{border-top-color:#fff;border-bottom-color:#fff}.btn .material-icon{margin-right:3px;position:relative;bottom:1px}.btn-icon .material-icon{margin:-1px -4px;width:20px;height:20px;font-size:20px;line-height:20px}.btn-icon .btn-text{margin-left:10px}.btn-icon .btn-text-left{margin-right:10px}.btn-block.btn-icon{padding-left:0;padding-right:0}.dropdown-menu>li>.btn-link,.dropdown-menu>li>a,.modal-menu>li>.btn-link,.modal-menu>li>a{display:block;border:none;clear:both;float:none;padding:6px 20px;width:100%;color:#333;font-weight:400;line-height:1.42857143;text-align:left;white-space:nowrap}.pager-more,.user-dropdown .guest-preview,li.dropdown-search-message{text-align:center}.dropdown-menu>li>.btn-link:active,.dropdown-menu>li>.btn-link:focus,.dropdown-menu>li>.btn-link:hover,.dropdown-menu>li>a:active,.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover,.modal-menu>li>.btn-link:active,.modal-menu>li>.btn-link:focus,.modal-menu>li>.btn-link:hover,.modal-menu>li>a:active,.modal-menu>li>a:focus,.modal-menu>li>a:hover{background-color:#651fff;color:#fff;text-decoration:none}.dropdown-menu>li>.btn-link .material-icon,.dropdown-menu>li>a .material-icon,.modal-menu>li>.btn-link .material-icon,.modal-menu>li>a .material-icon{margin:-2px 7px -2px 0;position:relative;bottom:1px;font-size:18px}.dropdown-menu>li>.btn-link .badge,.dropdown-menu>li>a .badge,.modal-menu>li>.btn-link .badge,.modal-menu>li>a .badge{float:right;position:relative;top:1px}.modal-menu{margin:20px 0;padding:0}.modal-menu>li{margin:6.67px 0;padding:0;list-style:none}.dropdown-menu{width:210px}.dropdown-menu .dropdown-footer{padding:6px 20px}.dropdown-menu .dropdown-buttons{padding:2px 20px 7px}.dropdown-menu .dropdown-buttons .btn{margin:4px 0}.mobile-dropdown{position:relative}.compact-nav.open>.dropdown-menu,.mobile-dropdown.open>.dropdown-menu{border:none;border-radius:0;display:block;margin:0;width:100%}.user-dropdown .guest-preview .row{margin:0}.navbar .user-dropdown{width:240px}.user-dropdown .dropdown-header{padding:6px 20px;font-size:18px}@media screen and (min-width:992px){.category-picker .dropdown-menu{width:300px}}.category-picker .dropdown-menu>li>.btn-link{white-space:normal;word-wrap:break-word}.dropdown-search-thread h5,.editor-attachment-complete .editor-attachment-details abbr,.page-tabs ul,.page-tabs ul a,.page-tabs ul li,.post-attachments abbr{white-space:nowrap}@media screen and (max-width:767px){.dropdown-menu.stick-to-bottom{border-radius:0;border:none;max-height:300px;overflow-y:auto;-webkit-box-shadow:0 0 30px #777;box-shadow:0 0 30px #777;clear:both;top:auto;width:100%;position:fixed;bottom:0;margin:0;padding:0 0 20px}.dropdown-menu.stick-to-bottom li{float:none;margin:0;clear:both}.dropdown-menu.stick-to-bottom li>.btn,.dropdown-menu.stick-to-bottom li>a{padding-top:15px;padding-bottom:15px;border-bottom:1px solid #e5e5e5}}.navbar-misago .dropdown-menu.dropdown-search-results{margin:0;padding-top:0;width:400px;left:auto;right:0}.dropdown-search-results .form-group{margin:0;padding:12px}.dropdown-search-thread{width:100%}.dropdown-search-thread h5{margin:0;overflow:hidden;text-overflow:ellipsis}.dropdown-search-thread small{display:block;margin:4px 0 0}.page-header-bg{margin-bottom:20px}.page-header{margin:0;padding:40px 0}.page-header h1{margin:0}.page-header .btn-aligned{float:right;margin-left:8px}.page-header .btn-aligned.pull-left{margin-left:0;margin-right:8px}@media screen and (min-width:992px){.page-header .container>.row h1{margin-top:-3px}.page-header .container>.row .row{margin-top:5px}}@media screen and (max-width:991px){.container h1{font-size:22.5px}.container .btn-icon .material-icon{width:24px;height:24px;margin:-3px 0;font-size:24px;line-height:24px}}.go-back-sm .material-icon,.header-stats .list-inline li .status-icon{width:18px;height:18px;font-size:18px;line-height:18px;position:relative}.page-breadcrumbs{margin-bottom:20px}.page-breadcrumbs .breadcrumb{background:0 0;margin:-20px 0 0;padding:0;overflow:auto}.page-breadcrumbs .breadcrumb li,.page-breadcrumbs .breadcrumb li:before{display:block;float:left}.page-breadcrumbs .breadcrumb li:before{margin-left:4px}.go-back-sm{margin-top:-20px;margin-bottom:20px}.go-back-sm .material-icon{top:-1px}.page-breadcrumbs .go-back-sm{margin-bottom:0}.header-stats{margin-top:20px;margin-bottom:-20px}.header-stats .list-inline{margin-bottom:0}.header-stats .list-inline li{margin-bottom:0;margin-right:8px;overflow:auto;vertical-align:top}.header-stats .list-inline li .status-icon{margin-right:4px;bottom:1px}.header-stats .list-inline li>.icon-legend,.header-stats .list-inline li>.material-icon{float:left}.header-stats .list-inline li>.material-icon{margin-right:4px;position:relative;top:3px}.page-header .page-tabs{margin-top:20px;margin-bottom:-40px}.page-header .page-tabs .nav>li{margin:0}.page-header .page-tabs .nav>li>a{border-radius:0}.page-tabs ul{display:block;overflow-x:auto}.page-tabs ul a,.page-tabs ul li{display:inline-block;float:none}.page-tabs ul a .material-icon,.page-tabs ul li .material-icon{margin-right:6px}@media screen and (max-width:767px){.page-tabs .container{padding-left:0;padding-right:0}.page-tabs li a{padding-left:26.6px;padding-right:26.6px}.header-stats+.page-tabs{margin-top:30px}}.title-edit-form{margin-bottom:12px}@media screen and (max-width:991px){.header-stats .list-inline{font-size:12px}.header-stats .list-inline li>.material-icon{top:2px}.panel-message-body{text-align:center}.panel-message-body .message-icon{margin:30px}.panel-message-body .message-icon .material-icon{font-size:160px}}@media screen and (min-width:992px){.panel-message-body{padding:20px 20px 30px}.panel-message-body .message-icon{float:left}.panel-message-body .message-icon .material-icon{font-size:50px}.panel-message-body .message-body{margin-left:65px;margin-top:10px}.panel-message-body .message-body .lead{margin-bottom:0}.panel-message-body .message-body .help-block{margin-top:13.2px}}.panel-body-loading{padding:0;text-align:center}.misago-footer{margin-bottom:50px}.misago-footer .noscript-message .material-icon{position:relative;bottom:1px;font-size:18px}.ui-preview{color:#eee;-webkit-animation:ui-preview-animation 1s linear infinite;-o-animation:ui-preview-animation 1s linear infinite;animation:ui-preview-animation 1s linear infinite}@keyframes ui-preview-animation{0%,100%{opacity:1;filter:alpha(opacity=100)}50%{opacity:.1;filter:alpha(opacity=10)}}.ui-preview-text{background:#eee;border-radius:100px;display:inline-block;height:14px;position:relative;top:3px}.ui-preview-paragraph .ui-preview-text{margin-right:6px}.ui-preview-paragraph .ui-preview-text:last-child{margin-right:0}.ui-preview-img{background:#eee;border-radius:5px}.pager-undercontent{margin-top:-20px}@media screen and (min-width:992px){.pager-more .btn{padding-left:20px;padding-right:20px}}.misago-pagination{overflow:auto}.misago-pagination .pagination{float:left;margin:0 10px 0 0}.misago-pagination .pagination li>a,.misago-pagination .pagination li>span{padding:2px}.misago-pagination .pagination .material-icon{width:28px;height:28px;font-size:28px;line-height:28px}.misago-pagination p{float:left;margin:0;padding:7px}.panel-poll h2{margin-top:0}.poll-select-choice .btn,.poll-select-choice .btn:active,.poll-select-choice .btn:focus,.poll-select-choice .btn:hover{background:0 0;border:transparent;-webkit-box-shadow:none;box-shadow:none;margin:6px 0;padding:0 0 0 6px;outline:0;text-align:left}.poll-select-choice .btn .material-icon{margin-right:6px;height:28px;width:28px;font-size:28px;line-heigh:28px;color:#eee}.poll-select-choice .btn.btn-selected .material-icon{color:#651fff}.poll-help{font-size:12px}.poll-chart-selected .material-icon{margin-right:4px;position:relative;bottom:1px;height:14px;width:14px;color:#43a047;font-size:14px;line-heigh:14px}.poll-options{margin-bottom:0}.user-status.user-banned .status-icon{color:#f44336}.user-status.user-online .status-icon{color:#43a047}.user-status.user-offline .status-icon{color:#777}.item-title,a.item-title:active,a.item-title:hover,a.item-title:link,a.item-title:visited{color:#212121;font-weight:700}.user-card-small-avatar img{width:100%;height:auto}@media screen and (min-width:768px){.user-card{text-align:center}.user-card-small-avatar{display:none}}@media screen and (max-width:767px){.poll-options{margin-top:-6px}.poll-options .btn{margin:6px 0}.user-card-avatar{display:none}}.toolbar{display:block;margin-bottom:20px}.toolbar.toolbar-bottom{margin-top:10px;margin-bottom:20px}.toolbar>h3{font-size:18px}.toolbar>p{padding:6px 0;text-align:center}@media screen and (min-width:992px){.toolbar-left{float:left;margin-right:16px}.toolbar-right{float:right;margin-left:16px}.toolbar .toolbar-bottom>.form-control,.toolbar .toolbar-control{margin:0;width:auto}.toolbar>h3,.toolbar>p{min-height:34px;margin:0;padding-top:6px;text-align:left}.toolbar>p{padding-top:7px}}.row-toolbar .toolbar-vertical-spacer{margin-top:10px}.row-toolbar-bottom-margin{margin-bottom:20px}@media screen and (min-width:768px){.row-toolbar p{padding-top:7px}}abbr{border:none!important}.item-title{text-decoration:none}a.item-title:hover{text-decoration:underline}.message-line{text-align:center}.message-line .material-icon{margin-right:6.67px;font-size:20px;line-height:20px;height:20px;width:20px}.misago-markup h1,.misago-markup h2,.misago-markup h3,.misago-markup h4,.misago-markup h5,.misago-markup h6{margin-top:40px}.misago-markup blockquote>*,.misago-markup>*{margin:20px 0}.misago-markup blockquote>:first-child,.misago-markup>:first-child{margin-top:0}.misago-markup blockquote>:last-child,.misago-markup>:last-child{margin-bottom:0}.misago-markup img{max-width:100%;max-height:500px}.misago-markup .quote-block,.misago-markup blockquote{background:#eee;border:none;font-size:14px}.misago-markup .quote-block .quote-heading,.misago-markup blockquote .quote-heading{padding:10px 20px;font-size:12px;font-weight:700}.misago-markup .quote-body{margin:0;padding:20px}.misago-markup .quote-body>.quote-block,.misago-markup .quote-body>blockquote{border:1px solid #dadada}.misago-markup ul,.misago-markup ul li{list-style-type:square}.misago-markup ol,.misago-markup ol li{list-style-type:decimal}.misago-markup pre{background:#eee;border:none;padding:10px;overflow:hidden;color:#000}.misago-markup pre code.hljs{margin:-10px;padding:9.5px}.modal-change-avatar .modal-avatar-index .avatar-preview{border-radius:6px;margin:0 auto;overflow:hidden;position:relative;width:200px;height:200px}.modal-change-avatar .modal-avatar-index .avatar-preview .loader{display:none;position:absolute;top:50px;height:100px}.modal-change-avatar .modal-avatar-index .avatar-preview .loader .loader-spinning-wheel{border-width:10px;border-color:#fff transparent;width:100px;height:100px}.modal-change-avatar .modal-avatar-index .avatar-preview.preview-loading img{opacity:.33;filter:alpha(opacity=33)}.modal-change-avatar .modal-avatar-index .avatar-preview.preview-loading .loader{display:block}@media (max-width:699px){.modal-change-avatar .modal-avatar-index .avatar-preview{margin-bottom:20px;width:150px;height:150px}.modal-change-avatar .modal-avatar-index .avatar-preview img{width:150px;height:150px}.modal-change-avatar .modal-avatar-index .avatar-preview .loader{top:25px;height:100px}.modal-change-avatar .modal-avatar-index .avatar-preview .loader .loader-spinning-wheel{width:100px;height:100px}}.modal-change-avatar .modal-avatar-index .btn{text-align:left}.modal-change-avatar .modal-avatar-upload{text-align:center}.modal-change-avatar .modal-avatar-upload .btn-pick-file{background:0 0;border:2px solid #eee;border-radius:6px;padding:10px 24px;-webkit-box-shadow:none;box-shadow:none;color:#777;font-size:18px;text-align:center}.modal-change-avatar .modal-avatar-upload .btn-pick-file>.material-icon{display:block;margin:0 auto 13.2px;font-size:50px;width:50px;height:50px}.modal-change-avatar .modal-avatar-upload .btn-pick-file:active,.modal-change-avatar .modal-avatar-upload .btn-pick-file:hover{border-color:#777}.modal-change-avatar .modal-avatar-upload .text-muted{margin-top:13.2px}.modal-change-avatar .modal-avatar-upload .upload-progress img{border-radius:4px;margin-bottom:20px;max-height:80px;width:auto}.modal-change-avatar .modal-avatar-upload .upload-progress .progress{width:70%;margin:0 auto}.modal-avatar-crop .crop-form{margin:0 auto}.modal-avatar-crop .crop-form .cropit-image-zoom-input{margin-top:10px;-webkit-appearance:none;border:1px solid #fff;width:100%}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-webkit-slider-runnable-track{width:100%;height:8px;background:#eee;border:none;border-radius:3px}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-webkit-slider-thumb{-webkit-appearance:none;border:none;height:20px;width:20px;border-radius:50%;background:#777;margin-top:-6px}.modal-avatar-crop .crop-form .cropit-image-zoom-input:focus{outline:0}.modal-avatar-crop .crop-form .cropit-image-zoom-input:focus::-webkit-slider-runnable-track{background:#eee}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-moz-range-track{width:100%;height:8px;background:#eee;border:none;border-radius:4px}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-moz-range-thumb{border:none;height:20px;width:20px;border-radius:50%;background:#777}.modal-avatar-crop .crop-form .cropit-image-zoom-input:-moz-focusring{outline:#fff solid 1px;outline-offset:-1px}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-ms-track{width:100%;height:8px;background:0 0;border-color:transparent;border-width:8px 0;color:transparent}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-ms-fill-lower{background:#eee;border-radius:16px}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-ms-fill-upper{background:#eee;border-radius:16px}.modal-avatar-crop .crop-form .cropit-image-zoom-input::-ms-thumb{border:none;height:20px;width:20px;border-radius:50%;background:#777}.modal-avatar-crop .crop-form .cropit-image-zoom-input:focus::-ms-fill-lower{background:#eee}.modal-avatar-crop .crop-form .cropit-image-zoom-input:focus::-ms-fill-upper{background:#eee}.modal-change-avatar .modal-avatar-gallery{padding-bottom:0}.modal-change-avatar .modal-avatar-gallery .avatars-gallery{margin-bottom:20px}.modal-change-avatar .modal-avatar-gallery .avatars-gallery h3{margin-top:0}.modal-change-avatar .modal-avatar-gallery .avatars-gallery-images .row{margin-bottom:10px}.modal-change-avatar .modal-avatar-gallery .avatars-gallery-images .btn{border-radius:6px;border:2px solid #eee;background:0 0;padding:2px;position:relative}.modal-change-avatar .modal-avatar-gallery .avatars-gallery-images .btn:focus,.modal-change-avatar .modal-avatar-gallery .avatars-gallery-images .btn:hover{border-color:#777}.modal-change-avatar .modal-avatar-gallery .avatars-gallery-images .btn.avatar-selected,.modal-change-avatar .modal-avatar-gallery .avatars-gallery-images .btn:active{border-color:#651fff}.modal-change-avatar .modal-avatar-gallery .avatars-gallery-images .btn img{border-radius:4px;width:100%;height:auto}.category-main .read-status .material-icon{color:#eee}.category-main .read-status.item-new .material-icon{color:#651fff}.category-last-thread .media-heading a{display:inline-block;overflow:hidden;white-space:nowrap;width:290px;text-overflow:ellipsis;vertical-align:top}@media screen and (max-width:991px){.category-last-thread .media-heading a{width:275px}}@media screen and (max-width:767px){.category-last-thread .media-heading a{width:260px}}.category-thread-message .material-icon{width:28px;height:28px;font-size:28px;line-height:28px}.category-thread-message p{margin:0}.list-inline.subcategories-list{overflow:auto;margin-top:-10px}.list-inline.subcategories-list li{display:block;float:left}.list-inline.subcategories-list li a,.list-inline.subcategories-list li a:active,.list-inline.subcategories-list li a:focus,.list-inline.subcategories-list li a:hover,.list-inline.subcategories-list li a:link,.list-inline.subcategories-list li a:visited{background-color:#eee;border:1px solid #e2e2e2;border-radius:4px;display:inline-block;margin-top:10px;padding:6px 12px;color:#555}#posting-placeholder .first-row .form-control,.editor-border{border:1px solid #c8c8c8}.list-inline.subcategories-list li a:active,.list-inline.subcategories-list li a:hover,.list-inline.subcategories-list li:focus{background-color:#e2e2e2;color:#212121;text-decoration:none}.row.subcategories-list .btn{margin-top:20px;text-align:left}#posting-placeholder{background-color:#eee;display:none;margin-top:30px;margin-bottom:-30px;padding:20px 0;transition:height .3s}#posting-placeholder.slide-in{display:block}#posting-placeholder .first-row{margin-bottom:20px}#posting-placeholder .first-row .posting-options .btn{padding-top:4px;padding-bottom:4px}#posting-placeholder .first-row .posting-options .btn .btn-text{margin-left:5px;position:relative;top:1px}#posting-placeholder .first-row .posting-options .material-icon{width:14px;height:24px;margin-right:0;position:relative;top:5px;font-size:14px;line-height:14px;text-align:center}.posting-ui-preview{padding:20px 0;position:relative}.posting-ui-preview .form-control{box-shadow:none;resize:none}.posting-loader{text-align:center}.posting-loader .loader{height:100px}.posting-loader .loader .loader-spinning-wheel{width:100px;height:100px}.posting-message{text-align:center}.posting-message .material-icon{margin-right:6.67px;position:relative;top:-1px;width:28px;height:28px;font-size:28px;line-height:28px}.posting-message .message-body p{font-size:18px}.editor-border{background-color:#fff;border-radius:4px}.editor-border .form-control{border:none;resize:none}.editor-border .form-control,.editor-border .form-control:active,.editor-border .form-control:focus{-webkit-box-shadow:none;box-shadow:none}.editor-footer{border-top:1px solid #c8c8c8;padding:6px 12px;overflow:auto}.editor-footer .pull-left{margin-right:12px}.editor-footer .pull-right{margin-left:12px}.editor-footer .btn-icon .material-icon{margin-bottom:-2px}@media screen and (max-width:991px){.editor-footer .buttons-list{float:none!important;margin:0 0 10px}.editor-footer .buttons-list .btn{display:inline-block;float:none!important;margin:6.67px}.editor-footer .btn-protect .btn-text{margin-left:10px}.editor-footer .btn-protect .material-icon{position:relative;bottom:2px;width:14px;height:14px;font-size:14px;line-height:14px}}@media screen and (min-width:768px) and (max-width:991px){.buttons-list .btn:first-child{margin-left:0}}@media screen and (max-width:767px){.buttons-list{text-align:center}.buttons-list .btn-protect{display:block;float:none!important;width:100%;margin:10px 0 0}}.editor-attachments-list{margin:0;padding:0}.editor-attachments-list li{margin:0}.editor-attachment-complete{border-top:1px solid #c8c8c8;padding:6px 12px 6px 0}.editor-attachment-complete .editor-attachment-image{float:left;width:50px}.editor-attachment-complete .editor-attachment-image a{background-size:cover;background-position:center;border-radius:3px;display:block;margin:0 auto;width:36px;height:36px}.editor-attachment-complete .editor-attachment-icon{float:left;width:50px;text-align:center}.editor-attachment-complete .editor-attachment-icon .material-icon{position:relative;top:2px;height:28px;width:28px;font-size:28px;line-height:28px}.editor-attachment-complete .editor-attachment-details{margin-left:50px}.editor-attachment-complete .editor-attachment-details h4,.editor-attachment-complete .editor-attachment-details p{margin:0;padding:0;font-size:14px}.editor-attachment-complete .editor-attachment-details p{margin-top:3px;color:#777;font-size:12px}@media screen and (min-width:768px){.editor-attachment-actions{padding-top:3px}}@media screen and (max-width:767px){.editor-attachment-actions{padding-left:12px;padding-right:12px}}.editor-attachment-error{border-top:1px solid #c8c8c8;padding:6px 12px 6px 0}.editor-attachment-error-icon{float:left;width:50px;text-align:center}.editor-attachment-error-icon .material-icon{position:relative;top:2px;height:28px;width:28px;font-size:28px;line-height:28px}.editor-attachment-error-message{margin-left:50px;padding:6px 0;position:relative}.editor-attachment-error-message h4,.editor-attachment-error-message p{margin:0;padding:0;font-size:14px}.editor-attachment-error-message p{margin-top:3px;font-size:12px}.editor-attachment-error-message .btn{position:absolute;top:9px;right:12px}@media screen and (max-width:767px){.editor-attachment-error-message .btn{display:block;margin-top:10px;position:static}}.editor-attachment-progress-bar{background:#c8c8c8;overflow:auto}.editor-attachment-progress{background:#651fff;float:left;height:1px}.editor-attachment-upload-message{margin:0;padding:6px 12px}#editor-upload-field{position:absolute;left:-1000px;top:-1000px}.atwho-view ul li img{border-radius:3px;margin-right:4.67px;width:20px;height:20px}.participant-card .btn-user,.participant-card .dropdown.open .btn-user{margin-bottom:20px}.participant-card .btn-user,.participant-card .btn-user:focus,.participant-card .btn-user:focus:active,.participant-card .btn-user:hover,.participant-card .dropdown.open .btn-user,.participant-card .dropdown.open .btn-user:focus,.participant-card .dropdown.open .btn-user:focus:active,.participant-card .dropdown.open .btn-user:hover{padding:0;overflow:hidden;text-align:left}.participant-card .btn-user img,.participant-card .dropdown.open .btn-user img{background-color:#fff;width:34px;height:34px;margin-right:8px}.panel-participants p{margin:7px 0 0}.poll-choices-control .list-group-item{padding:0}.poll-choices-control .list-group-item .btn{background:0 0;border:transparent;float:left;margin:0 2px -29px;padding:0;width:28px;height:28px;position:relative;top:3px}.poll-choices-control .list-group-item .btn .material-icon{width:28px;height:28px;font-size:28px;line-height:28px}.poll-choices-control input,.poll-choices-control input:active,.poll-choices-control input:focus{background:0 0;border:none;-webkit-box-shadow:none;box-shadow:none;outline:0;margin-left:30px;padding:6px 12px;width:100%}.posts-list{margin:0;padding:0;clear:both}.posts-list li{list-style:none;margin:0;padding:0}.post-side{font-size:12px}.post-side .media{margin:0}.post-side .poster-avatar{height:36px;width:36px}@media screen and (min-width:992px){.post-side .poster-avatar{margin-top:4px;height:82px;width:82px}}.post-side .media-heading{display:block;margin:-1px 0 0;font-size:14px}.post-side .media-heading .user-status{margin-left:2px}.post-heading .pull-right,.post-side .pull-right{margin-left:16px}@media screen and (min-width:992px){.post-side .media-heading{margin-top:3px;font-size:18px}.post-side .media-heading .user-status{display:none}.post-side .user-title{margin-top:4px;margin-bottom:5px}.post-side .user-postcount,.post-side .user-status{display:block}.post-side .pull-right{display:none}}.post-heading{height:36px}@media screen and (max-width:991px){.post-heading{margin-top:10px}.post-heading .pull-right{display:none}}.post-heading .label{margin-top:6px;font-size:14px;font-weight:400}.post-heading .label-unread{color:#fff}.post-body{padding-top:20px;padding-bottom:30px}.post-status-message{overflow:auto}.post-status-message .material-icon{float:left;font-size:28px;line-height:28px}.post-status-message p{margin:4px 0 0 36px}.post-status-hidden{background-color:#f44336;color:#fff}.post-status-unapproved{background-color:#651fff;color:#fff}.post-status-protected{background-color:#555;color:#fff}.post-footer .pull-left{margin-right:16px}.post-footer .pull-right{margin-left:16px}.post-footer p{padding-top:7px;padding-bottom:6px;margin-bottom:0}.post-attachments{padding:6px 16px}.post-attachments .row>div{margin:10px 0}.post-attachments .post-attachment-preview{float:left;height:40px;width:40px;text-align:center}.post-attachments .post-attachment{margin-left:52px}.post-attachments .post-thumbnail{display:block;background-size:cover;background-position:center;border-radius:3px;width:40px;height:40px}.post-attachments .material-icon{width:28px;height:28px;position:relative;top:5px;font-size:28px;line-height:28px}.post-attachments .material-icon:active,.post-attachments .material-icon:focus,.post-attachments .material-icon:hover,.post-attachments .material-icon:link,.post-attachments .material-icon:visited{color:#222;text-decoration:none}.post-attachments .post-attachment-description{margin:0;padding:0;color:#777;font-size:12px}.post-feed .post-side .media-heading{margin:0;font-size:14px}.post-feed .post-side .user-title{margin:0;font-size:12px}.post-feed .post-side .btn{display:inline-block}.post-feed .post-side img{margin-top:0;width:36px;height:36px}.post-feed .post-heading{height:auto;margin:10px 0}.post-feed .post-heading .btn{margin-right:16px;max-width:100%;text-align:left;white-space:normal}.posts-list .event{margin-bottom:20px;color:#777}.posts-list .event .media{margin-top:5px}.posts-list .event-label .label-unread{background-color:#43a047;color:#fff}.posts-list .event .text-right{padding-right:0;text-align:right}.posts-list .event .text-right .material-icon{margin-right:-12px;height:28px;width:28px;font-size:28px;line-height:28px;text-align:center}.posts-list .event .text-left{padding-left:24px}.posts-list .event .event-message{margin-bottom:5px;font-size:18px}.posts-list .event .event-info{margin:0;font-size:12px}.posts-list .event .event-info li{margin-right:12px}.posts-list .event .event-info li:last-child{margin-right:0}.posts-list .event .event-controls .btn-link{border:0;margin:0 12px 0 0;padding:0;font-size:12px}.posts-list .event .event-controls .btn-link:last-child{margin-right:0}@media screen and (max-width:767px){.posts-list .event .text-right{width:28px;text-align:right}.posts-list .event .text-left:first-child{padding-left:0}.posts-list .event .event-info{margin-top:5px}.posts-list .event .event-controls{clear:both;margin-top:5px}.posts-list .event .event-controls .btn-link{margin-right:20px;font-size:14px}.posts-list .event .event-controls .btn-link:last-child{margin-right:0}.post-changelog-toolbar .post-change-label{text-align:center}}.post-changelog-diff{padding:0;margin:0}.post-changelog-diff .list-unstyled{padding:0;margin:5px 0}.post-changelog-diff .diff-item{padding:5px 10px}.post-changelog-diff .diff-item-sub{color:#f44336}.post-changelog-diff .diff-item-add{color:#43a047}.post-changelog-toolbar .row{margin-left:-12px;margin-right:-12px}@media screen and (max-width:767px){.page-error .message-panel,.page-message .message-panel{text-align:center}.page-error .message-icon,.page-message .message-icon{margin:30px;font-size:80px}}@media screen and (min-width:768px){.page-error .message-panel,.page-message .message-panel{margin:60px auto;max-width:779.35px;overflow:auto}.page-error .message-icon,.page-message .message-icon{float:left}.page-error .message-icon .material-icon,.page-message .message-icon .material-icon{font-size:80px}.page-error .message-body,.page-message .message-body{margin-top:16px;margin-left:100px;font-size:18px}.page-error .message-body p.lead,.page-message .message-body p.lead{font-size:36px}}.threads-list{margin-bottom:20px}.threads-list .thread-title,.threads-list .thread-title:active,.threads-list .thread-title:focus,.threads-list .thread-title:hover,.threads-list .thread-title:link,.threads-list .thread-title:visited{font-size:18px;font-weight:400}.thread-last-action .media-body,.thread-last-action .media-left{padding-top:2px}.threads-list .thread-options{padding-top:5px}.threads-list .thread-main .media-left{padding-top:2px;padding-bottom:1px}.threads-list .thread-details-top{overflow-x:auto;white-space:nowrap}.threads-list .thread-details-bottom div>a,.threads-list .thread-details-bottom div>span,.threads-list .thread-details-top>a,.threads-list .thread-details-top>span{margin-right:16px;font-size:12px;font-weight:400}.threads-list .thread-details-bottom div>a>.material-icon,.threads-list .thread-details-bottom div>span>.material-icon,.threads-list .thread-details-top>a>.material-icon,.threads-list .thread-details-top>span>.material-icon{position:relative;top:-1px}.threads-list .thread-details-bottom div>a .detail-text,.threads-list .thread-details-bottom div>span .detail-text,.threads-list .thread-details-top>a .detail-text,.threads-list .thread-details-top>span .detail-text{margin-left:2px}@media screen and (max-width:991px){.threads-list .thread-details-bottom div>a,.threads-list .thread-details-bottom div>span,.threads-list .thread-details-top>a,.threads-list .thread-details-top>span{margin-right:12px}}@media screen and (max-width:767px){.threads-list .thread-details-bottom{margin-top:8px}.threads-list .thread-details-top{margin-bottom:6px}}@media screen and (min-width:768px){.threads-list .thread-details-top{margin-left:50px}}.thread-last-action{padding-top:1px}.thread-last-action .thread-last-poster{display:block}.thread-options-xs{margin-top:-10px;margin-bottom:-20px;position:relative;top:5px}.thread-options-xs .btn{padding:0 2px;font-size:12px}.thread-options-xs .btn .material-icon{width:14px;height:14px;font-size:14px;line-height:14px}.threads-diff-message{padding:0}.threads-diff-message .btn{border-bottom-left-radius:0;border-bottom-right-radius:0;padding:10px 16px;width:100%;overflow:none;text-align:left}.threads-diff-message .btn .material-icon{margin-right:4px;width:24px;font-size:24px;height:24px}@media screen and (max-width:991px){.threads-diff-message .btn{text-align:center;white-space:normal;word-wrap:break-word}.threads-diff-message .btn .material-icon{display:none}}.threads-list .thread-preview .ui-preview-text{margin-right:16px}.threads-list .thread-preview .thread-details-bottom div .ui-preview-text,.threads-list .thread-preview .thread-details-top .ui-preview-text{height:9.6px}.threads-list .thread-preview .thread-details-bottom{margin-top:6px}.threads-list .thread-preview .thread-details-top{margin-bottom:6px}.threads-list .thread-busy .thread-row{-webkit-animation:thread-busy-animation .6s linear infinite;-o-animation:thread-busy-animation .6s linear infinite;animation:thread-busy-animation .6s linear infinite}@keyframes thread-busy-animation{0%,100%{opacity:.2;filter:alpha(opacity=20)}50%{opacity:.5;filter:alpha(opacity=50)}}.btn-danger.disabled,.btn-danger.disabled:active,.btn-danger.disabled:hover,.btn-danger:disabled,.btn-danger:disabled:hover,.btn-default.btn-outline.disabled,.btn-default.btn-outline.disabled:active,.btn-default.btn-outline.disabled:hover,.btn-default.btn-outline:disabled,.btn-default.btn-outline:disabled:hover,.btn-default.disabled,.btn-default.disabled:active,.btn-default.disabled:hover,.btn-default:disabled,.btn-default:disabled:hover,.btn-primary.btn-outline.disabled,.btn-primary.btn-outline.disabled:active,.btn-primary.btn-outline.disabled:hover,.btn-primary.btn-outline:disabled,.btn-primary.btn-outline:disabled:hover,.btn-primary.disabled,.btn-primary.disabled:active,.btn-primary.disabled:hover,.btn-primary:disabled,.btn-primary:disabled:hover,.btn-success.disabled,.btn-success.disabled:active,.btn-success.disabled:hover,.btn-success:disabled,.btn-success:disabled:hover,.navbar-misago .btn-register.disabled,.navbar-misago .btn-register.disabled:active,.navbar-misago .btn-register.disabled:hover,.navbar-misago .btn-register:disabled,.navbar-misago .btn-register:disabled:hover,.navbar-misago .btn-sign-in.disabled,.navbar-misago .btn-sign-in.disabled:active,.navbar-misago .btn-sign-in.disabled:hover,.navbar-misago .btn-sign-in:disabled,.navbar-misago .btn-sign-in:disabled:hover,.threads-diff-message .btn.disabled,.threads-diff-message .btn.disabled:active,.threads-diff-message .btn.disabled:hover,.threads-diff-message .btn:disabled,.threads-diff-message .btn:disabled:hover{opacity:.25;filter:alpha(opacity=25)}.active-posters li{display:block;overflow:auto}.active-posters .rank-user-avatar{float:left}.active-posters .rank-user{float:left;margin-top:3px}@media screen and (max-width:991px){.active-posters .rank-user-avatar{height:42px}.active-posters .rank-user-avatar img{width:36px;height:36px;position:relative;top:3px}.active-posters .rank-user{margin-left:13.2px;width:40%}}@media screen and (max-width:767px){.active-posters .rank-user{float:none;margin-left:50px;width:auto}.active-posters .user-details{margin-top:3px}.active-posters .user-details .rank-name,.active-posters .user-details .user-title{font-weight:400}}@media screen and (min-width:992px){.active-posters .rank-user{margin-left:16px;width:25%}.active-posters .rank-user .user-name{font-size:18px}}.active-posters .user-details{overflow:auto;font-family:Sans-Serif}.active-posters .user-details .rank-name,.active-posters .user-details .user-status,.active-posters .user-details .user-title{display:block;float:left;margin-right:3px;font-size:12px}@media screen and (min-width:992px){.active-posters .user-details .rank-name,.active-posters .user-details .user-status,.active-posters .user-details .user-title{margin-right:8px}.active-posters .user-details{overflow:visible}.active-posters .user-details .rank-name,.active-posters .user-details .user-title{height:14px;overflow:hidden;position:relative;top:1px;vertical-align:baseline}}.active-posters .user-details .user-title{margin-right:0}.active-posters .user-status{overflow:auto;position:relative;top:1px}.active-posters .user-status span{display:block;float:left}@media screen and (min-width:992px){.active-posters .user-status{height:14px;overflow:hidden}}.active-posters .user-status .status-icon{position:relative}@media screen and (max-width:991px){.active-posters .user-status .status-icon{top:0;width:12px;height:12px;font-size:12px;line-height:12px}}@media screen and (min-width:992px){.active-posters .user-status .status-icon{top:1px;margin-right:3px;width:13px;height:13px;font-size:13px;line-height:13px}}.active-posters .rank-name .ui-preview-text,.active-posters .status-label.ui-preview-text,.active-posters .user-title .ui-preview-text{height:11px;position:relative;top:2px;font-size:11px;line-height:11px}.active-posters .rank-name .ui-preview-text,.active-posters .user-title .ui-preview-text{position:static}.active-posters .rank-position small,.active-posters .rank-position strong,.active-posters .rank-posts-counted small,.active-posters .rank-posts-counted strong,.active-posters .rank-posts-total small,.active-posters .rank-posts-total strong{display:block}@media screen and (max-width:991px){.active-posters .rank-position,.active-posters .rank-posts-counted,.active-posters .rank-posts-total{overflow:auto}.active-posters .rank-position small,.active-posters .rank-position strong,.active-posters .rank-posts-counted small,.active-posters .rank-posts-counted strong,.active-posters .rank-posts-total small,.active-posters .rank-posts-total strong{float:left;font-size:10.5px}.active-posters .rank-position strong,.active-posters .rank-posts-counted strong,.active-posters .rank-posts-total strong{min-width:30px;margin-right:3px;text-align:right}.active-posters .rank-position .ui-preview-text,.active-posters .rank-posts-counted .ui-preview-text,.active-posters .rank-posts-total .ui-preview-text{height:8px;position:relative;top:-1px;font-size:8px;line-height:8px}}@media screen and (min-width:992px){.active-posters .rank-position,.active-posters .rank-posts-counted,.active-posters .rank-posts-total{float:left;margin-top:3px;width:23%;font-size:18px;text-align:center}.active-posters .rank-position small,.active-posters .rank-posts-counted small,.active-posters .rank-posts-total small{font-size:12px;font-weight:400}}.user-compact-stats .rank-position small,.user-compact-stats .rank-position strong,.user-compact-stats .rank-posts-counted small,.user-compact-stats .rank-posts-counted strong{display:inline-block;float:none}.user-compact-stats .rank-position strong,.user-compact-stats .rank-posts-counted strong{min-width:auto}.user-compact-stats .rank-position small,.user-compact-stats .rank-posts-counted small{margin-right:20px}@media screen and (min-width:768px) and (max-width:991px){.active-posters .rank-position{margin-top:6px}.active-posters .rank-posts-total{display:none}}.page-user-profile .page-header{padding-top:20px}.page-user-profile .page-header .alert{margin-bottom:20px;text-align:center}.page-user-profile .page-header h1{margin-bottom:0}.page-user-profile .page-header .btn-aligned{margin-top:0}@media screen and (max-width:767px){.page-user-profile .page-header,.page-user-profile .page-header .header-stats ul{text-align:center}.page-user-profile .page-header img{clear:both;margin-top:20px;width:100px;height:100px}.page-user-profile .page-header h1{margin-top:20px;font-size:28px}.page-user-profile .page-header .header-stats ul li{display:inline-block;white-space:nowrap}.page-user-profile .profile-side-avatar{display:none}}@media screen and (min-width:768px) and (max-width:991px){.page-user-profile .page-header h1,.page-user-profile .page-header img{float:left}.page-user-profile .page-header img{margin-top:20px;margin-right:24px;width:80px;height:80px}.page-user-profile .page-header h1{position:relative;top:25px}.page-user-profile .page-header .header-stats{margin-left:112px;margin-top:25px;margin-bottom:-45px;position:relative;bottom:50px}}@media screen and (min-width:992px){.page-user-profile .page-header .user-avatar-sm{display:none}.page-user-profile .page-header h1{position:relative;top:5px}.page-user-profile .page-header .header-stats ul li{display:block;float:left}.page-user-profile .profile-side-avatar img{width:100%;height:auto;margin-top:-140px;margin-bottom:20px}.username-history li{display:block;overflow:auto}}.username-history .change-avatar{float:left}.username-history .change-avatar a,.username-history .change-avatar span{margin-right:10px}.username-history .change-avatar a img,.username-history .change-avatar span img{width:42px;height:42px}.username-history .change{min-height:20px;overflow:auto}.username-history .change span{display:block;float:left}.username-history .change .material-icon{margin:0 7px;position:relative;top:4px}.search-footer p{margin-top:20px;color:#555;font-size:12px;text-align:center}@media screen and (min-width:768px){.page-search-form{padding-top:40px}}@media screen and (min-width:992px){.username-history .change-avatar a img,.username-history .change-avatar span img{width:18px;height:18px;position:relative;bottom:1px}.username-history .change-author{float:left;width:30%}.username-history .change{float:left;width:40%}.username-history .change-date{float:left;width:20%}.page-search-form{padding-bottom:40px}.page-search-form h1{position:relative;top:5px}.page-search-form .form-group{margin-bottom:0}}.hljs{display:block;overflow-x:auto;padding:.5em;background:#eee;color:#000}.hljs-addition,.hljs-attribute,.hljs-emphasis,.hljs-link{color:#070}.hljs-emphasis{font-style:italic}.hljs-deletion,.hljs-string,.hljs-strong{color:#d14}.hljs-strong{font-weight:700}.hljs-comment,.hljs-quote{color:#998;font-style:italic}.hljs-section,.hljs-title{color:#900}.hljs-class .hljs-title,.hljs-type{color:#458}.hljs-template-variable,.hljs-variable{color:#369}.hljs-bullet{color:#970}.hljs-meta{color:#34b}.hljs-code,.hljs-keyword,.hljs-literal,.hljs-number,.hljs-selector-tag{color:#099}.hljs-regexp{background-color:#fff0ff;color:#808}.hljs-symbol{color:#990073}.hljs-name,.hljs-selector-class,.hljs-selector-id,.hljs-tag{color:#070}.atwho-view{position:absolute;top:0;left:0;display:none;margin-top:18px;background:#fff;color:#000;border:1px solid #DDD;border-radius:3px;box-shadow:0 0 5px rgba(0,0,0,.1);min-width:120px;z-index:11110!important}.atwho-view .atwho-header{padding:5px;margin:5px;cursor:pointer;border-bottom:solid 1px #eaeff1;color:#6f8092;font-size:11px;font-weight:700}.atwho-view .atwho-header .small{color:#6f8092;float:right;padding-top:2px;margin-right:-5px;font-size:12px;font-weight:400}.atwho-view .atwho-header:hover{cursor:default}.atwho-view .cur{background:#36F;color:#fff}.atwho-view .cur small{color:#fff}.atwho-view strong{color:#36F}.atwho-view .cur strong{color:#fff;font:700}.atwho-view ul{list-style:none;padding:0;margin:auto;max-height:200px;overflow-y:auto}.atwho-view ul li{display:block;padding:5px 10px;border-bottom:1px solid #DDD;cursor:pointer}.atwho-view small{font-size:smaller;color:#777;font-weight:400}#misago-container,body,html{background:#fff}abbr{outline:0;text-decoration:none}.shadow-2dp{box-shadow:0 2px 2px 0 rgba(0,0,0,.04),0 3px 1px -2px rgba(0,0,0,.06),0 1px 5px 0 rgba(0,0,0,.12)}.shadow-3dp{box-shadow:0 3px 4px 0 rgba(0,0,0,.04),0 3px 3px -2px rgba(0,0,0,.06),0 1px 8px 0 rgba(0,0,0,.12)}.shadow-4dp{box-shadow:0 4px 5px 0 rgba(0,0,0,.04),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.06)}.shadow-6dp{box-shadow:0 6px 10px 0 rgba(0,0,0,.04),0 1px 18px 0 rgba(0,0,0,.12),0 3px 5px -1px rgba(0,0,0,.06)}.shadow-8dp{box-shadow:0 8px 10px 1px rgba(0,0,0,.04),0 3px 14px 2px rgba(0,0,0,.12),0 5px 5px -3px rgba(0,0,0,.06)}.shadow-16dp{box-shadow:0 16px 24px 2px rgba(0,0,0,.04),0 6px 30px 5px rgba(0,0,0,.12),0 8px 10px -5px rgba(0,0,0,.06)}.shadow-24dp{box-shadow:0 9px 46px 8px rgba(0,0,0,.04),0 11px 15px -7px rgba(0,0,0,.12),0 24px 38px 3px rgba(0,0,0,.06)}.btn-default,.btn-default.disabled,.btn-default.disabled:active,.btn-default.disabled:hover,.btn-default:disabled,.btn-default:disabled:hover{background:#f3f3f3;border:1px solid #f3f3f3;color:#757575;-webkit-box-shadow:none;box-shadow:none}.btn-default:focus,.btn-default:hover{background:#e0e0e0;border:1px solid #e0e0e0;color:#212121;-webkit-box-shadow:none;box-shadow:none}.btn-default:active,.btn-default:active:focus,.dropdown.open .btn-default,.dropdown.open .btn-default:active:focus,.dropdown.open .btn-default:focus,.dropdown.open .btn-default:hover{background:#bdbdbd;border:1px solid #bdbdbd;color:#212121;-webkit-box-shadow:none;box-shadow:none}.btn-default.btn-loading,.btn-default.btn-loading:active,.btn-default.btn-loading:active:focus,.btn-default.btn-loading:disabled,.btn-default.btn-loading:disabled:hover,.btn-default.btn-loading:focus,.btn-default.btn-loading:hover{color:transparent}.btn-primary,.btn-primary.disabled,.btn-primary.disabled:active,.btn-primary.disabled:hover,.btn-primary:disabled,.btn-primary:disabled:hover{background:#a36eff;border:1px solid #a36eff;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-primary:focus,.btn-primary:hover{background:#b388ff;border:1px solid #b388ff;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-primary:active,.btn-primary:active:focus,.dropdown.open .btn-primary,.dropdown.open .btn-primary:active:focus,.dropdown.open .btn-primary:focus,.dropdown.open .btn-primary:hover{background:#823bff;border:1px solid #823bff;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-primary.btn-loading,.btn-primary.btn-loading:active,.btn-primary.btn-loading:active:focus,.btn-primary.btn-loading:disabled,.btn-primary.btn-loading:disabled:hover,.btn-primary.btn-loading:focus,.btn-primary.btn-loading:hover{color:transparent}.btn-success,.btn-success.disabled,.btn-success.disabled:active,.btn-success.disabled:hover,.btn-success:disabled,.btn-success:disabled:hover{background:#00c853;border:1px solid #00c853;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-success:focus,.btn-success:hover{background:#00af48;border:1px solid #00af48;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-success:active,.btn-success:active:focus,.dropdown.open .btn-success,.dropdown.open .btn-success:active:focus,.dropdown.open .btn-success:focus,.dropdown.open .btn-success:hover{background:#007c33;border:1px solid #007c33;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-success.btn-loading,.btn-success.btn-loading:active,.btn-success.btn-loading:active:focus,.btn-success.btn-loading:disabled,.btn-success.btn-loading:disabled:hover,.btn-success.btn-loading:focus,.btn-success.btn-loading:hover{color:transparent}.btn-danger,.btn-danger.disabled,.btn-danger.disabled:active,.btn-danger.disabled:hover,.btn-danger:disabled,.btn-danger:disabled:hover{background:#ef5350;border:1px solid #ef5350;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-danger:focus,.btn-danger:hover{background:#ff8a80;border:1px solid #ff8a80;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-danger:active,.btn-danger:active:focus,.dropdown.open .btn-danger,.dropdown.open .btn-danger:active:focus,.dropdown.open .btn-danger:focus,.dropdown.open .btn-danger:hover{background:#d32f2f;border:1px solid #d32f2f;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-danger.btn-loading,.btn-danger.btn-loading:active,.btn-danger.btn-loading:active:focus,.btn-danger.btn-loading:disabled,.btn-danger.btn-loading:disabled:hover,.btn-danger.btn-loading:focus,.btn-danger.btn-loading:hover{color:transparent}.btn-default.btn-outline,.btn-default.btn-outline.disabled,.btn-default.btn-outline.disabled:active,.btn-default.btn-outline.disabled:hover,.btn-default.btn-outline:disabled,.btn-default.btn-outline:disabled:hover{background:#e0e0e0;border:1px solid #e0e0e0;color:#616161;-webkit-box-shadow:none;box-shadow:none}.btn-default.btn-outline:focus,.btn-default.btn-outline:hover{background:#bdbdbd;border:1px solid #bdbdbd;color:#424242;-webkit-box-shadow:none;box-shadow:none}.btn-default.btn-outline:active,.btn-default.btn-outline:active:focus,.dropdown.open .btn-default.btn-outline,.dropdown.open .btn-default.btn-outline:active:focus,.dropdown.open .btn-default.btn-outline:focus,.dropdown.open .btn-default.btn-outline:hover{background:#eee;border:1px solid #eee;color:#212121;-webkit-box-shadow:none;box-shadow:none}.btn-default.btn-outline.btn-loading,.btn-default.btn-outline.btn-loading:active,.btn-default.btn-outline.btn-loading:active:focus,.btn-default.btn-outline.btn-loading:disabled,.btn-default.btn-outline.btn-loading:disabled:hover,.btn-default.btn-outline.btn-loading:focus,.btn-default.btn-outline.btn-loading:hover{background:#e0e0e0;border:1px solid #e0e0e0;color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-primary.btn-outline,.btn-primary.btn-outline.disabled,.btn-primary.btn-outline.disabled:active,.btn-primary.btn-outline.disabled:hover,.btn-primary.btn-outline:disabled,.btn-primary.btn-outline:disabled:hover{background:#7c4dff;border:1px solid #7c4dff;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-primary.btn-outline:focus,.btn-primary.btn-outline:hover{background:#651fff;border:1px solid #651fff;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-primary.btn-outline:active,.btn-primary.btn-outline:active:focus,.dropdown.open .btn-primary.btn-outline,.dropdown.open .btn-primary.btn-outline:active:focus,.dropdown.open .btn-primary.btn-outline:focus,.dropdown.open .btn-primary.btn-outline:hover{background:#6200ea;border:1px solid #6200ea;color:#fff;-webkit-box-shadow:none;box-shadow:none}.btn-primary.btn-outline.btn-loading,.btn-primary.btn-outline.btn-loading:active,.btn-primary.btn-outline.btn-loading:active:focus,.btn-primary.btn-outline.btn-loading:disabled,.btn-primary.btn-outline.btn-loading:disabled:hover,.btn-primary.btn-outline.btn-loading:focus,.btn-primary.btn-outline.btn-loading:hover{background:#7c4dff;border:1px solid #7c4dff;color:transparent;-webkit-box-shadow:none;box-shadow:none}.navbar-misago .btn-sign-in{border-radius:100px}.navbar-misago .btn-sign-in,.navbar-misago .btn-sign-in.disabled,.navbar-misago .btn-sign-in.disabled:active,.navbar-misago .btn-sign-in.disabled:hover,.navbar-misago .btn-sign-in:disabled,.navbar-misago .btn-sign-in:disabled:hover{background:0 0;border:1px solid transparent;color:#e0e0e0;-webkit-box-shadow:none;box-shadow:none}.navbar-misago .btn-sign-in:focus,.navbar-misago .btn-sign-in:hover{background:#666060;border:1px solid #666060;color:#fff;-webkit-box-shadow:none;box-shadow:none}.dropdown.open .navbar-misago .btn-sign-in,.dropdown.open .navbar-misago .btn-sign-in:active:focus,.dropdown.open .navbar-misago .btn-sign-in:focus,.dropdown.open .navbar-misago .btn-sign-in:hover,.navbar-misago .btn-sign-in:active,.navbar-misago .btn-sign-in:active:focus{background:#424242;border:1px solid #424242;color:#fff;-webkit-box-shadow:none;box-shadow:none}.navbar-misago .btn-sign-in.btn-loading,.navbar-misago .btn-sign-in.btn-loading:active,.navbar-misago .btn-sign-in.btn-loading:active:focus,.navbar-misago .btn-sign-in.btn-loading:disabled,.navbar-misago .btn-sign-in.btn-loading:disabled:hover,.navbar-misago .btn-sign-in.btn-loading:focus,.navbar-misago .btn-sign-in.btn-loading:hover{background:0 0;border:1px solid transparent;color:transparent;-webkit-box-shadow:none;box-shadow:none}.navbar-misago .btn-register{border-radius:100px}.navbar-misago .btn-register,.navbar-misago .btn-register.disabled,.navbar-misago .btn-register.disabled:active,.navbar-misago .btn-register.disabled:hover,.navbar-misago .btn-register:disabled,.navbar-misago .btn-register:disabled:hover{background:0 0;border:1px solid #757575;color:#e0e0e0;-webkit-box-shadow:none;box-shadow:none}.navbar-misago .btn-register:focus,.navbar-misago .btn-register:hover{background:#fff;border:1px solid #fff;color:#212121;-webkit-box-shadow:none;box-shadow:none}.dropdown.open .navbar-misago .btn-register,.dropdown.open .navbar-misago .btn-register:active:focus,.dropdown.open .navbar-misago .btn-register:focus,.dropdown.open .navbar-misago .btn-register:hover,.navbar-misago .btn-register:active,.navbar-misago .btn-register:active:focus{background:#bdbdbd;border:1px solid #bdbdbd;color:#212121;-webkit-box-shadow:none;box-shadow:none}.navbar-misago .btn-register.btn-loading,.navbar-misago .btn-register.btn-loading:active,.navbar-misago .btn-register.btn-loading:active:focus,.navbar-misago .btn-register.btn-loading:disabled,.navbar-misago .btn-register.btn-loading:disabled:hover,.navbar-misago .btn-register.btn-loading:focus,.navbar-misago .btn-register.btn-loading:hover{background:0 0;border:1px solid #757575;color:transparent;-webkit-box-shadow:none;box-shadow:none}input.form-control,textarea.form-control{border-color:#ccc;box-shadow:inset 0 0 0 1px #ccc}input.form-control:focus,textarea.form-control:focus{border-color:#66afe9;box-shadow:inset 0 0 0 1px #66afe9}.has-error input.form-control{border-color:#f44336;box-shadow:inset 0 0 0 1px #f44336}.has-error input.form-control:focus{border-color:#f99d97;box-shadow:inset 0 0 0 1px #f99d97}.has-success input.form-control{border-color:#00c853;box-shadow:inset 0 0 0 1px #00c853}.has-success input.form-control:focus{border-color:#2fff85;box-shadow:inset 0 0 0 1px #2fff85}.password-strength{margin-top:10px}.password-strength .text-small{margin-top:4px;color:#616161;font-size:12px}.password-strength .progress{margin:0}.auth-message{background:#651fff;padding:80px 0;box-shadow:0 8px 10px 1px rgba(0,0,0,.04),0 3px 14px 2px rgba(0,0,0,.12),0 5px 5px -3px rgba(0,0,0,.06)}.auth-message p{color:#fff}.auth-message .btn{background:#4527a0;border-color:#4527a0;color:#fff}.auth-message .btn:focus,.auth-message .btn:hover{background:#b388ff;border-color:#b388ff;color:#fff}.auth-message .btn:active{background:#fff;border-color:#fff;color:#651fff}.navbar-misago,.page-header{border-bottom:none}.dropdown-menu{border:none;box-shadow:0 2px 2px 0 rgba(0,0,0,.04),0 3px 1px -2px rgba(0,0,0,.06),0 1px 5px 0 rgba(0,0,0,.12)}.list-group,.page-header-bg{box-shadow:0 4px 5px 0 rgba(0,0,0,.04),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.06)}.user-dropdown .dropdown-header strong{display:block;font-size:18px;font-weight:300}.user-dropdown .dropdown-header .user-stats{margin-top:10px;font-size:12px}.user-dropdown .dropdown-header .user-stats .material-icon{margin-right:3px;position:relative;bottom:1px;width:14px;height:14px;font-size:14px}.user-dropdown .guest-preview{padding-bottom:10px}.dropdown-search-loader,.dropdown-search-message{padding:10px 16px;border-top:1px solid #eee}.user-dropdown .badge{background-color:#f44336}.user-dropdown .btn-link:active .badge,.user-dropdown .btn-link:focus .badge,.user-dropdown .btn-link:hover .badge,.user-dropdown a:active .badge,.user-dropdown a:focus .badge,.user-dropdown a:hover .badge{background-color:#fff;color:#f44336}.mobile-dropdown.open{margin:0}.navbar-misago .user-avatar{background:#fff;border-radius:3px}.navbar-misago .brand-link img{border-radius:3px}.dropdown-search-results{border-radius:0 0 4px 4px}.list-group,.threads-list .thread-last-action img,.threads-list .thread-main img{border-radius:4px}.dropdown-search-message{color:#777}.dropdown-search-header{border-top:1px solid #eee;padding:8px 20px;color:#777;font-weight:700}.dropdown-search-thread small,.dropdown-search-user small{color:#777}.dropdown-search-thread:active small,.dropdown-search-thread:focus small,.dropdown-search-thread:hover small,.dropdown-search-user:active small,.dropdown-search-user:focus small,.dropdown-search-user:hover small{color:#fff}.dropdown-search-thread .dropdown-search-post-content{overflow:hidden;white-space:normal;max-height:47px}.dropdown-search-thread .dropdown-search-post-footer{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-search-footer{padding-bottom:5px}.dropdown-search-footer:last-child{padding-bottom:0}.dropdown-menu>li.dropdown-search-footer>a{font-size:small}.page-header{background:0 0}.page-header-bg{background:url(../img/page-header.svg) #512da8;background-size:cover}@media screen and (min-width:992px){.page-header-bg{margin-bottom:40px}}.page-header h1{color:#fff;font-weight:400}.header-stats{color:#ede7f6}.header-stats li a,.header-stats li a:link,.header-stats li a:visited{color:#fff}.header-stats li a:active,.header-stats li a:focus,.header-stats li a:hover{color:#f5f5f5}.page-header .go-back-sm,.page-header .go-back-sm:link,.page-header .go-back-sm:visited{color:#ede7f6}.page-header .go-back-sm:active,.page-header .go-back-sm:focus,.page-header .go-back-sm:hover{color:#f5f5f5}.page-header .breadcrumb,.page-header .breadcrumb a,.page-header .breadcrumb a:link,.page-header .breadcrumb a:visited{color:#ede7f6}.page-header .breadcrumb a:active,.page-header .breadcrumb a:focus,.page-header .breadcrumb a:hover{color:#fff}.page-header .breadcrumb li:before{color:#ede7f6;text-shadow:0 1px 1px #512da8}.page-tabs{background-color:rgba(255,255,255,.6)}.page-tabs li a{padding-bottom:7px}.page-tabs li a,.page-tabs li a:link,.page-tabs li a:visited{background-color:transparent;border-bottom:3px solid transparent;color:#777}.page-tabs li a:focus,.page-tabs li a:hover{background-color:transparent;border-bottom:3px solid #e0e0e0;color:#212121}@media screen and (max-width:991px){.page-tabs li a:focus,.page-tabs li a:hover{background-color:transparent;border-bottom:3px solid transparent;color:#777}}.page-tabs li.active a,.page-tabs li.active a:active,.page-tabs li.active a:focus,.page-tabs li.active a:hover,.page-tabs li.active a:link,.page-tabs li.active a:visited{background-color:transparent;border-bottom:3px solid #651fff;color:#651fff}.misago-footer{background:#fff;margin-top:40px}.misago-footer .footer-content{border-top:1px solid #e6e6e6;padding-top:20px;color:#bdbdbd}@media screen and (max-width:767px){.misago-footer .footer-content{text-align:center}.misago-footer .footer-content .site-footnote{clear:both;margin-bottom:15px}}.misago-footer .footer-content a,.misago-footer .footer-content a:link,.misago-footer .footer-content a:visited{color:#757575}.misago-footer .footer-content a:focus,.misago-footer .footer-content a:hover{color:#212121}.misago-footer .footer-content .misago-branding,.misago-footer .footer-content .misago-branding:link,.misago-footer .footer-content .misago-branding:visited{color:#b388ff}.misago-footer .footer-content .misago-branding:focus,.misago-footer .footer-content .misago-branding:hover{color:#7c4dff}.list-group .list-group-item{border-left:none;border-right:none}.list-group .list-group-item:first-child{border-top:none}.list-group .list-group-item:last-child{border-bottom:none}.list-group-item.empty-message{padding-top:20px;padding-bottom:20px;text-align:center}.list-group-item.empty-message p{margin:10px 0}.threads-list .thread-last-action .thread-last-reply,.threads-list .thread-last-action .thread-last-reply:link,.threads-list .thread-last-action .thread-last-reply:visited{color:#777;font-size:12px}.threads-list .thread-last-action .thread-last-reply:active,.threads-list .thread-last-action .thread-last-reply:focus,.threads-list .thread-last-action .thread-last-reply:hover{color:#555}.threads-list .thread-details-top{color:#777}.threads-list .thread-details-top a,.threads-list .thread-details-top a:link,.threads-list .thread-details-top a:visited{color:#777;font-size:12px}.threads-list .thread-details-top a:active,.threads-list .thread-details-top a:focus,.threads-list .thread-details-top a:hover{color:#212121}.threads-list .thread-details-top .thread-detail-new,.threads-list .thread-details-top .thread-detail-new:link,.threads-list .thread-details-top .thread-detail-new:visited{color:#a0f}.threads-list .thread-details-top .thread-detail-new:active,.threads-list .thread-details-top .thread-detail-new:focus,.threads-list .thread-details-top .thread-detail-new:hover{color:#80c}.threads-list .thread-details-top .thread-detail-pinned-globally{color:#3d5afe}.threads-list .thread-details-top .thread-detail-pinned-locally{color:#8c9eff}.threads-list .thread-details-top .thread-detail-unapproved{color:#ef6c00}.threads-list .thread-details-top .thread-detail-unapproved-posts{color:#f4511e}.threads-list .thread-details-bottom{color:#777}.threads-list .thread-details-bottom a,.threads-list .thread-details-bottom a:link,.threads-list .thread-details-bottom a:visited{color:#555;font-size:12px}.threads-list .thread-details-bottom a:active,.threads-list .thread-details-bottom a:focus,.threads-list .thread-details-bottom a:hover{color:#212121}.threads-list .thread-read .thread-title,.threads-list .thread-read .thread-title:active,.threads-list .thread-read .thread-title:focus,.threads-list .thread-read .thread-title:hover,.threads-list .thread-read .thread-title:link,.threads-list .thread-read .thread-title:visited{color:#555}.threads-diff-message .btn,.threads-diff-message .btn.disabled,.threads-diff-message .btn.disabled:active,.threads-diff-message .btn.disabled:hover,.threads-diff-message .btn:disabled,.threads-diff-message .btn:disabled:hover{background:#7c4dff;border:1px solid #7c4dff;color:#fff;-webkit-box-shadow:none;box-shadow:none}.threads-diff-message .btn:focus,.threads-diff-message .btn:hover{background:#6200ea;color:#fff;-webkit-box-shadow:none;box-shadow:none}.dropdown.open .threads-diff-message .btn,.dropdown.open .threads-diff-message .btn:active:focus,.dropdown.open .threads-diff-message .btn:focus,.dropdown.open .threads-diff-message .btn:hover,.threads-diff-message .btn:active,.threads-diff-message .btn:active:focus{background:#4d00b7;border:1px solid #4d00b7;color:#fff;-webkit-box-shadow:none;box-shadow:none}.panel,.threads-diff-message .btn,.threads-diff-message .btn:active,.threads-diff-message .btn:focus,.threads-diff-message .btn:focus:active,.threads-diff-message .btn:hover{border:none}.threads-diff-message .btn.btn-loading,.threads-diff-message .btn.btn-loading:active,.threads-diff-message .btn.btn-loading:active:focus,.threads-diff-message .btn.btn-loading:disabled,.threads-diff-message .btn.btn-loading:disabled:hover,.threads-diff-message .btn.btn-loading:focus,.threads-diff-message .btn.btn-loading:hover{color:transparent}.nav-side>a.active .badge{background:#651fff;color:#fff}.username-history .user-avatar{border-radius:4px}.panel{border-radius:4px;box-shadow:0 4px 5px 0 rgba(0,0,0,.04),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.06)}.panel .panel-footer,.panel .panel-heading{background:#fff}.panel .panel-title{color:#777}.panel .form-group+.form-group{margin-top:20px}.panel .panel-body>.form-group:first-child{margin-top:10px}.panel fieldset{margin-top:20px}.panel fieldset:first-child{margin-top:0}.panel fieldset legend{border:none;color:#555;font-weight:300}.poll-form .panel{margin:0}.panel-message-body .message-icon{color:#9575cd}.category-main .media-left .read-status{background:#eee;border-radius:4px;padding:5px 8px}.category-main .media-left .material-icon{height:14px;width:14px;color:#555;font-size:14px;line-height:14px}.category-main .media-left .read-status.item-new{background-color:#651fff}.category-main .media-left .read-status.item-new .material-icon{color:#fff}@media screen and (min-width:768px){.category-main .media-left{padding:5px 0}}.category-main .media-body{padding-left:12px}.list-group-category-no-description .category-main .media-heading{margin-top:10px}.category-main .media-heading a,.category-main .media-heading a:link,.category-main .media-heading a:visited{color:#333}.category-main .media-heading a:active,.category-main .media-heading a:focus,.category-main .media-heading a:hover{color:#212121}.category-stats{color:#555}.category-main .category-description p{font-size:12px}.category-main .category-description p:last-child{margin-bottom:0}.category-last-thread img{background-color:#fff;border-radius:4px}.category-last-thread .media-heading{margin-bottom:2px}@media screen and (max-width:767px){.category-main .media-body{padding-left:3.33px}.list-group-category-no-description .category-main .media-heading{margin-top:5px}.category-last-thread .media-heading{margin-top:10px}}.category-last-thread .list-inline{color:#777;font-size:12px}.category-last-thread .list-inline a,.category-last-thread .list-inline a:link,.category-last-thread .list-inline a:visited{color:#777}.category-last-thread .list-inline .item-title,.category-last-thread .list-inline .item-title:link,.category-last-thread .list-inline .item-title:visited,.category-last-thread .list-inline a:active,.category-last-thread .list-inline a:focus,.category-last-thread .list-inline a:hover{color:#333}.category-last-thread .list-inline .item-title:active,.category-last-thread .list-inline .item-title:focus,.category-last-thread .list-inline .item-title:hover{color:#212121}.category-thread-message{color:#777}.category-thread-message .material-icon{padding:6px 0;margin-right:3px}@media screen and (max-width:767px){.category-thread-message{padding-top:15px;font-size:12px}.category-thread-message .material-icon{padding:3px 0}.panel-participants p{margin-top:10px;text-align:center}}.participant-card .btn-user{border:0!important}.participant-card .dropdown-header-owner{color:#651fff}.participant-card .dropdown-header-owner .material-icon{width:14px;height:14px;font-size:14px;line-height:14px}.panel-poll .poll-chart,.panel-poll .poll-details{color:#777;font-size:12px}.participant-card .dropdown-header-owner .icon-text{margin-left:4px;position:relative;top:2px}.panel-participants p{color:#777}.panel-poll .poll-select-choices{margin-top:-10px}.panel-poll .poll-details{margin-bottom:20px}.panel-poll .progress{margin-top:6.67px;margin-bottom:5px}.panel-poll .poll-options,.posting-message .btn{margin-top:20px}.posting-message .material-icon{color:#9575cd}.post-side{color:#777}.post-side .poster-avatar{border-radius:4px}.post-side .user-title,.post-side .user-title a,.post-side .user-title a:active,.post-side .user-title a:focus,.post-side .user-title a:hover,.post-side .user-title a:link,.post-side .user-title a:visited{color:#555}.post-heading .label-unread{background-color:#a0f;margin-right:16px}.post-heading .label-protected{background-color:transparent;margin-left:24px;position:relative;top:1px;color:#bdbdbd}.post-heading .label-protected .material-icon{margin-right:2px;position:relative;top:-1px;font-size:16px;line-height:16px}.post-heading>.btn-link{padding-left:0;padding-right:0}.post-heading>.btn-link,.post-heading>.btn-link:link,.post-heading>.btn-link:visited{color:#777}.post-heading>.btn-link:active,.post-heading>.btn-link:focus,.post-heading>.btn-link:focus:active,.post-heading>.btn-link:hover{color:#212121;text-decoration:none}.post-heading .btn-see-edits{margin-left:24px}.post-status-message{border-radius:4px;margin-top:10px;padding:6px 12px}.post-body:last-child{padding-bottom:10px}.post-attachments{background-color:#f2f2f2;border:none;border-radius:4px;margin-bottom:30px}.post-attachments:last-child{margin-bottom:10px}@media screen and (max-width:767px){.post-status-message{font-size:12px}.post-status-message .material-icon{margin-top:3px}.post-status-message p{margin-top:0}.post-attachments{border-radius:0;margin:0 -15px 20px}}.misago-markup img,.user-card-avatar img,.user-card-small-avatar img{border-radius:4px}.post-footer>.btn-link{padding-left:0;padding-right:0}.post-footer>.btn-link,.post-footer>.btn-link:link,.post-footer>.btn-link:visited{color:#777}.post-footer>.btn-link:active,.post-footer>.btn-link:focus,.post-footer>.btn-link:focus:active,.post-footer>.btn-link:hover{color:#212121;text-decoration:none}.post-footer p{color:#777;font-size:12px}.post-body-hidden,.post-body-invalid{padding-top:10px;padding-bottom:10px}.post-body-hidden .lead,.post-body-invalid .lead{margin-bottom:10px}.post-body-hidden .text-muted,.post-body-invalid .text-muted{margin-bottom:0;font-size:12px}.post-hidden{opacity:.75;filter:alpha(opacity=75)}.post-feed .panel-body{padding-bottom:0}.post-feed .post-body{position:relative;padding-top:0;padding-bottom:20px;max-height:300px;overflow-y:hidden}.post-feed .post-body:after{box-shadow:0 0 16px 16px #fff;display:block;position:absolute;bottom:0;height:0;width:100%;content:'-';color:transparent}.posts-list .event .event-label{margin-bottom:5px}.posts-list .event .label-unread{background-color:#a0f;color:#fff}.posts-list .event-info .btn-link,.posts-list .event-info a,.posts-list .event-info a:link,.posts-list .event-info a:visited{color:#555}.posts-list .event-info .btn-link:active,.posts-list .event-info .btn-link:focus,.posts-list .event-info .btn-link:focus:active,.posts-list .event-info a:active,.posts-list .event-info a:focus,.posts-list .event-info a:focus:active{color:#212121}.posts-list .event-hidden{opacity:.33;filter:alpha(opacity=33)}.user-card-avatar{margin:20px 0}.user-card-avatar img{width:150px;height:150px}.user-card-username a,.user-card-username a:active,.user-card-username a:focus,.user-card-username a:hover,.user-card-username a:link,.user-card-username a:visited{color:#212121;font-size:18px;font-weight:700}.user-card-title a,.user-card-title a:link,.user-card-title a:visited,.user-card-title span{color:#555}.user-card-title a:active,.user-card-title a:focus,.user-card-title a:hover{color:#212121}@media screen and (min-width:768px){.user-card-stats{margin-top:20px}}.user-card-stats ul{margin:0}.user-card-stats li{display:inline-block;margin-right:12px;color:#777;font-size:12px}.user-card-stats li.user-stat-empty{display:none}@media screen and (min-width:768px){.user-card-stats li{margin:0 6px}li.user-stat-divider{display:block;margin:0}.user-card-stats{min-height:60px}}@media screen and (max-width:767px){li.user-stat-divider{display:none}.user-card-left{padding-right:0}}.progress,.progress .progress-bar{-webkit-box-shadow:none;box-shadow:none;height:8px}.misago-markup .quote-block,.misago-markup blockquote{background-color:#ffecb3;border-color:#b3e5fc;overflow:hidden;color:#3e2723}.misago-markup .quote-block .quote-heading,.misago-markup blockquote .quote-heading{background-color:#ffe082;border:none;color:#795548}.misago-markup .quote-block .quote-heading a,.misago-markup .quote-block .quote-heading a:link,.misago-markup .quote-block .quote-heading a:visited,.misago-markup blockquote .quote-heading a,.misago-markup blockquote .quote-heading a:link,.misago-markup blockquote .quote-heading a:visited{color:#5d4037}.misago-markup .quote-block .quote-heading a:active,.misago-markup .quote-block .quote-heading a:focus,.misago-markup .quote-block .quote-heading a:hover,.misago-markup blockquote .quote-heading a:active,.misago-markup blockquote .quote-heading a:focus,.misago-markup blockquote .quote-heading a:hover{color:#3e2723}.misago-markup .quote-block hr,.misago-markup blockquote hr{border-color:#ffca28}.misago-markup>.quote-block,.misago-markup>blockquote{background:#ffecb3;border:none;border-radius:4px}.misago-markup .quote-body,.misago-markup>.quote-block .quote-block,.misago-markup>blockquote .quote-block{background:#ffecb3}.misago-markup .quote-body>.quote-block,.misago-markup .quote-body>blockquote{border-color:#ffe082;border-radius:4px}.modal-header{background:#eee;border-bottom-color:#eee;border-radius:6px 6px 0 0;color:#424242}.modal-header .close{padding:0 6px;color:#424242;font-size:24px;line-height:24px;text-shadow:none}.modal-message .message-icon{color:#9575cd}.modal-body>.form-group{margin:20px 0}.modal-body>.form-group:first-child{margin-top:0}.modal-body>.form-group:last-child{margin-bottom:0}.modal-sign-in .modal-body{padding-top:0;padding-bottom:0}.modal-sign-in .modal-body>.form-group{margin:20px 0}.modal-register .legal-footnote{text-align:center}.modal-register .legal-footnote .material-icon{margin-right:4px;position:relative;bottom:1px;color:#777;font-size:28px;line-height:28px}.modal-register .legal-footnote a,.modal-register .legal-footnote a:link,.modal-register .legal-footnote a:visited{color:#777}.modal-register .legal-footnote a:active,.modal-register .legal-footnote a:focus,.modal-register .legal-footnote a:hover{color:#212121}.modal-avatar-index .avatar-preview{background:#fff;border-radius:6px}.modal-avatar-crop .cropit-preview{background:#fff;margin:20px 0}.modal-avatar-crop .cropit-image-zoom-input{margin-top:40px;margin-bottom:20px}.modal-post-likers .media{border-bottom:1px solid #eee;padding-bottom:15px}.modal-post-likers .media img{border-radius:4px;width:40px;height:40px}.modal-post-likers .media:last-child{border:none;padding-bottom:0}.well{border:none;box-shadow:0 4px 5px 0 rgba(0,0,0,.04),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.06)}.active-posters .rank-user-avatar img{border-radius:4px}.active-posters .user-details{color:#777}.active-posters .user-details a.rank-name,.active-posters .user-details a.rank-name:link,.active-posters .user-details a.rank-name:visited{color:#555;font-weight:400}.active-posters .user-details a.rank-name:active,.active-posters .user-details a.rank-name:focus,.active-posters .user-details a.rank-name:hover{color:#212121}.active-posters .user-details span.rank-name{color:#555;font-weight:400}.active-posters small{color:#777}.page-error .message-icon{color:#ef5350}.page-message .message-icon,.page-message-info .message-icon{color:#9575cd}.page-message-success .message-icon{color:#81c784}.page-options .message-line,.page-options .message-line a,.page-options .message-line a:link,.page-options .message-line a:visited{color:#777}.page-options .message-line a:active,.page-options .message-line a:focus,.page-options .message-line a:focus:active,.page-options .message-line a:hover{color:#212121}.page-user-profile .page-header img{background-color:#fff;border-radius:6px;box-shadow:0 2px 2px 0 rgba(0,0,0,.04),0 3px 1px -2px rgba(0,0,0,.06),0 1px 5px 0 rgba(0,0,0,.12)}.page-user-profile .page-header .user-status .status-icon{width:14px;height:14px;font-size:14px;line-height:14px}.page-user-profile .profile-side-avatar img{background-color:#fff;border-radius:6px;box-shadow:0 4px 5px 0 rgba(0,0,0,.04),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.06)}.panel-profile-details-group.panel .form-group{margin:0}.panel-profile-details-group .form-control-static p:last-child{margin-bottom:0}.list-group-item.list-group-category-has-flavor{border-left:5px solid #fff;padding-left:10px}.list-group-item.list-group-item-category-red{border-left-color:#f44336}.list-group-item.list-group-item-category-light-red{border-left-color:#ef9a9a}.list-group-item.list-group-item-category-pink{border-left-color:#e91e63}.list-group-item.list-group-item-category-light-pink{border-left-color:#f48fb1}.list-group-item.list-group-item-category-purple{border-left-color:#9c27b0}.list-group-item.list-group-item-category-light-purple{border-left-color:#ce93d8}.list-group-item.list-group-item-category-deep-purple{border-left-color:#673ab7}.list-group-item.list-group-item-category-indigo{border-left-color:#3f51b5}.list-group-item.list-group-item-category-light-indigo{border-left-color:#9fa8da}.list-group-item.list-group-item-category-blue{border-left-color:#2196f3}.list-group-item.list-group-item-category-light-blue{border-left-color:#81d4fa}.list-group-item.list-group-item-category-cyan{border-left-color:#00bcd4}.list-group-item.list-group-item-category-light-cyan{border-left-color:#80deea}.list-group-item.list-group-item-category-teal{border-left-color:#009688}.list-group-item.list-group-item-category-light-teal{border-left-color:#80cbc4}.list-group-item.list-group-item-category-green{border-left-color:#4caf50}.list-group-item.list-group-item-category-light-green{border-left-color:#aed581}.list-group-item.list-group-item-category-lime{border-left-color:#cddc39}.list-group-item.list-group-item-category-yellow{border-left-color:#ffeb3b}.list-group-item.list-group-item-category-amber{border-left-color:#ffc107}.list-group-item.list-group-item-category-orange{border-left-color:#ff9800}.list-group-item.list-group-item-category-deep-orange{border-left-color:#ff5722}.list-group-item.list-group-item-category-brown{border-left-color:#795548}.list-group-item.list-group-item-category-light-brown{border-left-color:#bcaaa4}.list-group-item.list-group-item-category-blue-grey{border-left-color:#607d8b}.list-group-item.list-group-item-category-light-blue-grey{border-left-color:#b0bec5}.list-group-item.list-group-item-category-grey{border-left-color:#9e9e9e}.list-group-item.list-group-item-category-black{border-left-color:#000}.post-primary .panel-body{border:2px solid #d1c4e9;border-radius:4px;padding:13px}.post-primary .user-title,.post-primary .user-title a,.post-primary .user-title a:active,.post-primary .user-title a:focus,.post-primary .user-title a:hover,.post-primary .user-title a:link,.post-primary .user-title a:visited{color:#6200ea}.post-success .panel-body{border:2px solid #c8e6c9;border-radius:4px;padding:13px}.post-success .user-title,.post-success .user-title a,.post-success .user-title a:active,.post-success .user-title a:focus,.post-success .user-title a:hover,.post-success .user-title a:link,.post-success .user-title a:visited{color:#388e3c}.post-warning .panel-body{border:2px solid #ffe0b2;border-radius:4px;padding:13px}.post-warning .user-title,.post-warning .user-title a,.post-warning .user-title a:active,.post-warning .user-title a:focus,.post-warning .user-title a:hover,.post-warning .user-title a:link,.post-warning .user-title a:visited{color:#ff6d00}.post-danger .panel-body{border:2px solid #ffcdd2;border-radius:4px;padding:13px}.post-danger .user-title,.post-danger .user-title a,.post-danger .user-title a:active,.post-danger .user-title a:focus,.post-danger .user-title a:hover,.post-danger .user-title a:link,.post-danger .user-title a:visited{color:#d50000}.user-card-primary .panel-body{border:2px solid #d1c4e9;border-radius:4px;padding:13px}.user-card-primary .user-card-title,.user-card-primary .user-card-title a.user-title,.user-card-primary .user-card-title a.user-title:active,.user-card-primary .user-card-title a.user-title:focus,.user-card-primary .user-card-title a.user-title:hover,.user-card-primary .user-card-title a.user-title:link,.user-card-primary .user-card-title a.user-title:visited{color:#6200ea}.user-card-success .panel-body{border:2px solid #c8e6c9;border-radius:4px;padding:13px}.user-card-success .user-card-title,.user-card-success .user-card-title a.user-title,.user-card-success .user-card-title a.user-title:active,.user-card-success .user-card-title a.user-title:focus,.user-card-success .user-card-title a.user-title:hover,.user-card-success .user-card-title a.user-title:link,.user-card-success .user-card-title a.user-title:visited{color:#388e3c}.user-card-warning .panel-body{border:2px solid #ffe0b2;border-radius:4px;padding:13px}.user-card-warning .user-card-title,.user-card-warning .user-card-title a.user-title,.user-card-warning .user-card-title a.user-title:active,.user-card-warning .user-card-title a.user-title:focus,.user-card-warning .user-card-title a.user-title:hover,.user-card-warning .user-card-title a.user-title:link,.user-card-warning .user-card-title a.user-title:visited{color:#ff6d00}.user-card-danger .panel-body{border:2px solid #ffcdd2;border-radius:4px;padding:13px}.user-card-danger .user-card-title,.user-card-danger .user-card-title a.user-title,.user-card-danger .user-card-title a.user-title:active,.user-card-danger .user-card-title a.user-title:focus,.user-card-danger .user-card-title a.user-title:hover,.user-card-danger .user-card-title a.user-title:link,.user-card-danger .user-card-title a.user-title:visited{color:#d50000}.list-group .list-group-rank-primary{border-left:4px solid #d1c4e9;padding-left:11px}.list-group .list-group-rank-primary a.rank-name,.list-group .list-group-rank-primary a.rank-name:active,.list-group .list-group-rank-primary a.rank-name:focus,.list-group .list-group-rank-primary a.rank-name:hover,.list-group .list-group-rank-primary a.rank-name:link,.list-group .list-group-rank-primary a.rank-name:visited,.list-group .list-group-rank-primary span.rank-name{color:#6200ea}.list-group .list-group-rank-success{border-left:4px solid #c8e6c9;padding-left:11px}.list-group .list-group-rank-success a.rank-name,.list-group .list-group-rank-success a.rank-name:active,.list-group .list-group-rank-success a.rank-name:focus,.list-group .list-group-rank-success a.rank-name:hover,.list-group .list-group-rank-success a.rank-name:link,.list-group .list-group-rank-success a.rank-name:visited,.list-group .list-group-rank-success span.rank-name{color:#388e3c}.list-group .list-group-rank-warning{border-left:4px solid #ffe0b2;padding-left:11px}.list-group .list-group-rank-warning a.rank-name,.list-group .list-group-rank-warning a.rank-name:active,.list-group .list-group-rank-warning a.rank-name:focus,.list-group .list-group-rank-warning a.rank-name:hover,.list-group .list-group-rank-warning a.rank-name:link,.list-group .list-group-rank-warning a.rank-name:visited,.list-group .list-group-rank-warning span.rank-name{color:#ff6d00}.list-group .list-group-rank-danger{border-left:4px solid #ffcdd2;padding-left:11px}.list-group .list-group-rank-danger a.rank-name,.list-group .list-group-rank-danger a.rank-name:active,.list-group .list-group-rank-danger a.rank-name:focus,.list-group .list-group-rank-danger a.rank-name:hover,.list-group .list-group-rank-danger a.rank-name:link,.list-group .list-group-rank-danger a.rank-name:visited,.list-group .list-group-rank-danger span.rank-name{color:#d50000}.page-header-rank-primary .user-rank,.page-header-rank-primary .user-rank a,.page-header-rank-primary .user-rank a:active,.page-header-rank-primary .user-rank a:focus,.page-header-rank-primary .user-rank a:hover,.page-header-rank-primary .user-rank a:link,.page-header-rank-primary .user-rank a:visited{color:#6200ea}.page-header-rank-success .user-rank,.page-header-rank-success .user-rank a,.page-header-rank-success .user-rank a:active,.page-header-rank-success .user-rank a:focus,.page-header-rank-success .user-rank a:hover,.page-header-rank-success .user-rank a:link,.page-header-rank-success .user-rank a:visited{color:#388e3c}.page-header-rank-warning .user-rank,.page-header-rank-warning .user-rank a,.page-header-rank-warning .user-rank a:active,.page-header-rank-warning .user-rank a:focus,.page-header-rank-warning .user-rank a:hover,.page-header-rank-warning .user-rank a:link,.page-header-rank-warning .user-rank a:visited{color:#ff6d00}.page-header-rank-danger .user-rank,.page-header-rank-danger .user-rank a,.page-header-rank-danger .user-rank a:active,.page-header-rank-danger .user-rank a:focus,.page-header-rank-danger .user-rank a:hover,.page-header-rank-danger .user-rank a:link,.page-header-rank-danger .user-rank a:visited{color:#d50000} \ No newline at end of file diff --git a/misago/static/misago/js/es2015.js b/misago/static/misago/js/es2015.js index dc79d7466b..f7435c0008 100644 --- a/misago/static/misago/js/es2015.js +++ b/misago/static/misago/js/es2015.js @@ -1,4 +1,5 @@ -!function t(n,r,e){function i(u,c){if(!r[u]){if(!n[u]){var f="function"==typeof require&&require;if(!c&&f)return f(u,!0);if(o)return o(u,!0);var a=new Error("Cannot find module '"+u+"'");throw a.code="MODULE_NOT_FOUND",a}var s=r[u]={exports:{}};n[u][0].call(s.exports,function(t){var r=n[u][1][t];return i(r?r:t)},s,s.exports,t,n,r,e)}return r[u].exports}for(var o="function"==typeof require&&require,u=0;u2?arguments[2]:void 0,s=Math.min((void 0===a?u:i(a,u))-f,u-c),l=1;for(f0;)f in r?r[c]=r[f]:delete r[c],c+=l,f+=l;return r}},{105:105,108:108,109:109}],9:[function(t,n,r){"use strict";var e=t(109),i=t(105),o=t(108);n.exports=function(t){for(var n=e(this),r=o(n.length),u=arguments.length,c=i(u>1?arguments[1]:void 0,r),f=u>2?arguments[2]:void 0,a=void 0===f?r:i(f,r);a>c;)n[c++]=t;return n}},{105:105,108:108,109:109}],10:[function(t,n,r){var e=t(37);n.exports=function(t,n){var r=[];return e(t,!1,r.push,r,n),r}},{37:37}],11:[function(t,n,r){var e=t(107),i=t(108),o=t(105);n.exports=function(t){return function(n,r,u){var c,f=e(n),a=i(f.length),s=o(u,a);if(t&&r!=r){for(;a>s;)if(c=f[s++],c!=c)return!0}else for(;a>s;s++)if((t||s in f)&&f[s]===r)return t||s||0;return!t&&-1}}},{105:105,107:107,108:108}],12:[function(t,n,r){var e=t(25),i=t(45),o=t(109),u=t(108),c=t(15);n.exports=function(t,n){var r=1==t,f=2==t,a=3==t,s=4==t,l=6==t,h=5==t||l,v=n||c;return function(n,c,p){for(var d,y,g=o(n),b=i(g),w=e(c,p,3),x=u(b.length),m=0,S=r?v(n,x):f?v(n,0):void 0;x>m;m++)if((h||m in b)&&(d=b[m],y=w(d,m,g),t))if(r)S[m]=y;else if(y)switch(t){case 3:return!0;case 5:return d;case 6:return m;case 2:S.push(d)}else if(s)return!1;return l?-1:a||s?s:S}}},{108:108,109:109,15:15,25:25,45:45}],13:[function(t,n,r){var e=t(3),i=t(109),o=t(45),u=t(108);n.exports=function(t,n,r,c,f){e(n);var a=i(t),s=o(a),l=u(a.length),h=f?l-1:0,v=f?-1:1;if(r<2)for(;;){if(h in s){c=s[h],h+=v;break}if(h+=v,f?h<0:l<=h)throw TypeError("Reduce of empty array with no initial value")}for(;f?h>=0:l>h;h+=v)h in s&&(c=n(c,s[h],h,a));return c}},{108:108,109:109,3:3,45:45}],14:[function(t,n,r){var e=t(49),i=t(47),o=t(117)("species");n.exports=function(t){var n;return i(t)&&(n=t.constructor,"function"!=typeof n||n!==Array&&!i(n.prototype)||(n=void 0),e(n)&&(n=n[o],null===n&&(n=void 0))),void 0===n?Array:n}},{117:117,47:47,49:49}],15:[function(t,n,r){var e=t(14);n.exports=function(t,n){return new(e(t))(n)}},{14:14}],16:[function(t,n,r){"use strict";var e=t(3),i=t(49),o=t(44),u=[].slice,c={},f=function(t,n,r){if(!(n in c)){for(var e=[],i=0;i1?arguments[1]:void 0,3);n=n?n.n:this._f;)for(r(n.v,n.k,this);n&&n.r;)n=n.p},has:function(t){return!!y(this,t)}}),v&&e(l.prototype,"size",{get:function(){return f(this[d])}}),l},def:function(t,n,r){var e,i,o=y(t,n);return o?o.v=r:(t._l=o={i:i=p(n,!0),k:n,v:r,p:e=t._l,n:void 0,r:!1},t._f||(t._f=o),e&&(e.n=o),t[d]++,"F"!==i&&(t._i[i]=o)),t},getEntry:y,setStrong:function(t,n,r){s(t,n,function(t,n){this._t=t,this._k=n,this._l=void 0},function(){for(var t=this,n=t._k,r=t._l;r&&r.r;)r=r.p;return t._t&&(t._l=r=r?r.n:t._t._f)?"keys"==n?l(0,r.k):"values"==n?l(0,r.v):l(0,[r.k,r.v]):(t._t=void 0,l(1))},r?"entries":"values",!r,!0),h(n)}}},{25:25,27:27,28:28,37:37,53:53,55:55,6:6,62:62,66:66,67:67,86:86,91:91}],20:[function(t,n,r){var e=t(17),i=t(10);n.exports=function(t){return function(){if(e(this)!=t)throw TypeError(t+"#toJSON isn't generic");return i(this)}}},{10:10,17:17}],21:[function(t,n,r){"use strict";var e=t(86),i=t(62).getWeak,o=t(7),u=t(49),c=t(6),f=t(37),a=t(12),s=t(39),l=a(5),h=a(6),v=0,p=function(t){return t._l||(t._l=new d)},d=function(){this.a=[]},y=function(t,n){return l(t.a,function(t){return t[0]===n})};d.prototype={get:function(t){var n=y(this,t);if(n)return n[1]},has:function(t){return!!y(this,t)},set:function(t,n){var r=y(this,t);r?r[1]=n:this.a.push([t,n])},"delete":function(t){var n=h(this.a,function(n){return n[0]===t});return~n&&this.a.splice(n,1),!!~n}},n.exports={getConstructor:function(t,n,r,o){var a=t(function(t,e){c(t,a,n,"_i"),t._i=v++,t._l=void 0,void 0!=e&&f(e,r,t[o],t)});return e(a.prototype,{"delete":function(t){if(!u(t))return!1;var n=i(t);return n===!0?p(this)["delete"](t):n&&s(n,this._i)&&delete n[this._i]},has:function(t){if(!u(t))return!1;var n=i(t);return n===!0?p(this).has(t):n&&s(n,this._i)}}),a},def:function(t,n,r){var e=i(o(n),!0);return e===!0?p(t).set(n,r):e[t._i]=r,t},ufstore:p}},{12:12,37:37,39:39,49:49,6:6,62:62,7:7,86:86}],22:[function(t,n,r){"use strict";var e=t(38),i=t(32),o=t(87),u=t(86),c=t(62),f=t(37),a=t(6),s=t(49),l=t(34),h=t(54),v=t(92),p=t(43);n.exports=function(t,n,r,d,y,g){var b=e[t],w=b,x=y?"set":"add",m=w&&w.prototype,S={},_=function(t){var n=m[t];o(m,t,"delete"==t?function(t){return!(g&&!s(t))&&n.call(this,0===t?0:t)}:"has"==t?function(t){return!(g&&!s(t))&&n.call(this,0===t?0:t)}:"get"==t?function(t){return g&&!s(t)?void 0:n.call(this,0===t?0:t)}:"add"==t?function(t){return n.call(this,0===t?0:t),this}:function(t,r){return n.call(this,0===t?0:t,r),this})};if("function"==typeof w&&(g||m.forEach&&!l(function(){(new w).entries().next()}))){var E=new w,O=E[x](g?{}:-0,1)!=E,F=l(function(){E.has(1)}),P=h(function(t){new w(t)}),M=!g&&l(function(){for(var t=new w,n=5;n--;)t[x](n,n);return!t.has(-0)});P||(w=n(function(n,r){a(n,w,t);var e=p(new b,n,w);return void 0!=r&&f(r,y,e[x],e),e}),w.prototype=m,m.constructor=w),(F||M)&&(_("delete"),_("has"),y&&_("get")),(M||O)&&_(x),g&&m.clear&&delete m.clear}else w=d.getConstructor(n,t,y,x),u(w.prototype,r),c.NEED=!0;return v(w,t),S[t]=w,i(i.G+i.W+i.F*(w!=b),S),g||d.setStrong(w,t,y),w}},{32:32,34:34,37:37,38:38,43:43,49:49,54:54,6:6,62:62,86:86,87:87,92:92}],23:[function(t,n,r){var e=n.exports={version:"2.4.0"};"number"==typeof __e&&(__e=e)},{}],24:[function(t,n,r){"use strict";var e=t(67),i=t(85);n.exports=function(t,n,r){n in t?e.f(t,n,i(0,r)):t[n]=r}},{67:67,85:85}],25:[function(t,n,r){var e=t(3);n.exports=function(t,n,r){if(e(t),void 0===n)return t;switch(r){case 1:return function(r){return t.call(n,r)};case 2:return function(r,e){return t.call(n,r,e)};case 3:return function(r,e,i){return t.call(n,r,e,i)}}return function(){return t.apply(n,arguments)}}},{3:3}],26:[function(t,n,r){"use strict";var e=t(7),i=t(110),o="number";n.exports=function(t){if("string"!==t&&t!==o&&"default"!==t)throw TypeError("Incorrect hint");return i(e(this),t!=o)}},{110:110,7:7}],27:[function(t,n,r){n.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},{}],28:[function(t,n,r){n.exports=!t(34)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},{34:34}],29:[function(t,n,r){var e=t(49),i=t(38).document,o=e(i)&&e(i.createElement);n.exports=function(t){return o?i.createElement(t):{}}},{38:38,49:49}],30:[function(t,n,r){n.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},{}],31:[function(t,n,r){var e=t(76),i=t(73),o=t(77);n.exports=function(t){var n=e(t),r=i.f;if(r)for(var u,c=r(t),f=o.f,a=0;c.length>a;)f.call(t,u=c[a++])&&n.push(u);return n}},{73:73,76:76,77:77}],32:[function(t,n,r){var e=t(38),i=t(23),o=t(40),u=t(87),c=t(25),f="prototype",a=function(t,n,r){var s,l,h,v,p=t&a.F,d=t&a.G,y=t&a.S,g=t&a.P,b=t&a.B,w=d?e:y?e[n]||(e[n]={}):(e[n]||{})[f],x=d?i:i[n]||(i[n]={}),m=x[f]||(x[f]={});d&&(r=n);for(s in r)l=!p&&w&&void 0!==w[s],h=(l?w:r)[s],v=b&&l?c(h,e):g&&"function"==typeof h?c(Function.call,h):h,w&&u(w,s,h,t&a.U),x[s]!=h&&o(x,s,v),g&&m[s]!=h&&(m[s]=h)};e.core=i,a.F=1,a.G=2,a.S=4,a.P=8,a.B=16,a.W=32,a.U=64,a.R=128,n.exports=a},{23:23,25:25,38:38,40:40,87:87}],33:[function(t,n,r){var e=t(117)("match");n.exports=function(t){var n=/./;try{"/./"[t](n)}catch(r){try{return n[e]=!1,!"/./"[t](n)}catch(i){}}return!0}},{117:117}],34:[function(t,n,r){n.exports=function(t){try{return!!t()}catch(n){return!0}}},{}],35:[function(t,n,r){"use strict";var e=t(40),i=t(87),o=t(34),u=t(27),c=t(117);n.exports=function(t,n,r){var f=c(t),a=r(u,f,""[t]),s=a[0],l=a[1];o(function(){var n={};return n[f]=function(){return 7},7!=""[t](n)})&&(i(String.prototype,t,s),e(RegExp.prototype,f,2==n?function(t,n){return l.call(t,this,n)}:function(t){return l.call(t,this)}))}},{117:117,27:27,34:34,40:40,87:87}],36:[function(t,n,r){"use strict";var e=t(7);n.exports=function(){var t=e(this),n="";return t.global&&(n+="g"),t.ignoreCase&&(n+="i"),t.multiline&&(n+="m"),t.unicode&&(n+="u"),t.sticky&&(n+="y"),n}},{7:7}],37:[function(t,n,r){var e=t(25),i=t(51),o=t(46),u=t(7),c=t(108),f=t(118),a={},s={},r=n.exports=function(t,n,r,l,h){var v,p,d,y,g=h?function(){return t}:f(t),b=e(r,l,n?2:1),w=0;if("function"!=typeof g)throw TypeError(t+" is not iterable!");if(o(g)){for(v=c(t.length);v>w;w++)if(y=n?b(u(p=t[w])[0],p[1]):b(t[w]),y===a||y===s)return y}else for(d=g.call(t);!(p=d.next()).done;)if(y=i(d,b,p.value,n),y===a||y===s)return y};r.BREAK=a,r.RETURN=s},{108:108,118:118,25:25,46:46,51:51,7:7}],38:[function(t,n,r){var e=n.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},{}],39:[function(t,n,r){var e={}.hasOwnProperty;n.exports=function(t,n){return e.call(t,n)}},{}],40:[function(t,n,r){var e=t(67),i=t(85);n.exports=t(28)?function(t,n,r){return e.f(t,n,i(1,r))}:function(t,n,r){return t[n]=r,t}},{28:28,67:67,85:85}],41:[function(t,n,r){n.exports=t(38).document&&document.documentElement},{38:38}],42:[function(t,n,r){n.exports=!t(28)&&!t(34)(function(){return 7!=Object.defineProperty(t(29)("div"),"a",{get:function(){return 7}}).a})},{28:28,29:29,34:34}],43:[function(t,n,r){var e=t(49),i=t(90).set;n.exports=function(t,n,r){var o,u=n.constructor;return u!==r&&"function"==typeof u&&(o=u.prototype)!==r.prototype&&e(o)&&i&&i(t,o),t}},{49:49,90:90}],44:[function(t,n,r){n.exports=function(t,n,r){var e=void 0===r;switch(n.length){case 0:return e?t():t.call(r);case 1:return e?t(n[0]):t.call(r,n[0]);case 2:return e?t(n[0],n[1]):t.call(r,n[0],n[1]);case 3:return e?t(n[0],n[1],n[2]):t.call(r,n[0],n[1],n[2]);case 4:return e?t(n[0],n[1],n[2],n[3]):t.call(r,n[0],n[1],n[2],n[3])}return t.apply(r,n)}},{}],45:[function(t,n,r){var e=t(18);n.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==e(t)?t.split(""):Object(t)}},{18:18}],46:[function(t,n,r){var e=t(56),i=t(117)("iterator"),o=Array.prototype;n.exports=function(t){return void 0!==t&&(e.Array===t||o[i]===t)}},{117:117,56:56}],47:[function(t,n,r){var e=t(18);n.exports=Array.isArray||function(t){return"Array"==e(t)}},{18:18}],48:[function(t,n,r){var e=t(49),i=Math.floor;n.exports=function(t){return!e(t)&&isFinite(t)&&i(t)===t}},{49:49}],49:[function(t,n,r){n.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},{}],50:[function(t,n,r){var e=t(49),i=t(18),o=t(117)("match");n.exports=function(t){var n;return e(t)&&(void 0!==(n=t[o])?!!n:"RegExp"==i(t))}},{117:117,18:18,49:49}],51:[function(t,n,r){var e=t(7);n.exports=function(t,n,r,i){try{return i?n(e(r)[0],r[1]):n(r)}catch(o){var u=t["return"];throw void 0!==u&&e(u.call(t)),o}}},{7:7}],52:[function(t,n,r){"use strict";var e=t(66),i=t(85),o=t(92),u={};t(40)(u,t(117)("iterator"),function(){return this}),n.exports=function(t,n,r){t.prototype=e(u,{next:i(1,r)}),o(t,n+" Iterator")}},{117:117,40:40,66:66,85:85,92:92}],53:[function(t,n,r){"use strict";var e=t(58),i=t(32),o=t(87),u=t(40),c=t(39),f=t(56),a=t(52),s=t(92),l=t(74),h=t(117)("iterator"),v=!([].keys&&"next"in[].keys()),p="@@iterator",d="keys",y="values",g=function(){return this};n.exports=function(t,n,r,b,w,x,m){a(r,n,b);var S,_,E,O=function(t){if(!v&&t in A)return A[t];switch(t){case d:return function(){return new r(this,t)};case y:return function(){return new r(this,t)}}return function(){return new r(this,t)}},F=n+" Iterator",P=w==y,M=!1,A=t.prototype,j=A[h]||A[p]||w&&A[w],N=j||O(w),I=w?P?O("entries"):N:void 0,R="Array"==n?A.entries||j:j;if(R&&(E=l(R.call(new t)),E!==Object.prototype&&(s(E,F,!0),e||c(E,h)||u(E,h,g))),P&&j&&j.name!==y&&(M=!0,N=function(){return j.call(this)}),e&&!m||!v&&!M&&A[h]||u(A,h,N),f[n]=N,f[F]=g,w)if(S={values:P?N:O(y),keys:x?N:O(d),entries:I},m)for(_ in S)_ in A||o(A,_,S[_]);else i(i.P+i.F*(v||M),n,S);return S}},{117:117,32:32,39:39,40:40,52:52,56:56,58:58,74:74,87:87,92:92}],54:[function(t,n,r){var e=t(117)("iterator"),i=!1;try{var o=[7][e]();o["return"]=function(){i=!0},Array.from(o,function(){throw 2})}catch(u){}n.exports=function(t,n){if(!n&&!i)return!1;var r=!1;try{var o=[7],u=o[e]();u.next=function(){return{done:r=!0}},o[e]=function(){return u},t(o)}catch(c){}return r}},{117:117}],55:[function(t,n,r){n.exports=function(t,n){return{value:n,done:!!t}}},{}],56:[function(t,n,r){n.exports={}},{}],57:[function(t,n,r){var e=t(76),i=t(107);n.exports=function(t,n){for(var r,o=i(t),u=e(o),c=u.length,f=0;c>f;)if(o[r=u[f++]]===n)return r}},{107:107,76:76}],58:[function(t,n,r){n.exports=!1},{}],59:[function(t,n,r){var e=Math.expm1;n.exports=!e||e(10)>22025.465794806718||e(10)<22025.465794806718||e(-2e-17)!=-2e-17?function(t){return 0==(t=+t)?t:t>-1e-6&&t<1e-6?t+t*t/2:Math.exp(t)-1}:e},{}],60:[function(t,n,r){n.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:Math.log(1+t)}},{}],61:[function(t,n,r){n.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},{}],62:[function(t,n,r){var e=t(114)("meta"),i=t(49),o=t(39),u=t(67).f,c=0,f=Object.isExtensible||function(){return!0},a=!t(34)(function(){return f(Object.preventExtensions({}))}),s=function(t){u(t,e,{value:{i:"O"+ ++c,w:{}}})},l=function(t,n){if(!i(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!o(t,e)){if(!f(t))return"F";if(!n)return"E";s(t)}return t[e].i},h=function(t,n){if(!o(t,e)){if(!f(t))return!0;if(!n)return!1;s(t)}return t[e].w},v=function(t){return a&&p.NEED&&f(t)&&!o(t,e)&&s(t),t},p=n.exports={KEY:e,NEED:!1,fastKey:l,getWeak:h,onFreeze:v}},{114:114,34:34,39:39,49:49,67:67}],63:[function(t,n,r){var e=t(149),i=t(32),o=t(94)("metadata"),u=o.store||(o.store=new(t(255))),c=function(t,n,r){var i=u.get(t);if(!i){if(!r)return;u.set(t,i=new e)}var o=i.get(n);if(!o){if(!r)return;i.set(n,o=new e)}return o},f=function(t,n,r){var e=c(n,r,!1);return void 0!==e&&e.has(t)},a=function(t,n,r){var e=c(n,r,!1);return void 0===e?void 0:e.get(t)},s=function(t,n,r,e){c(r,e,!0).set(t,n)},l=function(t,n){var r=c(t,n,!1),e=[];return r&&r.forEach(function(t,n){e.push(n)}),e},h=function(t){return void 0===t||"symbol"==typeof t?t:String(t)},v=function(t){i(i.S,"Reflect",t)};n.exports={store:u,map:c,has:f,get:a,set:s,keys:l,key:h,exp:v}},{149:149,255:255,32:32,94:94}],64:[function(t,n,r){var e=t(38),i=t(104).set,o=e.MutationObserver||e.WebKitMutationObserver,u=e.process,c=e.Promise,f="process"==t(18)(u);n.exports=function(){var t,n,r,a=function(){var e,i;for(f&&(e=u.domain)&&e.exit();t;){i=t.fn,t=t.next;try{i()}catch(o){throw t?r():n=void 0,o}}n=void 0,e&&e.enter()};if(f)r=function(){u.nextTick(a)};else if(o){var s=!0,l=document.createTextNode("");new o(a).observe(l,{characterData:!0}),r=function(){l.data=s=!s}}else if(c&&c.resolve){var h=c.resolve();r=function(){h.then(a)}}else r=function(){i.call(e,a)};return function(e){var i={fn:e,next:void 0};n&&(n.next=i),t||(t=i,r()),n=i}}},{104:104,18:18,38:38}],65:[function(t,n,r){"use strict";var e=t(76),i=t(73),o=t(77),u=t(109),c=t(45),f=Object.assign;n.exports=!f||t(34)(function(){var t={},n={},r=Symbol(),e="abcdefghijklmnopqrst";return t[r]=7,e.split("").forEach(function(t){n[t]=t}),7!=f({},t)[r]||Object.keys(f({},n)).join("")!=e})?function(t,n){for(var r=u(t),f=arguments.length,a=1,s=i.f,l=o.f;f>a;)for(var h,v=c(arguments[a++]),p=s?e(v).concat(s(v)):e(v),d=p.length,y=0;d>y;)l.call(v,h=p[y++])&&(r[h]=v[h]);return r}:f},{109:109,34:34,45:45,73:73,76:76,77:77}],66:[function(t,n,r){var e=t(7),i=t(68),o=t(30),u=t(93)("IE_PROTO"),c=function(){},f="prototype",a=function(){var n,r=t(29)("iframe"),e=o.length,i="<",u=">";for(r.style.display="none",t(41).appendChild(r),r.src="javascript:",n=r.contentWindow.document,n.open(),n.write(i+"script"+u+"document.F=Object"+i+"/script"+u),n.close(),a=n.F;e--;)delete a[f][o[e]];return a()};n.exports=Object.create||function(t,n){var r;return null!==t?(c[f]=e(t),r=new c,c[f]=null,r[u]=t):r=a(),void 0===n?r:i(r,n)}},{29:29,30:30,41:41,68:68,7:7,93:93}],67:[function(t,n,r){var e=t(7),i=t(42),o=t(110),u=Object.defineProperty;r.f=t(28)?Object.defineProperty:function(t,n,r){if(e(t),n=o(n,!0),e(r),i)try{return u(t,n,r)}catch(c){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(t[n]=r.value),t}},{110:110,28:28,42:42,7:7}],68:[function(t,n,r){var e=t(67),i=t(7),o=t(76);n.exports=t(28)?Object.defineProperties:function(t,n){i(t);for(var r,u=o(n),c=u.length,f=0;c>f;)e.f(t,r=u[f++],n[r]);return t}},{28:28,67:67,7:7,76:76}],69:[function(t,n,r){n.exports=t(58)||!t(34)(function(){var n=Math.random();__defineSetter__.call(null,n,function(){}),delete t(38)[n]})},{34:34,38:38,58:58}],70:[function(t,n,r){var e=t(77),i=t(85),o=t(107),u=t(110),c=t(39),f=t(42),a=Object.getOwnPropertyDescriptor;r.f=t(28)?a:function(t,n){if(t=o(t),n=u(n,!0),f)try{return a(t,n)}catch(r){}if(c(t,n))return i(!e.f.call(t,n),t[n])}},{107:107,110:110,28:28,39:39,42:42,77:77,85:85}],71:[function(t,n,r){var e=t(107),i=t(72).f,o={}.toString,u="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],c=function(t){try{return i(t)}catch(n){return u.slice()}};n.exports.f=function(t){return u&&"[object Window]"==o.call(t)?c(t):i(e(t))}},{107:107,72:72}],72:[function(t,n,r){var e=t(75),i=t(30).concat("length","prototype");r.f=Object.getOwnPropertyNames||function(t){return e(t,i)}},{30:30,75:75}],73:[function(t,n,r){r.f=Object.getOwnPropertySymbols},{}],74:[function(t,n,r){var e=t(39),i=t(109),o=t(93)("IE_PROTO"),u=Object.prototype;n.exports=Object.getPrototypeOf||function(t){return t=i(t),e(t,o)?t[o]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},{109:109,39:39,93:93}],75:[function(t,n,r){var e=t(39),i=t(107),o=t(11)(!1),u=t(93)("IE_PROTO");n.exports=function(t,n){var r,c=i(t),f=0,a=[];for(r in c)r!=u&&e(c,r)&&a.push(r);for(;n.length>f;)e(c,r=n[f++])&&(~o(a,r)||a.push(r));return a}},{107:107,11:11,39:39,93:93}],76:[function(t,n,r){var e=t(75),i=t(30);n.exports=Object.keys||function(t){return e(t,i)}},{30:30,75:75}],77:[function(t,n,r){r.f={}.propertyIsEnumerable},{}],78:[function(t,n,r){var e=t(32),i=t(23),o=t(34);n.exports=function(t,n){var r=(i.Object||{})[t]||Object[t],u={};u[t]=n(r),e(e.S+e.F*o(function(){r(1)}),"Object",u)}},{23:23,32:32,34:34}],79:[function(t,n,r){var e=t(76),i=t(107),o=t(77).f;n.exports=function(t){return function(n){for(var r,u=i(n),c=e(u),f=c.length,a=0,s=[];f>a;)o.call(u,r=c[a++])&&s.push(t?[r,u[r]]:u[r]);return s}}},{107:107,76:76,77:77}],80:[function(t,n,r){var e=t(72),i=t(73),o=t(7),u=t(38).Reflect;n.exports=u&&u.ownKeys||function(t){var n=e.f(o(t)),r=i.f;return r?n.concat(r(t)):n}},{38:38,7:7,72:72,73:73}],81:[function(t,n,r){var e=t(38).parseFloat,i=t(102).trim;n.exports=1/e(t(103)+"-0")!==-(1/0)?function(t){var n=i(String(t),3),r=e(n);return 0===r&&"-"==n.charAt(0)?-0:r}:e},{102:102,103:103,38:38}],82:[function(t,n,r){var e=t(38).parseInt,i=t(102).trim,o=t(103),u=/^[\-+]?0[xX]/;n.exports=8!==e(o+"08")||22!==e(o+"0x16")?function(t,n){var r=i(String(t),3);return e(r,n>>>0||(u.test(r)?16:10))}:e},{102:102,103:103,38:38}],83:[function(t,n,r){"use strict";var e=t(84),i=t(44),o=t(3);n.exports=function(){for(var t=o(this),n=arguments.length,r=Array(n),u=0,c=e._,f=!1;n>u;)(r[u]=arguments[u++])===c&&(f=!0);return function(){var e,o=this,u=arguments.length,a=0,s=0;if(!f&&!u)return i(t,r,o);if(e=r.slice(),f)for(;n>a;a++)e[a]===c&&(e[a]=arguments[s++]);for(;u>s;)e.push(arguments[s++]);return i(t,e,o)}}},{3:3,44:44,84:84}],84:[function(t,n,r){n.exports=t(38)},{38:38}],85:[function(t,n,r){n.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},{}],86:[function(t,n,r){var e=t(87);n.exports=function(t,n,r){for(var i in n)e(t,i,n[i],r);return t}},{87:87}],87:[function(t,n,r){var e=t(38),i=t(40),o=t(39),u=t(114)("src"),c="toString",f=Function[c],a=(""+f).split(c);t(23).inspectSource=function(t){return f.call(t)},(n.exports=function(t,n,r,c){var f="function"==typeof r;f&&(o(r,"name")||i(r,"name",n)),t[n]!==r&&(f&&(o(r,u)||i(r,u,t[n]?""+t[n]:a.join(String(n)))),t===e?t[n]=r:c?t[n]?t[n]=r:i(t,n,r):(delete t[n],i(t,n,r)))})(Function.prototype,c,function(){return"function"==typeof this&&this[u]||f.call(this)})},{114:114,23:23,38:38,39:39,40:40}],88:[function(t,n,r){n.exports=function(t,n){var r=n===Object(n)?function(t){return n[t]}:n;return function(n){return String(n).replace(t,r)}}},{}],89:[function(t,n,r){n.exports=Object.is||function(t,n){return t===n?0!==t||1/t===1/n:t!=t&&n!=n}},{}],90:[function(t,n,r){var e=t(49),i=t(7),o=function(t,n){if(i(t),!e(n)&&null!==n)throw TypeError(n+": can't set as prototype!")};n.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(n,r,e){try{e=t(25)(Function.call,t(70).f(Object.prototype,"__proto__").set,2),e(n,[]),r=!(n instanceof Array)}catch(i){r=!0}return function(t,n){return o(t,n),r?t.__proto__=n:e(t,n),t}}({},!1):void 0),check:o}},{25:25,49:49,7:7,70:70}],91:[function(t,n,r){"use strict";var e=t(38),i=t(67),o=t(28),u=t(117)("species");n.exports=function(t){var n=e[t];o&&n&&!n[u]&&i.f(n,u,{configurable:!0,get:function(){return this}})}},{117:117,28:28,38:38,67:67}],92:[function(t,n,r){var e=t(67).f,i=t(39),o=t(117)("toStringTag");n.exports=function(t,n,r){t&&!i(t=r?t:t.prototype,o)&&e(t,o,{configurable:!0,value:n})}},{117:117,39:39,67:67}],93:[function(t,n,r){var e=t(94)("keys"),i=t(114);n.exports=function(t){return e[t]||(e[t]=i(t))}},{114:114,94:94}],94:[function(t,n,r){var e=t(38),i="__core-js_shared__",o=e[i]||(e[i]={});n.exports=function(t){return o[t]||(o[t]={})}},{38:38}],95:[function(t,n,r){var e=t(7),i=t(3),o=t(117)("species");n.exports=function(t,n){var r,u=e(t).constructor;return void 0===u||void 0==(r=e(u)[o])?n:i(r)}},{117:117,3:3,7:7}],96:[function(t,n,r){var e=t(34);n.exports=function(t,n){return!!t&&e(function(){n?t.call(null,function(){},1):t.call(null)})}},{34:34}],97:[function(t,n,r){var e=t(106),i=t(27);n.exports=function(t){return function(n,r){var o,u,c=String(i(n)),f=e(r),a=c.length;return f<0||f>=a?t?"":void 0:(o=c.charCodeAt(f),o<55296||o>56319||f+1===a||(u=c.charCodeAt(f+1))<56320||u>57343?t?c.charAt(f):o:t?c.slice(f,f+2):(o-55296<<10)+(u-56320)+65536)}}},{106:106,27:27}],98:[function(t,n,r){var e=t(50),i=t(27);n.exports=function(t,n,r){if(e(n))throw TypeError("String#"+r+" doesn't accept regex!");return String(i(t))}},{27:27,50:50}],99:[function(t,n,r){var e=t(32),i=t(34),o=t(27),u=/"/g,c=function(t,n,r,e){var i=String(o(t)),c="<"+n;return""!==r&&(c+=" "+r+'="'+String(e).replace(u,""")+'"'),c+">"+i+""};n.exports=function(t,n){var r={};r[t]=n(c),e(e.P+e.F*i(function(){var n=""[t]('"');return n!==n.toLowerCase()||n.split('"').length>3}),"String",r)}},{27:27,32:32,34:34}],100:[function(t,n,r){var e=t(108),i=t(101),o=t(27);n.exports=function(t,n,r,u){var c=String(o(t)),f=c.length,a=void 0===r?" ":String(r),s=e(n);if(s<=f||""==a)return c;var l=s-f,h=i.call(a,Math.ceil(l/a.length));return h.length>l&&(h=h.slice(0,l)),u?h+c:c+h}},{101:101,108:108,27:27}],101:[function(t,n,r){"use strict";var e=t(106),i=t(27);n.exports=function(t){var n=String(i(this)),r="",o=e(t);if(o<0||o==1/0)throw RangeError("Count can't be negative");for(;o>0;(o>>>=1)&&(n+=n))1&o&&(r+=n);return r}},{106:106,27:27}],102:[function(t,n,r){var e=t(32),i=t(27),o=t(34),u=t(103),c="["+u+"]",f="​…",a=RegExp("^"+c+c+"*"),s=RegExp(c+c+"*$"),l=function(t,n,r){var i={},c=o(function(){return!!u[t]()||f[t]()!=f}),a=i[t]=c?n(h):u[t];r&&(i[r]=a),e(e.P+e.F*c,"String",i)},h=l.trim=function(t,n){return t=String(i(t)),1&n&&(t=t.replace(a,"")),2&n&&(t=t.replace(s,"")),t};n.exports=l},{103:103,27:27,32:32,34:34}],103:[function(t,n,r){n.exports="\t\n\x0B\f\r   ᠎              \u2028\u2029\ufeff"},{}],104:[function(t,n,r){var e,i,o,u=t(25),c=t(44),f=t(41),a=t(29),s=t(38),l=s.process,h=s.setImmediate,v=s.clearImmediate,p=s.MessageChannel,d=0,y={},g="onreadystatechange",b=function(){var t=+this;if(y.hasOwnProperty(t)){var n=y[t];delete y[t],n()}},w=function(t){b.call(t.data)};h&&v||(h=function(t){for(var n=[],r=1;arguments.length>r;)n.push(arguments[r++]);return y[++d]=function(){c("function"==typeof t?t:Function(t),n)},e(d),d},v=function(t){delete y[t]},"process"==t(18)(l)?e=function(t){l.nextTick(u(b,t,1))}:p?(i=new p,o=i.port2,i.port1.onmessage=w,e=u(o.postMessage,o,1)):s.addEventListener&&"function"==typeof postMessage&&!s.importScripts?(e=function(t){s.postMessage(t+"","*")},s.addEventListener("message",w,!1)):e=g in a("script")?function(t){f.appendChild(a("script"))[g]=function(){f.removeChild(this),b.call(t)}}:function(t){setTimeout(u(b,t,1),0)}),n.exports={set:h,clear:v}},{18:18,25:25,29:29,38:38,41:41,44:44}],105:[function(t,n,r){var e=t(106),i=Math.max,o=Math.min;n.exports=function(t,n){return t=e(t),t<0?i(t+n,0):o(t,n)}},{106:106}],106:[function(t,n,r){var e=Math.ceil,i=Math.floor;n.exports=function(t){return isNaN(t=+t)?0:(t>0?i:e)(t)}},{}],107:[function(t,n,r){var e=t(45),i=t(27);n.exports=function(t){return e(i(t))}},{27:27,45:45}],108:[function(t,n,r){var e=t(106),i=Math.min;n.exports=function(t){return t>0?i(e(t),9007199254740991):0}},{106:106}],109:[function(t,n,r){var e=t(27);n.exports=function(t){return Object(e(t))}},{27:27}],110:[function(t,n,r){var e=t(49);n.exports=function(t,n){if(!e(t))return t;var r,i;if(n&&"function"==typeof(r=t.toString)&&!e(i=r.call(t)))return i;if("function"==typeof(r=t.valueOf)&&!e(i=r.call(t)))return i;if(!n&&"function"==typeof(r=t.toString)&&!e(i=r.call(t)))return i;throw TypeError("Can't convert object to primitive value")}},{49:49}],111:[function(t,n,r){"use strict";if(t(28)){var e=t(58),i=t(38),o=t(34),u=t(32),c=t(113),f=t(112),a=t(25),s=t(6),l=t(85),h=t(40),v=t(86),p=t(106),d=t(108),y=t(105),g=t(110),b=t(39),w=t(89),x=t(17),m=t(49),S=t(109),_=t(46),E=t(66),O=t(74),F=t(72).f,P=t(118),M=t(114),A=t(117),j=t(12),N=t(11),I=t(95),R=t(130),k=t(56),T=t(54),L=t(91),C=t(9),U=t(8),D=t(67),W=t(70),G=D.f,B=W.f,V=i.RangeError,z=i.TypeError,Y=i.Uint8Array,J="ArrayBuffer",K="Shared"+J,q="BYTES_PER_ELEMENT",X="prototype",$=Array[X],H=f.ArrayBuffer,Z=f.DataView,Q=j(0),tt=j(2),nt=j(3),rt=j(4),et=j(5),it=j(6),ot=N(!0),ut=N(!1),ct=R.values,ft=R.keys,at=R.entries,st=$.lastIndexOf,lt=$.reduce,ht=$.reduceRight,vt=$.join,pt=$.sort,dt=$.slice,yt=$.toString,gt=$.toLocaleString,bt=A("iterator"),wt=A("toStringTag"),xt=M("typed_constructor"),mt=M("def_constructor"),St=c.CONSTR,_t=c.TYPED,Et=c.VIEW,Ot="Wrong length!",Ft=j(1,function(t,n){return It(I(t,t[mt]),n)}),Pt=o(function(){return 1===new Y(new Uint16Array([1]).buffer)[0]}),Mt=!!Y&&!!Y[X].set&&o(function(){new Y(1).set({})}),At=function(t,n){if(void 0===t)throw z(Ot);var r=+t,e=d(t);if(n&&!w(r,e))throw V(Ot);return e},jt=function(t,n){var r=p(t);if(r<0||r%n)throw V("Wrong offset!");return r},Nt=function(t){if(m(t)&&_t in t)return t;throw z(t+" is not a typed array!")},It=function(t,n){if(!(m(t)&&xt in t))throw z("It is not a typed array constructor!");return new t(n)},Rt=function(t,n){return kt(I(t,t[mt]),n)},kt=function(t,n){for(var r=0,e=n.length,i=It(t,e);e>r;)i[r]=n[r++];return i},Tt=function(t,n,r){G(t,n,{get:function(){return this._d[r]}})},Lt=function(t){var n,r,e,i,o,u,c=S(t),f=arguments.length,s=f>1?arguments[1]:void 0,l=void 0!==s,h=P(c);if(void 0!=h&&!_(h)){for(u=h.call(c),e=[],n=0;!(o=u.next()).done;n++)e.push(o.value);c=e}for(l&&f>2&&(s=a(s,arguments[2],2)),n=0,r=d(c.length),i=It(this,r);r>n;n++)i[n]=l?s(c[n],n):c[n];return i},Ct=function(){for(var t=0,n=arguments.length,r=It(this,n);n>t;)r[t]=arguments[t++];return r},Ut=!!Y&&o(function(){gt.call(new Y(1))}),Dt=function(){return gt.apply(Ut?dt.call(Nt(this)):Nt(this),arguments)},Wt={copyWithin:function(t,n){return U.call(Nt(this),t,n,arguments.length>2?arguments[2]:void 0)},every:function(t){return rt(Nt(this),t,arguments.length>1?arguments[1]:void 0)},fill:function(t){return C.apply(Nt(this),arguments)},filter:function(t){return Rt(this,tt(Nt(this),t,arguments.length>1?arguments[1]:void 0))},find:function(t){return et(Nt(this),t,arguments.length>1?arguments[1]:void 0)},findIndex:function(t){return it(Nt(this),t,arguments.length>1?arguments[1]:void 0)},forEach:function(t){Q(Nt(this),t,arguments.length>1?arguments[1]:void 0)},indexOf:function(t){return ut(Nt(this),t,arguments.length>1?arguments[1]:void 0)},includes:function(t){return ot(Nt(this),t,arguments.length>1?arguments[1]:void 0)},join:function(t){return vt.apply(Nt(this),arguments)},lastIndexOf:function(t){ -return st.apply(Nt(this),arguments)},map:function(t){return Ft(Nt(this),t,arguments.length>1?arguments[1]:void 0)},reduce:function(t){return lt.apply(Nt(this),arguments)},reduceRight:function(t){return ht.apply(Nt(this),arguments)},reverse:function(){for(var t,n=this,r=Nt(n).length,e=Math.floor(r/2),i=0;i1?arguments[1]:void 0)},sort:function(t){return pt.call(Nt(this),t)},subarray:function(t,n){var r=Nt(this),e=r.length,i=y(t,e);return new(I(r,r[mt]))(r.buffer,r.byteOffset+i*r.BYTES_PER_ELEMENT,d((void 0===n?e:y(n,e))-i))}},Gt=function(t,n){return Rt(this,dt.call(Nt(this),t,n))},Bt=function(t){Nt(this);var n=jt(arguments[1],1),r=this.length,e=S(t),i=d(e.length),o=0;if(i+n>r)throw V(Ot);for(;o255?255:255&e),i.v[p](r*n+i.o,e,Pt)},A=function(t,n){G(t,n,{get:function(){return P(this,n)},set:function(t){return M(this,n,t)},enumerable:!0})};w?(y=r(function(t,r,e,i){s(t,y,a,"_d");var o,u,c,f,l=0,v=0;if(m(r)){if(!(r instanceof H||(f=x(r))==J||f==K))return _t in r?kt(y,r):Lt.call(y,r);o=r,v=jt(e,n);var p=r.byteLength;if(void 0===i){if(p%n)throw V(Ot);if(u=p-v,u<0)throw V(Ot)}else if(u=d(i)*n,u+v>p)throw V(Ot);c=u/n}else c=At(r,!0),u=c*n,o=new H(u);for(h(t,"_d",{b:o,o:v,l:u,e:c,v:new Z(o)});l>1,s=23===n?A(2,-24)-A(2,-77):0,l=0,h=t<0||0===t&&1/t<0?1:0;for(t=M(t),t!=t||t===F?(i=t!=t?1:0,e=f):(e=j(N(t)/I),t*(o=A(2,-e))<1&&(e--,o*=2),t+=e+a>=1?s/o:s*A(2,1-a),t*o>=2&&(e++,o/=2),e+a>=f?(i=0,e=f):e+a>=1?(i=(t*o-1)*A(2,n),e+=a):(i=t*A(2,a-1)*A(2,n),e=0));n>=8;u[l++]=255&i,i/=256,n-=8);for(e=e<0;u[l++]=255&e,e/=256,c-=8);return u[--l]|=128*h,u},W=function(t,n,r){var e,i=8*r-n-1,o=(1<>1,c=i-7,f=r-1,a=t[f--],s=127&a;for(a>>=7;c>0;s=256*s+t[f],f--,c-=8);for(e=s&(1<<-c)-1,s>>=-c,c+=n;c>0;e=256*e+t[f],f--,c-=8);if(0===s)s=1-u;else{if(s===o)return e?NaN:a?-F:F;e+=A(2,n),s-=u}return(a?-1:1)*e*A(2,s-n)},G=function(t){return t[3]<<24|t[2]<<16|t[1]<<8|t[0]},B=function(t){return[255&t]},V=function(t){return[255&t,t>>8&255]},z=function(t){return[255&t,t>>8&255,t>>16&255,t>>24&255]},Y=function(t){return D(t,52,8)},J=function(t){return D(t,23,4)},K=function(t,n,r){p(t[w],n,{get:function(){return this[r]}})},q=function(t,n,r,e){var i=+r,o=l(i);if(i!=o||o<0||o+n>t[C])throw O(m);var u=t[L]._b,c=o+t[U],f=u.slice(c,c+n);return e?f:f.reverse()},X=function(t,n,r,e,i,o){var u=+r,c=l(u);if(u!=c||c<0||c+n>t[C])throw O(m);for(var f=t[L]._b,a=c+t[U],s=e(+i),h=0;htt;)(H=Q[tt++])in S||c(S,H,P[H]);o||(Z.constructor=S)}var nt=new _(new S(2)),rt=_[w].setInt8;nt.setInt8(0,2147483648),nt.setInt8(1,2147483649),!nt.getInt8(0)&&nt.getInt8(1)||f(_[w],{setInt8:function(t,n){rt.call(this,t,n<<24>>24)},setUint8:function(t,n){rt.call(this,t,n<<24>>24)}},!0)}else S=function(t){var n=$(this,t);this._b=d.call(Array(n),0),this[C]=n},_=function(t,n,r){s(this,_,b),s(t,S,b);var e=t[C],i=l(n);if(i<0||i>e)throw O("Wrong offset!");if(r=void 0===r?e-i:h(r),i+r>e)throw O(x);this[L]=t,this[U]=i,this[C]=r},i&&(K(S,k,"_l"),K(_,R,"_b"),K(_,k,"_l"),K(_,T,"_o")),f(_[w],{getInt8:function(t){return q(this,1,t)[0]<<24>>24},getUint8:function(t){return q(this,1,t)[0]},getInt16:function(t){var n=q(this,2,t,arguments[1]);return(n[1]<<8|n[0])<<16>>16},getUint16:function(t){var n=q(this,2,t,arguments[1]);return n[1]<<8|n[0]},getInt32:function(t){return G(q(this,4,t,arguments[1]))},getUint32:function(t){return G(q(this,4,t,arguments[1]))>>>0},getFloat32:function(t){return W(q(this,4,t,arguments[1]),23,4)},getFloat64:function(t){return W(q(this,8,t,arguments[1]),52,8)},setInt8:function(t,n){X(this,1,t,B,n)},setUint8:function(t,n){X(this,1,t,B,n)},setInt16:function(t,n){X(this,2,t,V,n,arguments[2])},setUint16:function(t,n){X(this,2,t,V,n,arguments[2])},setInt32:function(t,n){X(this,4,t,z,n,arguments[2])},setUint32:function(t,n){X(this,4,t,z,n,arguments[2])},setFloat32:function(t,n){X(this,4,t,J,n,arguments[2])},setFloat64:function(t,n){X(this,8,t,Y,n,arguments[2])}});y(S,g),y(_,b),c(_[w],u.VIEW,!0),r[g]=S,r[b]=_},{106:106,108:108,113:113,28:28,34:34,38:38,40:40,58:58,6:6,67:67,72:72,86:86,9:9,92:92}],113:[function(t,n,r){for(var e,i=t(38),o=t(40),u=t(114),c=u("typed_array"),f=u("view"),a=!(!i.ArrayBuffer||!i.DataView),s=a,l=0,h=9,v="Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array".split(",");l1?arguments[1]:void 0)}}),t(5)(o)},{12:12,32:32,5:5}],125:[function(t,n,r){"use strict";var e=t(32),i=t(12)(5),o="find",u=!0;o in[]&&Array(1)[o](function(){u=!1}),e(e.P+e.F*u,"Array",{find:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),t(5)(o)},{12:12,32:32,5:5}],126:[function(t,n,r){"use strict";var e=t(32),i=t(12)(0),o=t(96)([].forEach,!0);e(e.P+e.F*!o,"Array",{forEach:function(t){return i(this,t,arguments[1])}})},{12:12,32:32,96:96}],127:[function(t,n,r){"use strict";var e=t(25),i=t(32),o=t(109),u=t(51),c=t(46),f=t(108),a=t(24),s=t(118);i(i.S+i.F*!t(54)(function(t){Array.from(t)}),"Array",{from:function(t){var n,r,i,l,h=o(t),v="function"==typeof this?this:Array,p=arguments.length,d=p>1?arguments[1]:void 0,y=void 0!==d,g=0,b=s(h);if(y&&(d=e(d,p>2?arguments[2]:void 0,2)),void 0==b||v==Array&&c(b))for(n=f(h.length),r=new v(n);n>g;g++)a(r,g,y?d(h[g],g):h[g]);else for(l=b.call(h),r=new v;!(i=l.next()).done;g++)a(r,g,y?u(l,d,[i.value,g],!0):i.value);return r.length=g,r}})},{108:108,109:109,118:118,24:24,25:25,32:32,46:46,51:51,54:54}],128:[function(t,n,r){"use strict";var e=t(32),i=t(11)(!1),o=[].indexOf,u=!!o&&1/[1].indexOf(1,-0)<0;e(e.P+e.F*(u||!t(96)(o)),"Array",{indexOf:function(t){return u?o.apply(this,arguments)||0:i(this,t,arguments[1])}})},{11:11,32:32,96:96}],129:[function(t,n,r){var e=t(32);e(e.S,"Array",{isArray:t(47)})},{32:32,47:47}],130:[function(t,n,r){"use strict";var e=t(5),i=t(55),o=t(56),u=t(107);n.exports=t(53)(Array,"Array",function(t,n){this._t=u(t),this._i=0,this._k=n},function(){var t=this._t,n=this._k,r=this._i++;return!t||r>=t.length?(this._t=void 0,i(1)):"keys"==n?i(0,r):"values"==n?i(0,t[r]):i(0,[r,t[r]])},"values"),o.Arguments=o.Array,e("keys"),e("values"),e("entries")},{107:107,5:5,53:53,55:55,56:56}],131:[function(t,n,r){"use strict";var e=t(32),i=t(107),o=[].join;e(e.P+e.F*(t(45)!=Object||!t(96)(o)),"Array",{join:function(t){return o.call(i(this),void 0===t?",":t)}})},{107:107,32:32,45:45,96:96}],132:[function(t,n,r){"use strict";var e=t(32),i=t(107),o=t(106),u=t(108),c=[].lastIndexOf,f=!!c&&1/[1].lastIndexOf(1,-0)<0;e(e.P+e.F*(f||!t(96)(c)),"Array",{lastIndexOf:function(t){if(f)return c.apply(this,arguments)||0;var n=i(this),r=u(n.length),e=r-1;for(arguments.length>1&&(e=Math.min(e,o(arguments[1]))),e<0&&(e=r+e);e>=0;e--)if(e in n&&n[e]===t)return e||0;return-1}})},{106:106,107:107,108:108,32:32,96:96}],133:[function(t,n,r){"use strict";var e=t(32),i=t(12)(1);e(e.P+e.F*!t(96)([].map,!0),"Array",{map:function(t){return i(this,t,arguments[1])}})},{12:12,32:32,96:96}],134:[function(t,n,r){"use strict";var e=t(32),i=t(24);e(e.S+e.F*t(34)(function(){function t(){}return!(Array.of.call(t)instanceof t)}),"Array",{of:function(){for(var t=0,n=arguments.length,r=new("function"==typeof this?this:Array)(n);n>t;)i(r,t,arguments[t++]);return r.length=n,r}})},{24:24,32:32,34:34}],135:[function(t,n,r){"use strict";var e=t(32),i=t(13);e(e.P+e.F*!t(96)([].reduceRight,!0),"Array",{reduceRight:function(t){return i(this,t,arguments.length,arguments[1],!0)}})},{13:13,32:32,96:96}],136:[function(t,n,r){"use strict";var e=t(32),i=t(13);e(e.P+e.F*!t(96)([].reduce,!0),"Array",{reduce:function(t){return i(this,t,arguments.length,arguments[1],!1)}})},{13:13,32:32,96:96}],137:[function(t,n,r){"use strict";var e=t(32),i=t(41),o=t(18),u=t(105),c=t(108),f=[].slice;e(e.P+e.F*t(34)(function(){i&&f.call(i)}),"Array",{slice:function(t,n){var r=c(this.length),e=o(this);if(n=void 0===n?r:n,"Array"==e)return f.call(this,t,n);for(var i=u(t,r),a=u(n,r),s=c(a-i),l=Array(s),h=0;h9?t:"0"+t};e(e.P+e.F*(i(function(){return"0385-07-25T07:06:39.999Z"!=new Date(-5e13-1).toISOString()})||!i(function(){new Date(NaN).toISOString()})),"Date",{toISOString:function(){if(!isFinite(o.call(this)))throw RangeError("Invalid time value");var t=this,n=t.getUTCFullYear(),r=t.getUTCMilliseconds(),e=n<0?"-":n>9999?"+":"";return e+("00000"+Math.abs(n)).slice(e?-6:-4)+"-"+u(t.getUTCMonth()+1)+"-"+u(t.getUTCDate())+"T"+u(t.getUTCHours())+":"+u(t.getUTCMinutes())+":"+u(t.getUTCSeconds())+"."+(r>99?r:"0"+u(r))+"Z"}})},{32:32,34:34}],143:[function(t,n,r){"use strict";var e=t(32),i=t(109),o=t(110);e(e.P+e.F*t(34)(function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}),"Date",{toJSON:function(t){var n=i(this),r=o(n);return"number"!=typeof r||isFinite(r)?n.toISOString():null}})},{109:109,110:110,32:32,34:34}],144:[function(t,n,r){var e=t(117)("toPrimitive"),i=Date.prototype;e in i||t(40)(i,e,t(26))},{117:117,26:26,40:40}],145:[function(t,n,r){var e=Date.prototype,i="Invalid Date",o="toString",u=e[o],c=e.getTime;new Date(NaN)+""!=i&&t(87)(e,o,function(){var t=c.call(this);return t===t?u.call(this):i})},{87:87}],146:[function(t,n,r){var e=t(32);e(e.P,"Function",{bind:t(16)})},{16:16,32:32}],147:[function(t,n,r){"use strict";var e=t(49),i=t(74),o=t(117)("hasInstance"),u=Function.prototype;o in u||t(67).f(u,o,{value:function(t){if("function"!=typeof this||!e(t))return!1;if(!e(this.prototype))return t instanceof this;for(;t=i(t);)if(this.prototype===t)return!0;return!1}})},{117:117,49:49,67:67,74:74}],148:[function(t,n,r){var e=t(67).f,i=t(85),o=t(39),u=Function.prototype,c=/^\s*function ([^ (]*)/,f="name",a=Object.isExtensible||function(){return!0};f in u||t(28)&&e(u,f,{configurable:!0,get:function(){try{var t=this,n=(""+t).match(c)[1];return o(t,f)||!a(t)||e(t,f,i(5,n)),n}catch(r){return""}}})},{28:28,39:39,67:67,85:85}],149:[function(t,n,r){"use strict";var e=t(19);n.exports=t(22)("Map",function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},{get:function(t){var n=e.getEntry(this,t);return n&&n.v},set:function(t,n){return e.def(this,0===t?0:t,n)}},e,!0)},{19:19,22:22}],150:[function(t,n,r){var e=t(32),i=t(60),o=Math.sqrt,u=Math.acosh;e(e.S+e.F*!(u&&710==Math.floor(u(Number.MAX_VALUE))&&u(1/0)==1/0),"Math",{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?Math.log(t)+Math.LN2:i(t-1+o(t-1)*o(t+1))}})},{32:32,60:60}],151:[function(t,n,r){function e(t){return isFinite(t=+t)&&0!=t?t<0?-e(-t):Math.log(t+Math.sqrt(t*t+1)):t}var i=t(32),o=Math.asinh;i(i.S+i.F*!(o&&1/o(0)>0),"Math",{asinh:e})},{32:32}],152:[function(t,n,r){var e=t(32),i=Math.atanh;e(e.S+e.F*!(i&&1/i(-0)<0),"Math",{atanh:function(t){return 0==(t=+t)?t:Math.log((1+t)/(1-t))/2}})},{32:32}],153:[function(t,n,r){var e=t(32),i=t(61);e(e.S,"Math",{cbrt:function(t){return i(t=+t)*Math.pow(Math.abs(t),1/3)}})},{32:32,61:61}],154:[function(t,n,r){var e=t(32);e(e.S,"Math",{clz32:function(t){return(t>>>=0)?31-Math.floor(Math.log(t+.5)*Math.LOG2E):32}})},{32:32}],155:[function(t,n,r){var e=t(32),i=Math.exp;e(e.S,"Math",{cosh:function(t){return(i(t=+t)+i(-t))/2}})},{32:32}],156:[function(t,n,r){var e=t(32),i=t(59);e(e.S+e.F*(i!=Math.expm1),"Math",{expm1:i})},{32:32,59:59}],157:[function(t,n,r){var e=t(32),i=t(61),o=Math.pow,u=o(2,-52),c=o(2,-23),f=o(2,127)*(2-c),a=o(2,-126),s=function(t){return t+1/u-1/u};e(e.S,"Math",{fround:function(t){var n,r,e=Math.abs(t),o=i(t);return ef||r!=r?o*(1/0):o*r)}})},{32:32,61:61}],158:[function(t,n,r){var e=t(32),i=Math.abs;e(e.S,"Math",{hypot:function(t,n){for(var r,e,o=0,u=0,c=arguments.length,f=0;u0?(e=r/f,o+=e*e):o+=r;return f===1/0?1/0:f*Math.sqrt(o)}})},{32:32}],159:[function(t,n,r){var e=t(32),i=Math.imul;e(e.S+e.F*t(34)(function(){return i(4294967295,5)!=-5||2!=i.length}),"Math",{imul:function(t,n){var r=65535,e=+t,i=+n,o=r&e,u=r&i;return 0|o*u+((r&e>>>16)*u+o*(r&i>>>16)<<16>>>0)}})},{32:32,34:34}],160:[function(t,n,r){var e=t(32);e(e.S,"Math",{log10:function(t){return Math.log(t)/Math.LN10}})},{32:32}],161:[function(t,n,r){var e=t(32);e(e.S,"Math",{log1p:t(60)})},{32:32,60:60}],162:[function(t,n,r){var e=t(32);e(e.S,"Math",{log2:function(t){return Math.log(t)/Math.LN2}})},{32:32}],163:[function(t,n,r){var e=t(32);e(e.S,"Math",{sign:t(61)})},{32:32,61:61}],164:[function(t,n,r){var e=t(32),i=t(59),o=Math.exp;e(e.S+e.F*t(34)(function(){return!Math.sinh(-2e-17)!=-2e-17}),"Math",{sinh:function(t){return Math.abs(t=+t)<1?(i(t)-i(-t))/2:(o(t-1)-o(-t-1))*(Math.E/2)}})},{32:32,34:34,59:59}],165:[function(t,n,r){var e=t(32),i=t(59),o=Math.exp;e(e.S,"Math",{tanh:function(t){var n=i(t=+t),r=i(-t);return n==1/0?1:r==1/0?-1:(n-r)/(o(t)+o(-t))}})},{32:32,59:59}],166:[function(t,n,r){var e=t(32);e(e.S,"Math",{trunc:function(t){return(t>0?Math.floor:Math.ceil)(t)}})},{32:32}],167:[function(t,n,r){"use strict";var e=t(38),i=t(39),o=t(18),u=t(43),c=t(110),f=t(34),a=t(72).f,s=t(70).f,l=t(67).f,h=t(102).trim,v="Number",p=e[v],d=p,y=p.prototype,g=o(t(66)(y))==v,b="trim"in String.prototype,w=function(t){var n=c(t,!1);if("string"==typeof n&&n.length>2){n=b?n.trim():h(n,3);var r,e,i,o=n.charCodeAt(0);if(43===o||45===o){if(r=n.charCodeAt(2),88===r||120===r)return NaN}else if(48===o){switch(n.charCodeAt(1)){case 66:case 98:e=2,i=49;break;case 79:case 111:e=8,i=55;break;default:return+n}for(var u,f=n.slice(2),a=0,s=f.length;ai)return NaN;return parseInt(f,e)}}return+n};if(!p(" 0o1")||!p("0b1")||p("+0x1")){p=function(t){var n=arguments.length<1?0:t,r=this;return r instanceof p&&(g?f(function(){y.valueOf.call(r)}):o(r)!=v)?u(new d(w(n)),r,p):w(n)};for(var x,m=t(28)?a(d):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),S=0;m.length>S;S++)i(d,x=m[S])&&!i(p,x)&&l(p,x,s(d,x));p.prototype=y,y.constructor=p,t(87)(e,v,p)}},{102:102,110:110,18:18,28:28,34:34,38:38,39:39,43:43,66:66,67:67,70:70,72:72,87:87}],168:[function(t,n,r){var e=t(32);e(e.S,"Number",{EPSILON:Math.pow(2,-52)})},{32:32}],169:[function(t,n,r){var e=t(32),i=t(38).isFinite;e(e.S,"Number",{isFinite:function(t){return"number"==typeof t&&i(t)}})},{32:32,38:38}],170:[function(t,n,r){var e=t(32);e(e.S,"Number",{isInteger:t(48)})},{32:32,48:48}],171:[function(t,n,r){var e=t(32);e(e.S,"Number",{isNaN:function(t){return t!=t}})},{32:32}],172:[function(t,n,r){var e=t(32),i=t(48),o=Math.abs;e(e.S,"Number",{isSafeInteger:function(t){return i(t)&&o(t)<=9007199254740991}})},{32:32,48:48}],173:[function(t,n,r){var e=t(32);e(e.S,"Number",{MAX_SAFE_INTEGER:9007199254740991})},{32:32}],174:[function(t,n,r){var e=t(32);e(e.S,"Number",{MIN_SAFE_INTEGER:-9007199254740991})},{32:32}],175:[function(t,n,r){var e=t(32),i=t(81);e(e.S+e.F*(Number.parseFloat!=i),"Number",{parseFloat:i})},{32:32,81:81}],176:[function(t,n,r){var e=t(32),i=t(82);e(e.S+e.F*(Number.parseInt!=i),"Number",{parseInt:i})},{32:32,82:82}],177:[function(t,n,r){"use strict";var e=t(32),i=t(106),o=t(4),u=t(101),c=1..toFixed,f=Math.floor,a=[0,0,0,0,0,0],s="Number.toFixed: incorrect invocation!",l="0",h=function(t,n){for(var r=-1,e=n;++r<6;)e+=t*a[r],a[r]=e%1e7,e=f(e/1e7)},v=function(t){for(var n=6,r=0;--n>=0;)r+=a[n],a[n]=f(r/t),r=r%t*1e7},p=function(){for(var t=6,n="";--t>=0;)if(""!==n||0===t||0!==a[t]){var r=String(a[t]);n=""===n?r:n+u.call(l,7-r.length)+r}return n},d=function(t,n,r){return 0===n?r:n%2===1?d(t,n-1,r*t):d(t*t,n/2,r)},y=function(t){for(var n=0,r=t;r>=4096;)n+=12,r/=4096;for(;r>=2;)n+=1,r/=2;return n};e(e.P+e.F*(!!c&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==(0xde0b6b3a7640080).toFixed(0))||!t(34)(function(){c.call({})})),"Number",{toFixed:function(t){var n,r,e,c,f=o(this,s),a=i(t),g="",b=l;if(a<0||a>20)throw RangeError(s);if(f!=f)return"NaN";if(f<=-1e21||f>=1e21)return String(f);if(f<0&&(g="-",f=-f),f>1e-21)if(n=y(f*d(2,69,1))-69,r=n<0?f*d(2,-n,1):f/d(2,n,1),r*=4503599627370496,n=52-n,n>0){for(h(0,r),e=a;e>=7;)h(1e7,0),e-=7;for(h(d(10,e,1),0),e=n-1;e>=23;)v(1<<23),e-=23;v(1<0?(c=b.length,b=g+(c<=a?"0."+u.call(l,a-c)+b:b.slice(0,c-a)+"."+b.slice(c-a))):b=g+b,b}})},{101:101,106:106,32:32,34:34,4:4}],178:[function(t,n,r){"use strict";var e=t(32),i=t(34),o=t(4),u=1..toPrecision;e(e.P+e.F*(i(function(){return"1"!==u.call(1,void 0)})||!i(function(){u.call({})})),"Number",{toPrecision:function(t){var n=o(this,"Number#toPrecision: incorrect invocation!");return void 0===t?u.call(n):u.call(n,t)}})},{32:32,34:34,4:4}],179:[function(t,n,r){var e=t(32);e(e.S+e.F,"Object",{assign:t(65)})},{32:32,65:65}],180:[function(t,n,r){var e=t(32);e(e.S,"Object",{create:t(66)})},{32:32,66:66}],181:[function(t,n,r){var e=t(32);e(e.S+e.F*!t(28),"Object",{defineProperties:t(68)})},{28:28,32:32,68:68}],182:[function(t,n,r){var e=t(32);e(e.S+e.F*!t(28),"Object",{defineProperty:t(67).f})},{28:28,32:32,67:67}],183:[function(t,n,r){var e=t(49),i=t(62).onFreeze;t(78)("freeze",function(t){return function(n){return t&&e(n)?t(i(n)):n}})},{49:49,62:62,78:78}],184:[function(t,n,r){var e=t(107),i=t(70).f;t(78)("getOwnPropertyDescriptor",function(){return function(t,n){return i(e(t),n)}})},{107:107,70:70,78:78}],185:[function(t,n,r){t(78)("getOwnPropertyNames",function(){return t(71).f})},{71:71,78:78}],186:[function(t,n,r){var e=t(109),i=t(74);t(78)("getPrototypeOf",function(){return function(t){return i(e(t))}})},{109:109,74:74,78:78}],187:[function(t,n,r){var e=t(49);t(78)("isExtensible",function(t){return function(n){return!!e(n)&&(!t||t(n))}})},{49:49,78:78}],188:[function(t,n,r){var e=t(49);t(78)("isFrozen",function(t){return function(n){return!e(n)||!!t&&t(n)}})},{49:49,78:78}],189:[function(t,n,r){var e=t(49);t(78)("isSealed",function(t){return function(n){return!e(n)||!!t&&t(n)}})},{49:49,78:78}],190:[function(t,n,r){var e=t(32);e(e.S,"Object",{is:t(89)})},{32:32,89:89}],191:[function(t,n,r){var e=t(109),i=t(76);t(78)("keys",function(){return function(t){return i(e(t))}})},{109:109,76:76,78:78}],192:[function(t,n,r){var e=t(49),i=t(62).onFreeze;t(78)("preventExtensions",function(t){return function(n){return t&&e(n)?t(i(n)):n}})},{49:49,62:62,78:78}],193:[function(t,n,r){var e=t(49),i=t(62).onFreeze;t(78)("seal",function(t){return function(n){return t&&e(n)?t(i(n)):n}})},{49:49,62:62,78:78}],194:[function(t,n,r){var e=t(32);e(e.S,"Object",{setPrototypeOf:t(90).set})},{32:32,90:90}],195:[function(t,n,r){"use strict";var e=t(17),i={};i[t(117)("toStringTag")]="z",i+""!="[object z]"&&t(87)(Object.prototype,"toString",function(){return"[object "+e(this)+"]"},!0)},{117:117,17:17,87:87}],196:[function(t,n,r){var e=t(32),i=t(81);e(e.G+e.F*(parseFloat!=i),{parseFloat:i})},{32:32,81:81}],197:[function(t,n,r){var e=t(32),i=t(82);e(e.G+e.F*(parseInt!=i),{parseInt:i})},{32:32,82:82}],198:[function(t,n,r){"use strict";var e,i,o,u=t(58),c=t(38),f=t(25),a=t(17),s=t(32),l=t(49),h=t(3),v=t(6),p=t(37),d=t(95),y=t(104).set,g=t(64)(),b="Promise",w=c.TypeError,x=c.process,m=c[b],x=c.process,S="process"==a(x),_=function(){},E=!!function(){try{var n=m.resolve(1),r=(n.constructor={})[t(117)("species")]=function(t){t(_,_)};return(S||"function"==typeof PromiseRejectionEvent)&&n.then(_)instanceof r}catch(e){}}(),O=function(t,n){return t===n||t===m&&n===o},F=function(t){var n;return!(!l(t)||"function"!=typeof(n=t.then))&&n},P=function(t){return O(m,t)?new M(t):new i(t)},M=i=function(t){var n,r;this.promise=new t(function(t,e){if(void 0!==n||void 0!==r)throw w("Bad Promise constructor");n=t,r=e}),this.resolve=h(n),this.reject=h(r)},A=function(t){try{t()}catch(n){return{error:n}}},j=function(t,n){if(!t._n){t._n=!0;var r=t._c;g(function(){for(var e=t._v,i=1==t._s,o=0,u=function(n){var r,o,u=i?n.ok:n.fail,c=n.resolve,f=n.reject,a=n.domain;try{u?(i||(2==t._h&&R(t),t._h=1),u===!0?r=e:(a&&a.enter(),r=u(e),a&&a.exit()),r===n.promise?f(w("Promise-chain cycle")):(o=F(r))?o.call(r,c,f):c(r)):f(e)}catch(s){f(s)}};r.length>o;)u(r[o++]);t._c=[],t._n=!1,n&&!t._h&&N(t)})}},N=function(t){y.call(c,function(){var n,r,e,i=t._v;if(I(t)&&(n=A(function(){S?x.emit("unhandledRejection",i,t):(r=c.onunhandledrejection)?r({promise:t,reason:i}):(e=c.console)&&e.error&&e.error("Unhandled promise rejection",i)}),t._h=S||I(t)?2:1),t._a=void 0,n)throw n.error})},I=function(t){if(1==t._h)return!1;for(var n,r=t._a||t._c,e=0;r.length>e;)if(n=r[e++],n.fail||!I(n.promise))return!1;return!0},R=function(t){y.call(c,function(){var n;S?x.emit("rejectionHandled",t):(n=c.onrejectionhandled)&&n({promise:t,reason:t._v})})},k=function(t){var n=this;n._d||(n._d=!0,n=n._w||n,n._v=t,n._s=2,n._a||(n._a=n._c.slice()),j(n,!0))},T=function(t){var n,r=this;if(!r._d){r._d=!0,r=r._w||r;try{if(r===t)throw w("Promise can't be resolved itself");(n=F(t))?g(function(){var e={_w:r,_d:!1};try{n.call(t,f(T,e,1),f(k,e,1))}catch(i){k.call(e,i)}}):(r._v=t,r._s=1,j(r,!1))}catch(e){k.call({_w:r,_d:!1},e)}}};E||(m=function(t){v(this,m,b,"_h"),h(t),e.call(this);try{t(f(T,this,1),f(k,this,1))}catch(n){k.call(this,n)}},e=function(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1},e.prototype=t(86)(m.prototype,{then:function(t,n){var r=P(d(this,m));return r.ok="function"!=typeof t||t,r.fail="function"==typeof n&&n,r.domain=S?x.domain:void 0,this._c.push(r),this._a&&this._a.push(r),this._s&&j(this,!1),r.promise},"catch":function(t){return this.then(void 0,t)}}),M=function(){var t=new e;this.promise=t,this.resolve=f(T,t,1),this.reject=f(k,t,1)}),s(s.G+s.W+s.F*!E,{Promise:m}),t(92)(m,b),t(91)(b),o=t(23)[b],s(s.S+s.F*!E,b,{reject:function(t){var n=P(this),r=n.reject;return r(t),n.promise}}),s(s.S+s.F*(u||!E),b,{resolve:function(t){if(t instanceof m&&O(t.constructor,this))return t;var n=P(this),r=n.resolve;return r(t),n.promise}}),s(s.S+s.F*!(E&&t(54)(function(t){m.all(t)["catch"](_)})),b,{all:function(t){var n=this,r=P(n),e=r.resolve,i=r.reject,o=A(function(){var r=[],o=0,u=1;p(t,!1,function(t){var c=o++,f=!1;r.push(void 0),u++,n.resolve(t).then(function(t){f||(f=!0,r[c]=t,--u||e(r))},i)}),--u||e(r)});return o&&i(o.error),r.promise},race:function(t){var n=this,r=P(n),e=r.reject,i=A(function(){p(t,!1,function(t){n.resolve(t).then(r.resolve,e)})});return i&&e(i.error),r.promise}})},{104:104,117:117,17:17,23:23,25:25,3:3,32:32,37:37,38:38,49:49,54:54,58:58,6:6,64:64,86:86,91:91,92:92,95:95}],199:[function(t,n,r){var e=t(32),i=t(3),o=t(7),u=(t(38).Reflect||{}).apply,c=Function.apply;e(e.S+e.F*!t(34)(function(){u(function(){})}),"Reflect",{apply:function(t,n,r){var e=i(t),f=o(r);return u?u(e,n,f):c.call(e,n,f)}})},{3:3,32:32,34:34,38:38,7:7}],200:[function(t,n,r){var e=t(32),i=t(66),o=t(3),u=t(7),c=t(49),f=t(34),a=t(16),s=(t(38).Reflect||{}).construct,l=f(function(){function t(){}return!(s(function(){},[],t)instanceof t)}),h=!f(function(){s(function(){})});e(e.S+e.F*(l||h),"Reflect",{construct:function(t,n){o(t),u(n);var r=arguments.length<3?t:o(arguments[2]);if(h&&!l)return s(t,n,r);if(t==r){switch(n.length){case 0:return new t;case 1:return new t(n[0]);case 2:return new t(n[0],n[1]);case 3:return new t(n[0],n[1],n[2]);case 4:return new t(n[0],n[1],n[2],n[3])}var e=[null];return e.push.apply(e,n),new(a.apply(t,e))}var f=r.prototype,v=i(c(f)?f:Object.prototype),p=Function.apply.call(t,v,n);return c(p)?p:v}})},{16:16,3:3,32:32,34:34,38:38,49:49,66:66,7:7}],201:[function(t,n,r){var e=t(67),i=t(32),o=t(7),u=t(110);i(i.S+i.F*t(34)(function(){Reflect.defineProperty(e.f({},1,{value:1}),1,{value:2})}),"Reflect",{defineProperty:function(t,n,r){o(t),n=u(n,!0),o(r);try{return e.f(t,n,r),!0}catch(i){return!1}}})},{110:110,32:32,34:34,67:67,7:7}],202:[function(t,n,r){var e=t(32),i=t(70).f,o=t(7);e(e.S,"Reflect",{deleteProperty:function(t,n){var r=i(o(t),n);return!(r&&!r.configurable)&&delete t[n]}})},{32:32,7:7,70:70}],203:[function(t,n,r){"use strict";var e=t(32),i=t(7),o=function(t){this._t=i(t),this._i=0;var n,r=this._k=[];for(n in t)r.push(n)};t(52)(o,"Object",function(){var t,n=this,r=n._k;do if(n._i>=r.length)return{value:void 0,done:!0};while(!((t=r[n._i++])in n._t));return{value:t,done:!1}}),e(e.S,"Reflect",{enumerate:function(t){return new o(t)}})},{32:32,52:52,7:7}],204:[function(t,n,r){var e=t(70),i=t(32),o=t(7);i(i.S,"Reflect",{getOwnPropertyDescriptor:function(t,n){return e.f(o(t),n)}})},{32:32,7:7,70:70}],205:[function(t,n,r){var e=t(32),i=t(74),o=t(7);e(e.S,"Reflect",{getPrototypeOf:function(t){return i(o(t))}})},{32:32,7:7,74:74}],206:[function(t,n,r){function e(t,n){var r,c,s=arguments.length<3?t:arguments[2];return a(t)===s?t[n]:(r=i.f(t,n))?u(r,"value")?r.value:void 0!==r.get?r.get.call(s):void 0:f(c=o(t))?e(c,n,s):void 0}var i=t(70),o=t(74),u=t(39),c=t(32),f=t(49),a=t(7);c(c.S,"Reflect",{get:e})},{32:32,39:39,49:49,7:7,70:70,74:74}],207:[function(t,n,r){var e=t(32);e(e.S,"Reflect",{has:function(t,n){return n in t}})},{32:32}],208:[function(t,n,r){var e=t(32),i=t(7),o=Object.isExtensible;e(e.S,"Reflect",{isExtensible:function(t){return i(t),!o||o(t)}})},{32:32,7:7}],209:[function(t,n,r){var e=t(32);e(e.S,"Reflect",{ownKeys:t(80)})},{32:32,80:80}],210:[function(t,n,r){var e=t(32),i=t(7),o=Object.preventExtensions;e(e.S,"Reflect",{preventExtensions:function(t){i(t);try{return o&&o(t),!0}catch(n){return!1}}})},{32:32,7:7}],211:[function(t,n,r){var e=t(32),i=t(90);i&&e(e.S,"Reflect",{setPrototypeOf:function(t,n){i.check(t,n);try{return i.set(t,n),!0}catch(r){return!1}}})},{32:32,90:90}],212:[function(t,n,r){function e(t,n,r){var f,h,v=arguments.length<4?t:arguments[3],p=o.f(s(t),n);if(!p){if(l(h=u(t)))return e(h,n,r,v);p=a(0)}return c(p,"value")?!(p.writable===!1||!l(v))&&(f=o.f(v,n)||a(0),f.value=r,i.f(v,n,f),!0):void 0!==p.set&&(p.set.call(v,r),!0)}var i=t(67),o=t(70),u=t(74),c=t(39),f=t(32),a=t(85),s=t(7),l=t(49);f(f.S,"Reflect",{set:e})},{32:32,39:39,49:49,67:67,7:7,70:70,74:74,85:85}],213:[function(t,n,r){var e=t(38),i=t(43),o=t(67).f,u=t(72).f,c=t(50),f=t(36),a=e.RegExp,s=a,l=a.prototype,h=/a/g,v=/a/g,p=new a(h)!==h;if(t(28)&&(!p||t(34)(function(){return v[t(117)("match")]=!1,a(h)!=h||a(v)==v||"/a/i"!=a(h,"i")}))){a=function(t,n){var r=this instanceof a,e=c(t),o=void 0===n;return!r&&e&&t.constructor===a&&o?t:i(p?new s(e&&!o?t.source:t,n):s((e=t instanceof a)?t.source:t,e&&o?f.call(t):n),r?this:l,a); -};for(var d=(function(t){t in a||o(a,t,{configurable:!0,get:function(){return s[t]},set:function(n){s[t]=n}})}),y=u(s),g=0;y.length>g;)d(y[g++]);l.constructor=a,a.prototype=l,t(87)(e,"RegExp",a)}t(91)("RegExp")},{117:117,28:28,34:34,36:36,38:38,43:43,50:50,67:67,72:72,87:87,91:91}],214:[function(t,n,r){t(28)&&"g"!=/./g.flags&&t(67).f(RegExp.prototype,"flags",{configurable:!0,get:t(36)})},{28:28,36:36,67:67}],215:[function(t,n,r){t(35)("match",1,function(t,n,r){return[function(r){"use strict";var e=t(this),i=void 0==r?void 0:r[n];return void 0!==i?i.call(r,e):new RegExp(r)[n](String(e))},r]})},{35:35}],216:[function(t,n,r){t(35)("replace",2,function(t,n,r){return[function(e,i){"use strict";var o=t(this),u=void 0==e?void 0:e[n];return void 0!==u?u.call(e,o,i):r.call(String(o),e,i)},r]})},{35:35}],217:[function(t,n,r){t(35)("search",1,function(t,n,r){return[function(r){"use strict";var e=t(this),i=void 0==r?void 0:r[n];return void 0!==i?i.call(r,e):new RegExp(r)[n](String(e))},r]})},{35:35}],218:[function(t,n,r){t(35)("split",2,function(n,r,e){"use strict";var i=t(50),o=e,u=[].push,c="split",f="length",a="lastIndex";if("c"=="abbc"[c](/(b)*/)[1]||4!="test"[c](/(?:)/,-1)[f]||2!="ab"[c](/(?:ab)*/)[f]||4!="."[c](/(.?)(.?)/)[f]||"."[c](/()()/)[f]>1||""[c](/.?/)[f]){var s=void 0===/()??/.exec("")[1];e=function(t,n){var r=String(this);if(void 0===t&&0===n)return[];if(!i(t))return o.call(r,t,n);var e,c,l,h,v,p=[],d=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),y=0,g=void 0===n?4294967295:n>>>0,b=new RegExp(t.source,d+"g");for(s||(e=new RegExp("^"+b.source+"$(?!\\s)",d));(c=b.exec(r))&&(l=c.index+c[0][f],!(l>y&&(p.push(r.slice(y,c.index)),!s&&c[f]>1&&c[0].replace(e,function(){for(v=1;v1&&c.index=g)));)b[a]===c.index&&b[a]++;return y===r[f]?!h&&b.test("")||p.push(""):p.push(r.slice(y)),p[f]>g?p.slice(0,g):p}}else"0"[c](void 0,0)[f]&&(e=function(t,n){return void 0===t&&0===n?[]:o.call(this,t,n)});return[function(t,i){var o=n(this),u=void 0==t?void 0:t[r];return void 0!==u?u.call(t,o,i):e.call(String(o),t,i)},e]})},{35:35,50:50}],219:[function(t,n,r){"use strict";t(214);var e=t(7),i=t(36),o=t(28),u="toString",c=/./[u],f=function(n){t(87)(RegExp.prototype,u,n,!0)};t(34)(function(){return"/a/b"!=c.call({source:"a",flags:"b"})})?f(function(){var t=e(this);return"/".concat(t.source,"/","flags"in t?t.flags:!o&&t instanceof RegExp?i.call(t):void 0)}):c.name!=u&&f(function(){return c.call(this)})},{214:214,28:28,34:34,36:36,7:7,87:87}],220:[function(t,n,r){"use strict";var e=t(19);n.exports=t(22)("Set",function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},{add:function(t){return e.def(this,t=0===t?0:t,t)}},e)},{19:19,22:22}],221:[function(t,n,r){"use strict";t(99)("anchor",function(t){return function(n){return t(this,"a","name",n)}})},{99:99}],222:[function(t,n,r){"use strict";t(99)("big",function(t){return function(){return t(this,"big","","")}})},{99:99}],223:[function(t,n,r){"use strict";t(99)("blink",function(t){return function(){return t(this,"blink","","")}})},{99:99}],224:[function(t,n,r){"use strict";t(99)("bold",function(t){return function(){return t(this,"b","","")}})},{99:99}],225:[function(t,n,r){"use strict";var e=t(32),i=t(97)(!1);e(e.P,"String",{codePointAt:function(t){return i(this,t)}})},{32:32,97:97}],226:[function(t,n,r){"use strict";var e=t(32),i=t(108),o=t(98),u="endsWith",c=""[u];e(e.P+e.F*t(33)(u),"String",{endsWith:function(t){var n=o(this,t,u),r=arguments.length>1?arguments[1]:void 0,e=i(n.length),f=void 0===r?e:Math.min(i(r),e),a=String(t);return c?c.call(n,a,f):n.slice(f-a.length,f)===a}})},{108:108,32:32,33:33,98:98}],227:[function(t,n,r){"use strict";t(99)("fixed",function(t){return function(){return t(this,"tt","","")}})},{99:99}],228:[function(t,n,r){"use strict";t(99)("fontcolor",function(t){return function(n){return t(this,"font","color",n)}})},{99:99}],229:[function(t,n,r){"use strict";t(99)("fontsize",function(t){return function(n){return t(this,"font","size",n)}})},{99:99}],230:[function(t,n,r){var e=t(32),i=t(105),o=String.fromCharCode,u=String.fromCodePoint;e(e.S+e.F*(!!u&&1!=u.length),"String",{fromCodePoint:function(t){for(var n,r=[],e=arguments.length,u=0;e>u;){if(n=+arguments[u++],i(n,1114111)!==n)throw RangeError(n+" is not a valid code point");r.push(n<65536?o(n):o(((n-=65536)>>10)+55296,n%1024+56320))}return r.join("")}})},{105:105,32:32}],231:[function(t,n,r){"use strict";var e=t(32),i=t(98),o="includes";e(e.P+e.F*t(33)(o),"String",{includes:function(t){return!!~i(this,t,o).indexOf(t,arguments.length>1?arguments[1]:void 0)}})},{32:32,33:33,98:98}],232:[function(t,n,r){"use strict";t(99)("italics",function(t){return function(){return t(this,"i","","")}})},{99:99}],233:[function(t,n,r){"use strict";var e=t(97)(!0);t(53)(String,"String",function(t){this._t=String(t),this._i=0},function(){var t,n=this._t,r=this._i;return r>=n.length?{value:void 0,done:!0}:(t=e(n,r),this._i+=t.length,{value:t,done:!1})})},{53:53,97:97}],234:[function(t,n,r){"use strict";t(99)("link",function(t){return function(n){return t(this,"a","href",n)}})},{99:99}],235:[function(t,n,r){var e=t(32),i=t(107),o=t(108);e(e.S,"String",{raw:function(t){for(var n=i(t.raw),r=o(n.length),e=arguments.length,u=[],c=0;r>c;)u.push(String(n[c++])),c1?arguments[1]:void 0,n.length)),e=String(t);return c?c.call(n,e,r):n.slice(r,r+e.length)===e}})},{108:108,32:32,33:33,98:98}],239:[function(t,n,r){"use strict";t(99)("strike",function(t){return function(){return t(this,"strike","","")}})},{99:99}],240:[function(t,n,r){"use strict";t(99)("sub",function(t){return function(){return t(this,"sub","","")}})},{99:99}],241:[function(t,n,r){"use strict";t(99)("sup",function(t){return function(){return t(this,"sup","","")}})},{99:99}],242:[function(t,n,r){"use strict";t(102)("trim",function(t){return function(){return t(this,3)}})},{102:102}],243:[function(t,n,r){"use strict";var e=t(38),i=t(39),o=t(28),u=t(32),c=t(87),f=t(62).KEY,a=t(34),s=t(94),l=t(92),h=t(114),v=t(117),p=t(116),d=t(115),y=t(57),g=t(31),b=t(47),w=t(7),x=t(107),m=t(110),S=t(85),_=t(66),E=t(71),O=t(70),F=t(67),P=t(76),M=O.f,A=F.f,j=E.f,N=e.Symbol,I=e.JSON,R=I&&I.stringify,k="prototype",T=v("_hidden"),L=v("toPrimitive"),C={}.propertyIsEnumerable,U=s("symbol-registry"),D=s("symbols"),W=s("op-symbols"),G=Object[k],B="function"==typeof N,V=e.QObject,z=!V||!V[k]||!V[k].findChild,Y=o&&a(function(){return 7!=_(A({},"a",{get:function(){return A(this,"a",{value:7}).a}})).a})?function(t,n,r){var e=M(G,n);e&&delete G[n],A(t,n,r),e&&t!==G&&A(G,n,e)}:A,J=function(t){var n=D[t]=_(N[k]);return n._k=t,n},K=B&&"symbol"==typeof N.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof N},q=function(t,n,r){return t===G&&q(W,n,r),w(t),n=m(n,!0),w(r),i(D,n)?(r.enumerable?(i(t,T)&&t[T][n]&&(t[T][n]=!1),r=_(r,{enumerable:S(0,!1)})):(i(t,T)||A(t,T,S(1,{})),t[T][n]=!0),Y(t,n,r)):A(t,n,r)},X=function(t,n){w(t);for(var r,e=g(n=x(n)),i=0,o=e.length;o>i;)q(t,r=e[i++],n[r]);return t},$=function(t,n){return void 0===n?_(t):X(_(t),n)},H=function(t){var n=C.call(this,t=m(t,!0));return!(this===G&&i(D,t)&&!i(W,t))&&(!(n||!i(this,t)||!i(D,t)||i(this,T)&&this[T][t])||n)},Z=function(t,n){if(t=x(t),n=m(n,!0),t!==G||!i(D,n)||i(W,n)){var r=M(t,n);return!r||!i(D,n)||i(t,T)&&t[T][n]||(r.enumerable=!0),r}},Q=function(t){for(var n,r=j(x(t)),e=[],o=0;r.length>o;)i(D,n=r[o++])||n==T||n==f||e.push(n);return e},tt=function(t){for(var n,r=t===G,e=j(r?W:x(t)),o=[],u=0;e.length>u;)!i(D,n=e[u++])||r&&!i(G,n)||o.push(D[n]);return o};B||(N=function(){if(this instanceof N)throw TypeError("Symbol is not a constructor!");var t=h(arguments.length>0?arguments[0]:void 0),n=function(r){this===G&&n.call(W,r),i(this,T)&&i(this[T],t)&&(this[T][t]=!1),Y(this,t,S(1,r))};return o&&z&&Y(G,t,{configurable:!0,set:n}),J(t)},c(N[k],"toString",function(){return this._k}),O.f=Z,F.f=q,t(72).f=E.f=Q,t(77).f=H,t(73).f=tt,o&&!t(58)&&c(G,"propertyIsEnumerable",H,!0),p.f=function(t){return J(v(t))}),u(u.G+u.W+u.F*!B,{Symbol:N});for(var nt="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),rt=0;nt.length>rt;)v(nt[rt++]);for(var nt=P(v.store),rt=0;nt.length>rt;)d(nt[rt++]);u(u.S+u.F*!B,"Symbol",{"for":function(t){return i(U,t+="")?U[t]:U[t]=N(t)},keyFor:function(t){if(K(t))return y(U,t);throw TypeError(t+" is not a symbol!")},useSetter:function(){z=!0},useSimple:function(){z=!1}}),u(u.S+u.F*!B,"Object",{create:$,defineProperty:q,defineProperties:X,getOwnPropertyDescriptor:Z,getOwnPropertyNames:Q,getOwnPropertySymbols:tt}),I&&u(u.S+u.F*(!B||a(function(){var t=N();return"[null]"!=R([t])||"{}"!=R({a:t})||"{}"!=R(Object(t))})),"JSON",{stringify:function(t){if(void 0!==t&&!K(t)){for(var n,r,e=[t],i=1;arguments.length>i;)e.push(arguments[i++]);return n=e[1],"function"==typeof n&&(r=n),!r&&b(n)||(n=function(t,n){if(r&&(n=r.call(this,t,n)),!K(n))return n}),e[1]=n,R.apply(I,e)}}}),N[k][L]||t(40)(N[k],L,N[k].valueOf),l(N,"Symbol"),l(Math,"Math",!0),l(e.JSON,"JSON",!0)},{107:107,110:110,114:114,115:115,116:116,117:117,28:28,31:31,32:32,34:34,38:38,39:39,40:40,47:47,57:57,58:58,62:62,66:66,67:67,7:7,70:70,71:71,72:72,73:73,76:76,77:77,85:85,87:87,92:92,94:94}],244:[function(t,n,r){"use strict";var e=t(32),i=t(113),o=t(112),u=t(7),c=t(105),f=t(108),a=t(49),s=t(38).ArrayBuffer,l=t(95),h=o.ArrayBuffer,v=o.DataView,p=i.ABV&&s.isView,d=h.prototype.slice,y=i.VIEW,g="ArrayBuffer";e(e.G+e.W+e.F*(s!==h),{ArrayBuffer:h}),e(e.S+e.F*!i.CONSTR,g,{isView:function(t){return p&&p(t)||a(t)&&y in t}}),e(e.P+e.U+e.F*t(34)(function(){return!new h(2).slice(1,void 0).byteLength}),g,{slice:function(t,n){if(void 0!==d&&void 0===n)return d.call(u(this),t);for(var r=u(this).byteLength,e=c(t,r),i=c(void 0===n?r:n,r),o=new(l(this,h))(f(i-e)),a=new v(this),s=new v(o),p=0;e0?arguments[0]:void 0)}},d={get:function(t){if(a(t)){var n=s(t);return n===!0?h(this).get(t):n?n[this._i]:void 0}},set:function(t,n){return f.def(this,t,n)}},y=n.exports=t(22)("WeakMap",p,d,f,!0,!0);7!=(new y).set((Object.freeze||Object)(v),7).get(v)&&(e=f.getConstructor(p),c(e.prototype,d),u.NEED=!0,i(["delete","has","get","set"],function(t){var n=y.prototype,r=n[t];o(n,t,function(n,i){if(a(n)&&!l(n)){this._f||(this._f=new e);var o=this._f[t](n,i);return"set"==t?this:o}return r.call(this,n,i)})}))},{12:12,21:21,22:22,49:49,62:62,65:65,87:87}],256:[function(t,n,r){"use strict";var e=t(21);t(22)("WeakSet",function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},{add:function(t){return e.def(this,t,!0)}},e,!1,!0)},{21:21,22:22}],257:[function(t,n,r){"use strict";var e=t(32),i=t(11)(!0);e(e.P,"Array",{includes:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),t(5)("includes")},{11:11,32:32,5:5}],258:[function(t,n,r){var e=t(32),i=t(64)(),o=t(38).process,u="process"==t(18)(o);e(e.G,{asap:function(t){var n=u&&o.domain;i(n?n.bind(t):t)}})},{18:18,32:32,38:38,64:64}],259:[function(t,n,r){var e=t(32),i=t(18);e(e.S,"Error",{isError:function(t){return"Error"===i(t)}})},{18:18,32:32}],260:[function(t,n,r){var e=t(32);e(e.P+e.R,"Map",{toJSON:t(20)("Map")})},{20:20,32:32}],261:[function(t,n,r){var e=t(32);e(e.S,"Math",{iaddh:function(t,n,r,e){var i=t>>>0,o=n>>>0,u=r>>>0;return o+(e>>>0)+((i&u|(i|u)&~(i+u>>>0))>>>31)|0}})},{32:32}],262:[function(t,n,r){var e=t(32);e(e.S,"Math",{imulh:function(t,n){var r=65535,e=+t,i=+n,o=e&r,u=i&r,c=e>>16,f=i>>16,a=(c*u>>>0)+(o*u>>>16);return c*f+(a>>16)+((o*f>>>0)+(a&r)>>16)}})},{32:32}],263:[function(t,n,r){var e=t(32);e(e.S,"Math",{isubh:function(t,n,r,e){var i=t>>>0,o=n>>>0,u=r>>>0;return o-(e>>>0)-((~i&u|~(i^u)&i-u>>>0)>>>31)|0}})},{32:32}],264:[function(t,n,r){var e=t(32);e(e.S,"Math",{umulh:function(t,n){var r=65535,e=+t,i=+n,o=e&r,u=i&r,c=e>>>16,f=i>>>16,a=(c*u>>>0)+(o*u>>>16);return c*f+(a>>>16)+((o*f>>>0)+(a&r)>>>16)}})},{32:32}],265:[function(t,n,r){"use strict";var e=t(32),i=t(109),o=t(3),u=t(67);t(28)&&e(e.P+t(69),"Object",{__defineGetter__:function(t,n){u.f(i(this),t,{get:o(n),enumerable:!0,configurable:!0})}})},{109:109,28:28,3:3,32:32,67:67,69:69}],266:[function(t,n,r){"use strict";var e=t(32),i=t(109),o=t(3),u=t(67);t(28)&&e(e.P+t(69),"Object",{__defineSetter__:function(t,n){u.f(i(this),t,{set:o(n),enumerable:!0,configurable:!0})}})},{109:109,28:28,3:3,32:32,67:67,69:69}],267:[function(t,n,r){var e=t(32),i=t(79)(!0);e(e.S,"Object",{entries:function(t){return i(t)}})},{32:32,79:79}],268:[function(t,n,r){var e=t(32),i=t(80),o=t(107),u=t(70),c=t(24);e(e.S,"Object",{getOwnPropertyDescriptors:function(t){for(var n,r=o(t),e=u.f,f=i(r),a={},s=0;f.length>s;)c(a,n=f[s++],e(r,n));return a}})},{107:107,24:24,32:32,70:70,80:80}],269:[function(t,n,r){"use strict";var e=t(32),i=t(109),o=t(110),u=t(74),c=t(70).f;t(28)&&e(e.P+t(69),"Object",{__lookupGetter__:function(t){var n,r=i(this),e=o(t,!0);do if(n=c(r,e))return n.get;while(r=u(r))}})},{109:109,110:110,28:28,32:32,69:69,70:70,74:74}],270:[function(t,n,r){"use strict";var e=t(32),i=t(109),o=t(110),u=t(74),c=t(70).f;t(28)&&e(e.P+t(69),"Object",{__lookupSetter__:function(t){var n,r=i(this),e=o(t,!0);do if(n=c(r,e))return n.set;while(r=u(r))}})},{109:109,110:110,28:28,32:32,69:69,70:70,74:74}],271:[function(t,n,r){var e=t(32),i=t(79)(!1);e(e.S,"Object",{values:function(t){return i(t)}})},{32:32,79:79}],272:[function(t,n,r){"use strict";var e=t(32),i=t(38),o=t(23),u=t(64)(),c=t(117)("observable"),f=t(3),a=t(7),s=t(6),l=t(86),h=t(40),v=t(37),p=v.RETURN,d=function(t){return null==t?void 0:f(t)},y=function(t){var n=t._c;n&&(t._c=void 0,n())},g=function(t){return void 0===t._o},b=function(t){g(t)||(t._o=void 0,y(t))},w=function(t,n){a(t),this._c=void 0,this._o=t,t=new x(this);try{var r=n(t),e=r;null!=r&&("function"==typeof r.unsubscribe?r=function(){e.unsubscribe()}:f(r),this._c=r)}catch(i){return void t.error(i)}g(this)&&y(this)};w.prototype=l({},{unsubscribe:function(){b(this)}});var x=function(t){this._s=t};x.prototype=l({},{next:function(t){var n=this._s;if(!g(n)){var r=n._o;try{var e=d(r.next);if(e)return e.call(r,t)}catch(i){try{b(n)}finally{throw i}}}},error:function(t){var n=this._s;if(g(n))throw t;var r=n._o;n._o=void 0;try{var e=d(r.error);if(!e)throw t;t=e.call(r,t)}catch(i){try{y(n)}finally{throw i}}return y(n),t},complete:function(t){var n=this._s;if(!g(n)){var r=n._o;n._o=void 0;try{var e=d(r.complete);t=e?e.call(r,t):void 0}catch(i){try{y(n)}finally{throw i}}return y(n),t}}});var m=function(t){s(this,m,"Observable","_f")._f=f(t)};l(m.prototype,{subscribe:function(t){return new w(t,this._f)},forEach:function(t){var n=this;return new(o.Promise||i.Promise)(function(r,e){f(t);var i=n.subscribe({next:function(n){try{return t(n)}catch(r){e(r),i.unsubscribe()}},error:e,complete:r})})}}),l(m,{from:function(t){var n="function"==typeof this?this:m,r=d(a(t)[c]);if(r){var e=a(r.call(t));return e.constructor===n?e:new n(function(t){return e.subscribe(t)})}return new n(function(n){var r=!1;return u(function(){if(!r){try{if(v(t,!1,function(t){if(n.next(t),r)return p})===p)return}catch(e){if(r)throw e;return void n.error(e)}n.complete()}}),function(){r=!0}})},of:function(){for(var t=0,n=arguments.length,r=Array(n);t1?arguments[1]:void 0,!1)}})},{100:100,32:32}],286:[function(t,n,r){"use strict";var e=t(32),i=t(100);e(e.P,"String",{padStart:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0,!0)}})},{100:100,32:32}],287:[function(t,n,r){"use strict";t(102)("trimLeft",function(t){return function(){return t(this,1)}},"trimStart")},{102:102}],288:[function(t,n,r){"use strict";t(102)("trimRight",function(t){return function(){return t(this,2)}},"trimEnd")},{102:102}],289:[function(t,n,r){t(115)("asyncIterator")},{115:115}],290:[function(t,n,r){t(115)("observable")},{115:115}],291:[function(t,n,r){var e=t(32);e(e.S,"System",{global:t(38)})},{32:32,38:38}],292:[function(t,n,r){for(var e=t(130),i=t(87),o=t(38),u=t(40),c=t(56),f=t(117),a=f("iterator"),s=f("toStringTag"),l=c.Array,h=["NodeList","DOMTokenList","MediaList","StyleSheetList","CSSRuleList"],v=0;v<5;v++){var p,d=h[v],y=o[d],g=y&&y.prototype;if(g){g[a]||u(g,a,l),g[s]||u(g,s,d),c[d]=l;for(p in e)g[p]||i(g,p,e[p],!0)}}},{117:117,130:130,38:38,40:40,56:56,87:87}],293:[function(t,n,r){var e=t(32),i=t(104);e(e.G+e.B,{setImmediate:i.set,clearImmediate:i.clear})},{104:104,32:32}],294:[function(t,n,r){var e=t(38),i=t(32),o=t(44),u=t(83),c=e.navigator,f=!!c&&/MSIE .\./.test(c.userAgent),a=function(t){return f?function(n,r){return t(o(u,[].slice.call(arguments,2),"function"==typeof n?n:Function(n)),r)}:t};i(i.G+i.B+i.F*f,{setTimeout:a(e.setTimeout),setInterval:a(e.setInterval)})},{32:32,38:38,44:44,83:83}],295:[function(t,n,r){t(243),t(180),t(182),t(181),t(184),t(186),t(191),t(185),t(183),t(193),t(192),t(188),t(189),t(187),t(179),t(190),t(194),t(195),t(146),t(148),t(147),t(197),t(196),t(167),t(177),t(178),t(168),t(169),t(170),t(171),t(172),t(173),t(174),t(175),t(176),t(150),t(151),t(152),t(153),t(154),t(155),t(156),t(157),t(158),t(159),t(160),t(161),t(162),t(163),t(164),t(165),t(166),t(230),t(235),t(242),t(233),t(225),t(226),t(231),t(236),t(238),t(221),t(222),t(223),t(224),t(227),t(228),t(229),t(232),t(234),t(237),t(239),t(240),t(241),t(141),t(143),t(142),t(145),t(144),t(129),t(127),t(134),t(131),t(137),t(139),t(126),t(133),t(123),t(138),t(121),t(136),t(135),t(128),t(132),t(120),t(122),t(125),t(124),t(140),t(130),t(213),t(219),t(214),t(215),t(216),t(217),t(218),t(198),t(149),t(220),t(255),t(256),t(244),t(245),t(250),t(253),t(254),t(248),t(251),t(249),t(252),t(246),t(247),t(199),t(200),t(201),t(202),t(203),t(206),t(204),t(205),t(207),t(208),t(209),t(210),t(212),t(211),t(257),t(283),t(286),t(285),t(287),t(288),t(284),t(289),t(290),t(268),t(271),t(267),t(265),t(266),t(269),t(270),t(260),t(282),t(291),t(259),t(261),t(263),t(262),t(264),t(273),t(274),t(276),t(275),t(278),t(277),t(279),t(280),t(281),t(258),t(272),t(294),t(293),t(292),n.exports=t(23)},{120:120,121:121,122:122,123:123,124:124,125:125,126:126,127:127,128:128,129:129,130:130,131:131,132:132,133:133,134:134,135:135,136:136,137:137,138:138,139:139,140:140,141:141,142:142,143:143,144:144,145:145,146:146,147:147,148:148,149:149,150:150,151:151,152:152,153:153,154:154,155:155,156:156,157:157,158:158,159:159,160:160,161:161,162:162,163:163,164:164,165:165,166:166,167:167,168:168,169:169,170:170,171:171,172:172,173:173,174:174,175:175,176:176,177:177,178:178,179:179,180:180,181:181,182:182,183:183,184:184,185:185,186:186,187:187,188:188,189:189,190:190,191:191,192:192,193:193,194:194,195:195,196:196,197:197,198:198,199:199,200:200,201:201,202:202,203:203,204:204,205:205,206:206,207:207,208:208,209:209,210:210,211:211,212:212,213:213,214:214,215:215,216:216,217:217,218:218,219:219,220:220,221:221,222:222,223:223,224:224,225:225,226:226,227:227,228:228,229:229,23:23,230:230,231:231,232:232,233:233,234:234,235:235,236:236,237:237,238:238,239:239,240:240,241:241,242:242,243:243,244:244,245:245,246:246,247:247,248:248,249:249,250:250,251:251,252:252,253:253,254:254,255:255,256:256,257:257,258:258,259:259,260:260,261:261,262:262,263:263,264:264,265:265,266:266,267:267,268:268,269:269,270:270,271:271,272:272,273:273,274:274,275:275,276:276,277:277,278:278,279:279,280:280,281:281,282:282,283:283,284:284,285:285,286:286,287:287,288:288,289:289,290:290,291:291,292:292,293:293,294:294}],296:[function(t,n,r){(function(t){!function(t){"use strict";function r(t,n,r,e){var o=n&&n.prototype instanceof i?n:i,u=Object.create(o.prototype),c=new v(e||[]);return u._invoke=s(t,r,c),u}function e(t,n,r){try{return{type:"normal",arg:t.call(n,r)}}catch(e){return{type:"throw",arg:e}}}function i(){}function o(){}function u(){}function c(t){["next","throw","return"].forEach(function(n){t[n]=function(t){return this._invoke(n,t)}})}function f(t){this.arg=t}function a(t){function n(r,i,o,u){var c=e(t[r],t,i);if("throw"!==c.type){var a=c.arg,s=a.value;return s instanceof f?Promise.resolve(s.arg).then(function(t){n("next",t,o,u)},function(t){n("throw",t,o,u)}):Promise.resolve(s).then(function(t){a.value=t,o(a)},u)}u(c.arg)}function r(t,r){function e(){return new Promise(function(e,i){n(t,r,e,i)})}return i=i?i.then(e,e):e()}"object"==typeof process&&process.domain&&(n=process.domain.bind(n));var i;this._invoke=r}function s(t,n,r){var i=_;return function(o,u){if(i===O)throw new Error("Generator is already running");if(i===F){if("throw"===o)throw u;return d()}for(;;){var c=r.delegate;if(c){if("return"===o||"throw"===o&&c.iterator[o]===y){r.delegate=null;var f=c.iterator["return"];if(f){var a=e(f,c.iterator,u);if("throw"===a.type){o="throw",u=a.arg;continue}}if("return"===o)continue}var a=e(c.iterator[o],c.iterator,u);if("throw"===a.type){r.delegate=null,o="throw",u=a.arg;continue}o="next",u=y;var s=a.arg;if(!s.done)return i=E,s;r[c.resultName]=s.value,r.next=c.nextLoc,r.delegate=null}if("next"===o)r.sent=r._sent=u;else if("throw"===o){if(i===_)throw i=F,u;r.dispatchException(u)&&(o="next",u=y)}else"return"===o&&r.abrupt("return",u);i=O;var a=e(t,n,r);if("normal"===a.type){i=r.done?F:E;var s={value:a.arg,done:r.done};if(a.arg!==P)return s;r.delegate&&"next"===o&&(u=y)}else"throw"===a.type&&(i=F,o="throw",u=a.arg)}}}function l(t){var n={tryLoc:t[0]};1 in t&&(n.catchLoc=t[1]),2 in t&&(n.finallyLoc=t[2],n.afterLoc=t[3]),this.tryEntries.push(n)}function h(t){var n=t.completion||{};n.type="normal",delete n.arg,t.completion=n}function v(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(l,this),this.reset(!0)}function p(t){if(t){var n=t[w];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,e=function i(){for(;++r=0;--e){var i=this.tryEntries[e],o=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var u=g.call(i,"catchLoc"),c=g.call(i,"finallyLoc");if(u&&c){if(this.prev=0;--r){var e=this.tryEntries[r];if(e.tryLoc<=this.prev&&g.call(e,"finallyLoc")&&this.prev=0;--n){var r=this.tryEntries[n];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),h(r),P}},"catch":function(t){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc===t){var e=r.completion;if("throw"===e.type){var i=e.arg;h(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:p(t),resultName:n,nextLoc:r},P}}}("object"==typeof t?t:"object"==typeof window?window:"object"==typeof self?self:this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[1]); +!function t(n,r,e){function i(u,c){if(!r[u]){if(!n[u]){var f="function"==typeof require&&require;if(!c&&f)return f(u,!0);if(o)return o(u,!0);var a=new Error("Cannot find module '"+u+"'");throw a.code="MODULE_NOT_FOUND",a}var s=r[u]={exports:{}};n[u][0].call(s.exports,function(t){var r=n[u][1][t];return i(r?r:t)},s,s.exports,t,n,r,e)}return r[u].exports}for(var o="function"==typeof require&&require,u=0;u2?arguments[2]:void 0,s=Math.min((void 0===a?u:i(a,u))-f,u-c),l=1;for(f0;)f in r?r[c]=r[f]:delete r[c],c+=l,f+=l;return r}},{114:114,118:118,119:119}],9:[function(t,n,r){"use strict";var e=t(119),i=t(114),o=t(118);n.exports=function(t){for(var n=e(this),r=o(n.length),u=arguments.length,c=i(u>1?arguments[1]:void 0,r),f=u>2?arguments[2]:void 0,a=void 0===f?r:i(f,r);a>c;)n[c++]=t;return n}},{114:114,118:118,119:119}],10:[function(t,n,r){var e=t(39);n.exports=function(t,n){var r=[];return e(t,!1,r.push,r,n),r}},{39:39}],11:[function(t,n,r){var e=t(117),i=t(118),o=t(114);n.exports=function(t){return function(n,r,u){var c,f=e(n),a=i(f.length),s=o(u,a);if(t&&r!=r){for(;a>s;)if(c=f[s++],c!=c)return!0}else for(;a>s;s++)if((t||s in f)&&f[s]===r)return t||s||0;return!t&&-1}}},{114:114,117:117,118:118}],12:[function(t,n,r){var e=t(25),i=t(47),o=t(119),u=t(118),c=t(15);n.exports=function(t,n){var r=1==t,f=2==t,a=3==t,s=4==t,l=6==t,h=5==t||l,v=n||c;return function(n,c,p){for(var d,g,y=o(n),m=i(y),b=e(c,p,3),w=u(m.length),S=0,x=r?v(n,w):f?v(n,0):void 0;w>S;S++)if((h||S in m)&&(d=m[S],g=b(d,S,y),t))if(r)x[S]=g;else if(g)switch(t){case 3:return!0;case 5:return d;case 6:return S;case 2:x.push(d)}else if(s)return!1;return l?-1:a||s?s:x}}},{118:118,119:119,15:15,25:25,47:47}],13:[function(t,n,r){var e=t(3),i=t(119),o=t(47),u=t(118);n.exports=function(t,n,r,c,f){e(n);var a=i(t),s=o(a),l=u(a.length),h=f?l-1:0,v=f?-1:1;if(r<2)for(;;){if(h in s){c=s[h],h+=v;break}if(h+=v,f?h<0:l<=h)throw TypeError("Reduce of empty array with no initial value")}for(;f?h>=0:l>h;h+=v)h in s&&(c=n(c,s[h],h,a));return c}},{118:118,119:119,3:3,47:47}],14:[function(t,n,r){var e=t(51),i=t(49),o=t(128)("species");n.exports=function(t){var n;return i(t)&&(n=t.constructor,"function"!=typeof n||n!==Array&&!i(n.prototype)||(n=void 0),e(n)&&(n=n[o],null===n&&(n=void 0))),void 0===n?Array:n}},{128:128,49:49,51:51}],15:[function(t,n,r){var e=t(14);n.exports=function(t,n){return new(e(t))(n)}},{14:14}],16:[function(t,n,r){"use strict";var e=t(3),i=t(51),o=t(46),u=[].slice,c={},f=function(t,n,r){if(!(n in c)){for(var e=[],i=0;i1?arguments[1]:void 0,3);r=r?r.n:this._f;)for(e(r.v,r.k,this);r&&r.r;)r=r.p},has:function(t){return!!g(p(this,n),t)}}),h&&e(s.prototype,"size",{get:function(){return p(this,n)[d]}}),s},def:function(t,n,r){var e,i,o=g(t,n);return o?o.v=r:(t._l=o={i:i=v(n,!0),k:n,v:r,p:e=t._l,n:void 0,r:!1},t._f||(t._f=o),e&&(e.n=o),t[d]++,"F"!==i&&(t._i[i]=o)),t},getEntry:g,setStrong:function(t,n,r){a(t,n,function(t,r){this._t=p(t,n),this._k=r,this._l=void 0},function(){for(var t=this,n=t._k,r=t._l;r&&r.r;)r=r.p;return t._t&&(t._l=r=r?r.n:t._t._f)?"keys"==n?s(0,r.k):"values"==n?s(0,r.v):s(0,[r.k,r.v]):(t._t=void 0,s(1))},r?"entries":"values",!r,!0),l(n)}}},{100:100,125:125,25:25,29:29,39:39,55:55,57:57,6:6,66:66,71:71,72:72,93:93}],20:[function(t,n,r){var e=t(17),i=t(10);n.exports=function(t){return function(){if(e(this)!=t)throw TypeError(t+"#toJSON isn't generic");return i(this)}}},{10:10,17:17}],21:[function(t,n,r){"use strict";var e=t(93),i=t(66).getWeak,o=t(7),u=t(51),c=t(6),f=t(39),a=t(12),s=t(41),l=t(125),h=a(5),v=a(6),p=0,d=function(t){return t._l||(t._l=new g)},g=function(){this.a=[]},y=function(t,n){return h(t.a,function(t){return t[0]===n})};g.prototype={get:function(t){var n=y(this,t);if(n)return n[1]},has:function(t){return!!y(this,t)},set:function(t,n){var r=y(this,t);r?r[1]=n:this.a.push([t,n])},"delete":function(t){var n=v(this.a,function(n){return n[0]===t});return~n&&this.a.splice(n,1),!!~n}},n.exports={getConstructor:function(t,n,r,o){var a=t(function(t,e){c(t,a,n,"_i"),t._t=n,t._i=p++,t._l=void 0,void 0!=e&&f(e,r,t[o],t)});return e(a.prototype,{"delete":function(t){if(!u(t))return!1;var r=i(t);return r===!0?d(l(this,n))["delete"](t):r&&s(r,this._i)&&delete r[this._i]},has:function(t){if(!u(t))return!1;var r=i(t);return r===!0?d(l(this,n)).has(t):r&&s(r,this._i)}}),a},def:function(t,n,r){var e=i(o(n),!0);return e===!0?d(t).set(n,r):e[t._i]=r,t},ufstore:d}},{12:12,125:125,39:39,41:41,51:51,6:6,66:66,7:7,93:93}],22:[function(t,n,r){"use strict";var e=t(40),i=t(33),o=t(94),u=t(93),c=t(66),f=t(39),a=t(6),s=t(51),l=t(35),h=t(56),v=t(101),p=t(45);n.exports=function(t,n,r,d,g,y){var m=e[t],b=m,w=g?"set":"add",S=b&&b.prototype,x={},_=function(t){var n=S[t];o(S,t,"delete"==t?function(t){return!(y&&!s(t))&&n.call(this,0===t?0:t)}:"has"==t?function(t){return!(y&&!s(t))&&n.call(this,0===t?0:t)}:"get"==t?function(t){return y&&!s(t)?void 0:n.call(this,0===t?0:t)}:"add"==t?function(t){return n.call(this,0===t?0:t),this}:function(t,r){return n.call(this,0===t?0:t,r),this})};if("function"==typeof b&&(y||S.forEach&&!l(function(){(new b).entries().next()}))){var E=new b,O=E[w](y?{}:-0,1)!=E,M=l(function(){E.has(1)}),P=h(function(t){new b(t)}),F=!y&&l(function(){for(var t=new b,n=5;n--;)t[w](n,n);return!t.has(-0)});P||(b=n(function(n,r){a(n,b,t);var e=p(new m,n,b);return void 0!=r&&f(r,g,e[w],e),e}),b.prototype=S,S.constructor=b),(M||F)&&(_("delete"),_("has"),g&&_("get")),(F||O)&&_(w),y&&S.clear&&delete S.clear}else b=d.getConstructor(n,t,g,w),u(b.prototype,r),c.NEED=!0;return v(b,t),x[t]=b,i(i.G+i.W+i.F*(b!=m),x),y||d.setStrong(b,t,g),b}},{101:101,33:33,35:35,39:39,40:40,45:45,51:51,56:56,6:6,66:66,93:93,94:94}],23:[function(t,n,r){var e=n.exports={version:"2.5.0"};"number"==typeof __e&&(__e=e)},{}],24:[function(t,n,r){"use strict";var e=t(72),i=t(92);n.exports=function(t,n,r){n in t?e.f(t,n,i(0,r)):t[n]=r}},{72:72,92:92}],25:[function(t,n,r){var e=t(3);n.exports=function(t,n,r){if(e(t),void 0===n)return t;switch(r){case 1:return function(r){return t.call(n,r)};case 2:return function(r,e){return t.call(n,r,e)};case 3:return function(r,e,i){return t.call(n,r,e,i)}}return function(){return t.apply(n,arguments)}}},{3:3}],26:[function(t,n,r){"use strict";var e=t(35),i=Date.prototype.getTime,o=Date.prototype.toISOString,u=function(t){return t>9?t:"0"+t};n.exports=e(function(){return"0385-07-25T07:06:39.999Z"!=o.call(new Date(-5e13-1))})||!e(function(){o.call(new Date(NaN))})?function(){if(!isFinite(i.call(this)))throw RangeError("Invalid time value");var t=this,n=t.getUTCFullYear(),r=t.getUTCMilliseconds(),e=n<0?"-":n>9999?"+":"";return e+("00000"+Math.abs(n)).slice(e?-6:-4)+"-"+u(t.getUTCMonth()+1)+"-"+u(t.getUTCDate())+"T"+u(t.getUTCHours())+":"+u(t.getUTCMinutes())+":"+u(t.getUTCSeconds())+"."+(r>99?r:"0"+u(r))+"Z"}:o},{35:35}],27:[function(t,n,r){"use strict";var e=t(7),i=t(120),o="number";n.exports=function(t){if("string"!==t&&t!==o&&"default"!==t)throw TypeError("Incorrect hint");return i(e(this),t!=o)}},{120:120,7:7}],28:[function(t,n,r){n.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},{}],29:[function(t,n,r){n.exports=!t(35)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},{35:35}],30:[function(t,n,r){var e=t(51),i=t(40).document,o=e(i)&&e(i.createElement);n.exports=function(t){return o?i.createElement(t):{}}},{40:40,51:51}],31:[function(t,n,r){n.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},{}],32:[function(t,n,r){var e=t(81),i=t(78),o=t(82);n.exports=function(t){var n=e(t),r=i.f;if(r)for(var u,c=r(t),f=o.f,a=0;c.length>a;)f.call(t,u=c[a++])&&n.push(u);return n}},{78:78,81:81,82:82}],33:[function(t,n,r){var e=t(40),i=t(23),o=t(42),u=t(94),c=t(25),f="prototype",a=function(t,n,r){var s,l,h,v,p=t&a.F,d=t&a.G,g=t&a.S,y=t&a.P,m=t&a.B,b=d?e:g?e[n]||(e[n]={}):(e[n]||{})[f],w=d?i:i[n]||(i[n]={}),S=w[f]||(w[f]={});d&&(r=n);for(s in r)l=!p&&b&&void 0!==b[s],h=(l?b:r)[s],v=m&&l?c(h,e):y&&"function"==typeof h?c(Function.call,h):h,b&&u(b,s,h,t&a.U),w[s]!=h&&o(w,s,v),y&&S[s]!=h&&(S[s]=h)};e.core=i,a.F=1,a.G=2,a.S=4,a.P=8,a.B=16,a.W=32,a.U=64,a.R=128,n.exports=a},{23:23,25:25,40:40,42:42,94:94}],34:[function(t,n,r){var e=t(128)("match");n.exports=function(t){var n=/./;try{"/./"[t](n)}catch(r){try{return n[e]=!1,!"/./"[t](n)}catch(i){}}return!0}},{128:128}],35:[function(t,n,r){n.exports=function(t){try{return!!t()}catch(n){return!0}}},{}],36:[function(t,n,r){"use strict";var e=t(42),i=t(94),o=t(35),u=t(28),c=t(128);n.exports=function(t,n,r){var f=c(t),a=r(u,f,""[t]),s=a[0],l=a[1];o(function(){var n={};return n[f]=function(){return 7},7!=""[t](n)})&&(i(String.prototype,t,s),e(RegExp.prototype,f,2==n?function(t,n){return l.call(t,this,n)}:function(t){return l.call(t,this)}))}},{128:128,28:28,35:35,42:42,94:94}],37:[function(t,n,r){"use strict";var e=t(7);n.exports=function(){var t=e(this),n="";return t.global&&(n+="g"),t.ignoreCase&&(n+="i"),t.multiline&&(n+="m"),t.unicode&&(n+="u"),t.sticky&&(n+="y"),n}},{7:7}],38:[function(t,n,r){"use strict";function e(t,n,r,a,s,l,h,v){for(var p,d,g=s,y=0,m=!!h&&c(h,v,3);y0)g=e(t,n,p,u(p.length),g,l-1)-1;else{if(g>=9007199254740991)throw TypeError();t[g]=p}g++}y++}return g}var i=t(49),o=t(51),u=t(118),c=t(25),f=t(128)("isConcatSpreadable");n.exports=e},{118:118,128:128,25:25,49:49,51:51}],39:[function(t,n,r){var e=t(25),i=t(53),o=t(48),u=t(7),c=t(118),f=t(129),a={},s={},r=n.exports=function(t,n,r,l,h){var v,p,d,g,y=h?function(){return t}:f(t),m=e(r,l,n?2:1),b=0;if("function"!=typeof y)throw TypeError(t+" is not iterable!");if(o(y)){for(v=c(t.length);v>b;b++)if(g=n?m(u(p=t[b])[0],p[1]):m(t[b]),g===a||g===s)return g}else for(d=y.call(t);!(p=d.next()).done;)if(g=i(d,m,p.value,n),g===a||g===s)return g};r.BREAK=a,r.RETURN=s},{118:118,129:129,25:25,48:48,53:53,7:7}],40:[function(t,n,r){var e=n.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},{}],41:[function(t,n,r){var e={}.hasOwnProperty;n.exports=function(t,n){return e.call(t,n)}},{}],42:[function(t,n,r){var e=t(72),i=t(92);n.exports=t(29)?function(t,n,r){return e.f(t,n,i(1,r))}:function(t,n,r){return t[n]=r,t}},{29:29,72:72,92:92}],43:[function(t,n,r){var e=t(40).document;n.exports=e&&e.documentElement},{40:40}],44:[function(t,n,r){n.exports=!t(29)&&!t(35)(function(){return 7!=Object.defineProperty(t(30)("div"),"a",{get:function(){return 7}}).a})},{29:29,30:30,35:35}],45:[function(t,n,r){var e=t(51),i=t(99).set;n.exports=function(t,n,r){var o,u=n.constructor;return u!==r&&"function"==typeof u&&(o=u.prototype)!==r.prototype&&e(o)&&i&&i(t,o),t}},{51:51,99:99}],46:[function(t,n,r){n.exports=function(t,n,r){var e=void 0===r;switch(n.length){case 0:return e?t():t.call(r);case 1:return e?t(n[0]):t.call(r,n[0]);case 2:return e?t(n[0],n[1]):t.call(r,n[0],n[1]);case 3:return e?t(n[0],n[1],n[2]):t.call(r,n[0],n[1],n[2]);case 4:return e?t(n[0],n[1],n[2],n[3]):t.call(r,n[0],n[1],n[2],n[3])}return t.apply(r,n)}},{}],47:[function(t,n,r){var e=t(18);n.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==e(t)?t.split(""):Object(t)}},{18:18}],48:[function(t,n,r){var e=t(58),i=t(128)("iterator"),o=Array.prototype;n.exports=function(t){return void 0!==t&&(e.Array===t||o[i]===t)}},{128:128,58:58}],49:[function(t,n,r){var e=t(18);n.exports=Array.isArray||function(t){return"Array"==e(t)}},{18:18}],50:[function(t,n,r){var e=t(51),i=Math.floor;n.exports=function(t){return!e(t)&&isFinite(t)&&i(t)===t}},{51:51}],51:[function(t,n,r){n.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},{}],52:[function(t,n,r){var e=t(51),i=t(18),o=t(128)("match");n.exports=function(t){var n;return e(t)&&(void 0!==(n=t[o])?!!n:"RegExp"==i(t))}},{128:128,18:18,51:51}],53:[function(t,n,r){var e=t(7);n.exports=function(t,n,r,i){try{return i?n(e(r)[0],r[1]):n(r)}catch(o){var u=t["return"];throw void 0!==u&&e(u.call(t)),o}}},{7:7}],54:[function(t,n,r){"use strict";var e=t(71),i=t(92),o=t(101),u={};t(42)(u,t(128)("iterator"),function(){return this}),n.exports=function(t,n,r){t.prototype=e(u,{next:i(1,r)}),o(t,n+" Iterator")}},{101:101,128:128,42:42,71:71,92:92}],55:[function(t,n,r){"use strict";var e=t(60),i=t(33),o=t(94),u=t(42),c=t(41),f=t(58),a=t(54),s=t(101),l=t(79),h=t(128)("iterator"),v=!([].keys&&"next"in[].keys()),p="@@iterator",d="keys",g="values",y=function(){return this};n.exports=function(t,n,r,m,b,w,S){a(r,n,m);var x,_,E,O=function(t){if(!v&&t in A)return A[t];switch(t){case d:return function(){return new r(this,t)};case g:return function(){return new r(this,t)}}return function(){return new r(this,t)}},M=n+" Iterator",P=b==g,F=!1,A=t.prototype,j=A[h]||A[p]||b&&A[b],N=j||O(b),I=b?P?O("entries"):N:void 0,T="Array"==n?A.entries||j:j;if(T&&(E=l(T.call(new t)),E!==Object.prototype&&E.next&&(s(E,M,!0),e||c(E,h)||u(E,h,y))),P&&j&&j.name!==g&&(F=!0,N=function(){return j.call(this)}),e&&!S||!v&&!F&&A[h]||u(A,h,N),f[n]=N,f[M]=y,b)if(x={values:P?N:O(g),keys:w?N:O(d),entries:I},S)for(_ in x)_ in A||o(A,_,x[_]);else i(i.P+i.F*(v||F),n,x);return x}},{101:101,128:128,33:33,41:41,42:42,54:54,58:58,60:60,79:79,94:94}],56:[function(t,n,r){var e=t(128)("iterator"),i=!1;try{var o=[7][e]();o["return"]=function(){i=!0},Array.from(o,function(){throw 2})}catch(u){}n.exports=function(t,n){if(!n&&!i)return!1;var r=!1;try{var o=[7],u=o[e]();u.next=function(){return{done:r=!0}},o[e]=function(){return u},t(o)}catch(c){}return r}},{128:128}],57:[function(t,n,r){n.exports=function(t,n){return{value:n,done:!!t}}},{}],58:[function(t,n,r){n.exports={}},{}],59:[function(t,n,r){var e=t(81),i=t(117);n.exports=function(t,n){for(var r,o=i(t),u=e(o),c=u.length,f=0;c>f;)if(o[r=u[f++]]===n)return r}},{117:117,81:81}],60:[function(t,n,r){n.exports=!1},{}],61:[function(t,n,r){var e=Math.expm1;n.exports=!e||e(10)>22025.465794806718||e(10)<22025.465794806718||e(-2e-17)!=-2e-17?function(t){return 0==(t=+t)?t:t>-1e-6&&t<1e-6?t+t*t/2:Math.exp(t)-1}:e},{}],62:[function(t,n,r){var e=t(65),i=Math.pow,o=i(2,-52),u=i(2,-23),c=i(2,127)*(2-u),f=i(2,-126),a=function(t){return t+1/o-1/o};n.exports=Math.fround||function(t){var n,r,i=Math.abs(t),s=e(t);return ic||r!=r?s*(1/0):s*r)}},{65:65}],63:[function(t,n,r){n.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:Math.log(1+t)}},{}],64:[function(t,n,r){n.exports=Math.scale||function(t,n,r,e,i){return 0===arguments.length||t!=t||n!=n||r!=r||e!=e||i!=i?NaN:t===1/0||t===-(1/0)?t:(t-n)*(i-e)/(r-n)+e}},{}],65:[function(t,n,r){n.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},{}],66:[function(t,n,r){var e=t(124)("meta"),i=t(51),o=t(41),u=t(72).f,c=0,f=Object.isExtensible||function(){return!0},a=!t(35)(function(){return f(Object.preventExtensions({}))}),s=function(t){u(t,e,{value:{i:"O"+ ++c,w:{}}})},l=function(t,n){if(!i(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!o(t,e)){if(!f(t))return"F";if(!n)return"E";s(t)}return t[e].i},h=function(t,n){if(!o(t,e)){if(!f(t))return!0;if(!n)return!1;s(t)}return t[e].w},v=function(t){return a&&p.NEED&&f(t)&&!o(t,e)&&s(t),t},p=n.exports={KEY:e,NEED:!1,fastKey:l,getWeak:h,onFreeze:v}},{124:124,35:35,41:41,51:51,72:72}],67:[function(t,n,r){var e=t(160),i=t(33),o=t(103)("metadata"),u=o.store||(o.store=new(t(266))),c=function(t,n,r){var i=u.get(t);if(!i){if(!r)return;u.set(t,i=new e)}var o=i.get(n);if(!o){if(!r)return;i.set(n,o=new e)}return o},f=function(t,n,r){var e=c(n,r,!1);return void 0!==e&&e.has(t)},a=function(t,n,r){var e=c(n,r,!1);return void 0===e?void 0:e.get(t)},s=function(t,n,r,e){c(r,e,!0).set(t,n)},l=function(t,n){var r=c(t,n,!1),e=[];return r&&r.forEach(function(t,n){e.push(n)}),e},h=function(t){return void 0===t||"symbol"==typeof t?t:String(t)},v=function(t){i(i.S,"Reflect",t)};n.exports={store:u,map:c,has:f,get:a,set:s,keys:l,key:h,exp:v}},{103:103,160:160,266:266,33:33}],68:[function(t,n,r){var e=t(40),i=t(113).set,o=e.MutationObserver||e.WebKitMutationObserver,u=e.process,c=e.Promise,f="process"==t(18)(u);n.exports=function(){var t,n,r,a=function(){var e,i;for(f&&(e=u.domain)&&e.exit();t;){i=t.fn,t=t.next;try{i()}catch(o){throw t?r():n=void 0,o}}n=void 0,e&&e.enter()};if(f)r=function(){u.nextTick(a)};else if(o){var s=!0,l=document.createTextNode("");new o(a).observe(l,{characterData:!0}),r=function(){l.data=s=!s}}else if(c&&c.resolve){var h=c.resolve();r=function(){h.then(a)}}else r=function(){i.call(e,a)};return function(e){var i={fn:e,next:void 0};n&&(n.next=i),t||(t=i,r()),n=i}}},{113:113,18:18,40:40}],69:[function(t,n,r){"use strict";function e(t){var n,r;this.promise=new t(function(t,e){if(void 0!==n||void 0!==r)throw TypeError("Bad Promise constructor");n=t,r=e}),this.resolve=i(n),this.reject=i(r)}var i=t(3);n.exports.f=function(t){return new e(t)}},{3:3}],70:[function(t,n,r){"use strict";var e=t(81),i=t(78),o=t(82),u=t(119),c=t(47),f=Object.assign;n.exports=!f||t(35)(function(){var t={},n={},r=Symbol(),e="abcdefghijklmnopqrst";return t[r]=7,e.split("").forEach(function(t){n[t]=t}),7!=f({},t)[r]||Object.keys(f({},n)).join("")!=e})?function(t,n){for(var r=u(t),f=arguments.length,a=1,s=i.f,l=o.f;f>a;)for(var h,v=c(arguments[a++]),p=s?e(v).concat(s(v)):e(v),d=p.length,g=0;d>g;)l.call(v,h=p[g++])&&(r[h]=v[h]);return r}:f},{119:119,35:35,47:47,78:78,81:81,82:82}],71:[function(t,n,r){var e=t(7),i=t(73),o=t(31),u=t(102)("IE_PROTO"),c=function(){},f="prototype",a=function(){var n,r=t(30)("iframe"),e=o.length,i="<",u=">";for(r.style.display="none",t(43).appendChild(r),r.src="javascript:",n=r.contentWindow.document,n.open(),n.write(i+"script"+u+"document.F=Object"+i+"/script"+u),n.close(),a=n.F;e--;)delete a[f][o[e]];return a()};n.exports=Object.create||function(t,n){var r;return null!==t?(c[f]=e(t),r=new c,c[f]=null,r[u]=t):r=a(),void 0===n?r:i(r,n)}},{102:102,30:30,31:31,43:43,7:7,73:73}],72:[function(t,n,r){var e=t(7),i=t(44),o=t(120),u=Object.defineProperty;r.f=t(29)?Object.defineProperty:function(t,n,r){if(e(t),n=o(n,!0),e(r),i)try{return u(t,n,r)}catch(c){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(t[n]=r.value),t}},{120:120,29:29,44:44,7:7}],73:[function(t,n,r){var e=t(72),i=t(7),o=t(81);n.exports=t(29)?Object.defineProperties:function(t,n){i(t);for(var r,u=o(n),c=u.length,f=0;c>f;)e.f(t,r=u[f++],n[r]);return t}},{29:29,7:7,72:72,81:81}],74:[function(t,n,r){"use strict";n.exports=t(60)||!t(35)(function(){var n=Math.random();__defineSetter__.call(null,n,function(){}),delete t(40)[n]})},{35:35,40:40,60:60}],75:[function(t,n,r){var e=t(82),i=t(92),o=t(117),u=t(120),c=t(41),f=t(44),a=Object.getOwnPropertyDescriptor;r.f=t(29)?a:function(t,n){if(t=o(t),n=u(n,!0),f)try{return a(t,n)}catch(r){}if(c(t,n))return i(!e.f.call(t,n),t[n])}},{117:117,120:120,29:29,41:41,44:44,82:82,92:92}],76:[function(t,n,r){var e=t(117),i=t(77).f,o={}.toString,u="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],c=function(t){try{return i(t)}catch(n){return u.slice()}};n.exports.f=function(t){return u&&"[object Window]"==o.call(t)?c(t):i(e(t))}},{117:117,77:77}],77:[function(t,n,r){var e=t(80),i=t(31).concat("length","prototype");r.f=Object.getOwnPropertyNames||function(t){return e(t,i)}},{31:31,80:80}],78:[function(t,n,r){r.f=Object.getOwnPropertySymbols},{}],79:[function(t,n,r){var e=t(41),i=t(119),o=t(102)("IE_PROTO"),u=Object.prototype;n.exports=Object.getPrototypeOf||function(t){return t=i(t),e(t,o)?t[o]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},{102:102,119:119,41:41}],80:[function(t,n,r){var e=t(41),i=t(117),o=t(11)(!1),u=t(102)("IE_PROTO");n.exports=function(t,n){var r,c=i(t),f=0,a=[];for(r in c)r!=u&&e(c,r)&&a.push(r);for(;n.length>f;)e(c,r=n[f++])&&(~o(a,r)||a.push(r));return a}},{102:102,11:11,117:117,41:41}],81:[function(t,n,r){var e=t(80),i=t(31);n.exports=Object.keys||function(t){return e(t,i)}},{31:31,80:80}],82:[function(t,n,r){r.f={}.propertyIsEnumerable},{}],83:[function(t,n,r){var e=t(33),i=t(23),o=t(35);n.exports=function(t,n){var r=(i.Object||{})[t]||Object[t],u={};u[t]=n(r),e(e.S+e.F*o(function(){r(1)}),"Object",u)}},{23:23,33:33,35:35}],84:[function(t,n,r){var e=t(81),i=t(117),o=t(82).f;n.exports=function(t){return function(n){for(var r,u=i(n),c=e(u),f=c.length,a=0,s=[];f>a;)o.call(u,r=c[a++])&&s.push(t?[r,u[r]]:u[r]);return s}}},{117:117,81:81,82:82}],85:[function(t,n,r){var e=t(77),i=t(78),o=t(7),u=t(40).Reflect;n.exports=u&&u.ownKeys||function(t){var n=e.f(o(t)),r=i.f;return r?n.concat(r(t)):n}},{40:40,7:7,77:77,78:78}],86:[function(t,n,r){var e=t(40).parseFloat,i=t(111).trim;n.exports=1/e(t(112)+"-0")!==-(1/0)?function(t){var n=i(String(t),3),r=e(n);return 0===r&&"-"==n.charAt(0)?-0:r}:e},{111:111,112:112,40:40}],87:[function(t,n,r){var e=t(40).parseInt,i=t(111).trim,o=t(112),u=/^[-+]?0[xX]/;n.exports=8!==e(o+"08")||22!==e(o+"0x16")?function(t,n){var r=i(String(t),3);return e(r,n>>>0||(u.test(r)?16:10))}:e},{111:111,112:112,40:40}],88:[function(t,n,r){"use strict";var e=t(89),i=t(46),o=t(3);n.exports=function(){for(var t=o(this),n=arguments.length,r=Array(n),u=0,c=e._,f=!1;n>u;)(r[u]=arguments[u++])===c&&(f=!0);return function(){var e,o=this,u=arguments.length,a=0,s=0;if(!f&&!u)return i(t,r,o);if(e=r.slice(),f)for(;n>a;a++)e[a]===c&&(e[a]=arguments[s++]);for(;u>s;)e.push(arguments[s++]);return i(t,e,o)}}},{3:3,46:46,89:89}],89:[function(t,n,r){n.exports=t(40)},{40:40}],90:[function(t,n,r){n.exports=function(t){try{return{e:!1,v:t()}}catch(n){return{e:!0,v:n}}}},{}],91:[function(t,n,r){var e=t(69);n.exports=function(t,n){var r=e.f(t),i=r.resolve;return i(n),r.promise}},{69:69}],92:[function(t,n,r){n.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},{}],93:[function(t,n,r){var e=t(94);n.exports=function(t,n,r){for(var i in n)e(t,i,n[i],r);return t}},{94:94}],94:[function(t,n,r){var e=t(40),i=t(42),o=t(41),u=t(124)("src"),c="toString",f=Function[c],a=(""+f).split(c);t(23).inspectSource=function(t){return f.call(t)},(n.exports=function(t,n,r,c){var f="function"==typeof r;f&&(o(r,"name")||i(r,"name",n)),t[n]!==r&&(f&&(o(r,u)||i(r,u,t[n]?""+t[n]:a.join(String(n)))),t===e?t[n]=r:c?t[n]?t[n]=r:i(t,n,r):(delete t[n],i(t,n,r)))})(Function.prototype,c,function(){return"function"==typeof this&&this[u]||f.call(this)})},{124:124,23:23,40:40,41:41,42:42}],95:[function(t,n,r){n.exports=function(t,n){var r=n===Object(n)?function(t){return n[t]}:n;return function(n){return String(n).replace(t,r)}}},{}],96:[function(t,n,r){n.exports=Object.is||function(t,n){return t===n?0!==t||1/t===1/n:t!=t&&n!=n}},{}],97:[function(t,n,r){"use strict";var e=t(33),i=t(3),o=t(25),u=t(39);n.exports=function(t){e(e.S,t,{from:function(t){var n,r,e,c,f=arguments[1];return i(this),n=void 0!==f,n&&i(f),void 0==t?new this:(r=[],n?(e=0,c=o(f,arguments[2],2),u(t,!1,function(t){r.push(c(t,e++))})):u(t,!1,r.push,r),new this(r))}})}},{25:25,3:3,33:33,39:39}],98:[function(t,n,r){"use strict";var e=t(33);n.exports=function(t){e(e.S,t,{of:function(){for(var t=arguments.length,n=Array(t);t--;)n[t]=arguments[t];return new this(n)}})}},{33:33}],99:[function(t,n,r){var e=t(51),i=t(7),o=function(t,n){if(i(t),!e(n)&&null!==n)throw TypeError(n+": can't set as prototype!")};n.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(n,r,e){try{e=t(25)(Function.call,t(75).f(Object.prototype,"__proto__").set,2),e(n,[]),r=!(n instanceof Array)}catch(i){r=!0}return function(t,n){return o(t,n),r?t.__proto__=n:e(t,n),t}}({},!1):void 0),check:o}},{25:25,51:51,7:7,75:75}],100:[function(t,n,r){"use strict";var e=t(40),i=t(72),o=t(29),u=t(128)("species");n.exports=function(t){var n=e[t];o&&n&&!n[u]&&i.f(n,u,{configurable:!0,get:function(){return this}})}},{128:128,29:29,40:40,72:72}],101:[function(t,n,r){var e=t(72).f,i=t(41),o=t(128)("toStringTag");n.exports=function(t,n,r){t&&!i(t=r?t:t.prototype,o)&&e(t,o,{configurable:!0,value:n})}},{128:128,41:41,72:72}],102:[function(t,n,r){var e=t(103)("keys"),i=t(124);n.exports=function(t){return e[t]||(e[t]=i(t))}},{103:103,124:124}],103:[function(t,n,r){var e=t(40),i="__core-js_shared__",o=e[i]||(e[i]={});n.exports=function(t){return o[t]||(o[t]={})}},{40:40}],104:[function(t,n,r){var e=t(7),i=t(3),o=t(128)("species");n.exports=function(t,n){var r,u=e(t).constructor;return void 0===u||void 0==(r=e(u)[o])?n:i(r)}},{128:128,3:3,7:7}],105:[function(t,n,r){"use strict";var e=t(35);n.exports=function(t,n){return!!t&&e(function(){n?t.call(null,function(){},1):t.call(null)})}},{35:35}],106:[function(t,n,r){var e=t(116),i=t(28);n.exports=function(t){return function(n,r){var o,u,c=String(i(n)),f=e(r),a=c.length;return f<0||f>=a?t?"":void 0:(o=c.charCodeAt(f),o<55296||o>56319||f+1===a||(u=c.charCodeAt(f+1))<56320||u>57343?t?c.charAt(f):o:t?c.slice(f,f+2):(o-55296<<10)+(u-56320)+65536)}}},{116:116,28:28}],107:[function(t,n,r){var e=t(52),i=t(28);n.exports=function(t,n,r){if(e(n))throw TypeError("String#"+r+" doesn't accept regex!");return String(i(t))}},{28:28,52:52}],108:[function(t,n,r){var e=t(33),i=t(35),o=t(28),u=/"/g,c=function(t,n,r,e){var i=String(o(t)),c="<"+n;return""!==r&&(c+=" "+r+'="'+String(e).replace(u,""")+'"'),c+">"+i+""};n.exports=function(t,n){var r={};r[t]=n(c),e(e.P+e.F*i(function(){var n=""[t]('"');return n!==n.toLowerCase()||n.split('"').length>3}),"String",r)}},{28:28,33:33,35:35}],109:[function(t,n,r){var e=t(118),i=t(110),o=t(28);n.exports=function(t,n,r,u){var c=String(o(t)),f=c.length,a=void 0===r?" ":String(r),s=e(n);if(s<=f||""==a)return c;var l=s-f,h=i.call(a,Math.ceil(l/a.length));return h.length>l&&(h=h.slice(0,l)),u?h+c:c+h}},{110:110,118:118,28:28}],110:[function(t,n,r){"use strict";var e=t(116),i=t(28);n.exports=function(t){var n=String(i(this)),r="",o=e(t);if(o<0||o==1/0)throw RangeError("Count can't be negative");for(;o>0;(o>>>=1)&&(n+=n))1&o&&(r+=n);return r}},{116:116,28:28}],111:[function(t,n,r){var e=t(33),i=t(28),o=t(35),u=t(112),c="["+u+"]",f="​…",a=RegExp("^"+c+c+"*"),s=RegExp(c+c+"*$"),l=function(t,n,r){var i={},c=o(function(){return!!u[t]()||f[t]()!=f}),a=i[t]=c?n(h):u[t];r&&(i[r]=a),e(e.P+e.F*c,"String",i)},h=l.trim=function(t,n){return t=String(i(t)),1&n&&(t=t.replace(a,"")),2&n&&(t=t.replace(s,"")),t};n.exports=l},{112:112,28:28,33:33,35:35}],112:[function(t,n,r){n.exports="\t\n\x0B\f\r   ᠎              \u2028\u2029\ufeff"},{}],113:[function(t,n,r){var e,i,o,u=t(25),c=t(46),f=t(43),a=t(30),s=t(40),l=s.process,h=s.setImmediate,v=s.clearImmediate,p=s.MessageChannel,d=s.Dispatch,g=0,y={},m="onreadystatechange",b=function(){var t=+this;if(y.hasOwnProperty(t)){var n=y[t];delete y[t],n()}},w=function(t){b.call(t.data)};h&&v||(h=function(t){for(var n=[],r=1;arguments.length>r;)n.push(arguments[r++]);return y[++g]=function(){c("function"==typeof t?t:Function(t),n)},e(g),g},v=function(t){delete y[t]},"process"==t(18)(l)?e=function(t){l.nextTick(u(b,t,1))}:d&&d.now?e=function(t){d.now(u(b,t,1))}:p?(i=new p,o=i.port2,i.port1.onmessage=w,e=u(o.postMessage,o,1)):s.addEventListener&&"function"==typeof postMessage&&!s.importScripts?(e=function(t){s.postMessage(t+"","*")},s.addEventListener("message",w,!1)):e=m in a("script")?function(t){f.appendChild(a("script"))[m]=function(){f.removeChild(this),b.call(t)}}:function(t){setTimeout(u(b,t,1),0)}),n.exports={set:h,clear:v}},{18:18,25:25,30:30,40:40,43:43,46:46}],114:[function(t,n,r){var e=t(116),i=Math.max,o=Math.min;n.exports=function(t,n){return t=e(t),t<0?i(t+n,0):o(t,n)}},{116:116}],115:[function(t,n,r){var e=t(116),i=t(118);n.exports=function(t){if(void 0===t)return 0;var n=e(t),r=i(n);if(n!==r)throw RangeError("Wrong length!");return r}},{116:116,118:118}],116:[function(t,n,r){var e=Math.ceil,i=Math.floor;n.exports=function(t){return isNaN(t=+t)?0:(t>0?i:e)(t)}},{}],117:[function(t,n,r){var e=t(47),i=t(28);n.exports=function(t){return e(i(t))}},{28:28,47:47}],118:[function(t,n,r){var e=t(116),i=Math.min;n.exports=function(t){return t>0?i(e(t),9007199254740991):0}},{116:116}],119:[function(t,n,r){var e=t(28);n.exports=function(t){return Object(e(t))}},{28:28}],120:[function(t,n,r){var e=t(51);n.exports=function(t,n){if(!e(t))return t;var r,i;if(n&&"function"==typeof(r=t.toString)&&!e(i=r.call(t)))return i;if("function"==typeof(r=t.valueOf)&&!e(i=r.call(t)))return i;if(!n&&"function"==typeof(r=t.toString)&&!e(i=r.call(t)))return i;throw TypeError("Can't convert object to primitive value")}},{51:51}],121:[function(t,n,r){"use strict";if(t(29)){var e=t(60),i=t(40),o=t(35),u=t(33),c=t(123),f=t(122),a=t(25),s=t(6),l=t(92),h=t(42),v=t(93),p=t(116),d=t(118),g=t(115),y=t(114),m=t(120),b=t(41),w=t(17),S=t(51),x=t(119),_=t(48),E=t(71),O=t(79),M=t(77).f,P=t(129),F=t(124),A=t(128),j=t(12),N=t(11),I=t(104),T=t(141),R=t(58),L=t(56),k=t(100),C=t(9),D=t(8),G=t(72),U=t(75),W=G.f,V=U.f,B=i.RangeError,z=i.TypeError,Y=i.Uint8Array,q="ArrayBuffer",J="Shared"+q,K="BYTES_PER_ELEMENT",H="prototype",X=Array[H],$=f.ArrayBuffer,Z=f.DataView,Q=j(0),tt=j(2),nt=j(3),rt=j(4),et=j(5),it=j(6),ot=N(!0),ut=N(!1),ct=T.values,ft=T.keys,at=T.entries,st=X.lastIndexOf,lt=X.reduce,ht=X.reduceRight,vt=X.join,pt=X.sort,dt=X.slice,gt=X.toString,yt=X.toLocaleString,mt=A("iterator"),bt=A("toStringTag"),wt=F("typed_constructor"),St=F("def_constructor"),xt=c.CONSTR,_t=c.TYPED,Et=c.VIEW,Ot="Wrong length!",Mt=j(1,function(t,n){ +return Nt(I(t,t[St]),n)}),Pt=o(function(){return 1===new Y(new Uint16Array([1]).buffer)[0]}),Ft=!!Y&&!!Y[H].set&&o(function(){new Y(1).set({})}),At=function(t,n){var r=p(t);if(r<0||r%n)throw B("Wrong offset!");return r},jt=function(t){if(S(t)&&_t in t)return t;throw z(t+" is not a typed array!")},Nt=function(t,n){if(!(S(t)&&wt in t))throw z("It is not a typed array constructor!");return new t(n)},It=function(t,n){return Tt(I(t,t[St]),n)},Tt=function(t,n){for(var r=0,e=n.length,i=Nt(t,e);e>r;)i[r]=n[r++];return i},Rt=function(t,n,r){W(t,n,{get:function(){return this._d[r]}})},Lt=function(t){var n,r,e,i,o,u,c=x(t),f=arguments.length,s=f>1?arguments[1]:void 0,l=void 0!==s,h=P(c);if(void 0!=h&&!_(h)){for(u=h.call(c),e=[],n=0;!(o=u.next()).done;n++)e.push(o.value);c=e}for(l&&f>2&&(s=a(s,arguments[2],2)),n=0,r=d(c.length),i=Nt(this,r);r>n;n++)i[n]=l?s(c[n],n):c[n];return i},kt=function(){for(var t=0,n=arguments.length,r=Nt(this,n);n>t;)r[t]=arguments[t++];return r},Ct=!!Y&&o(function(){yt.call(new Y(1))}),Dt=function(){return yt.apply(Ct?dt.call(jt(this)):jt(this),arguments)},Gt={copyWithin:function(t,n){return D.call(jt(this),t,n,arguments.length>2?arguments[2]:void 0)},every:function(t){return rt(jt(this),t,arguments.length>1?arguments[1]:void 0)},fill:function(t){return C.apply(jt(this),arguments)},filter:function(t){return It(this,tt(jt(this),t,arguments.length>1?arguments[1]:void 0))},find:function(t){return et(jt(this),t,arguments.length>1?arguments[1]:void 0)},findIndex:function(t){return it(jt(this),t,arguments.length>1?arguments[1]:void 0)},forEach:function(t){Q(jt(this),t,arguments.length>1?arguments[1]:void 0)},indexOf:function(t){return ut(jt(this),t,arguments.length>1?arguments[1]:void 0)},includes:function(t){return ot(jt(this),t,arguments.length>1?arguments[1]:void 0)},join:function(t){return vt.apply(jt(this),arguments)},lastIndexOf:function(t){return st.apply(jt(this),arguments)},map:function(t){return Mt(jt(this),t,arguments.length>1?arguments[1]:void 0)},reduce:function(t){return lt.apply(jt(this),arguments)},reduceRight:function(t){return ht.apply(jt(this),arguments)},reverse:function(){for(var t,n=this,r=jt(n).length,e=Math.floor(r/2),i=0;i1?arguments[1]:void 0)},sort:function(t){return pt.call(jt(this),t)},subarray:function(t,n){var r=jt(this),e=r.length,i=y(t,e);return new(I(r,r[St]))(r.buffer,r.byteOffset+i*r.BYTES_PER_ELEMENT,d((void 0===n?e:y(n,e))-i))}},Ut=function(t,n){return It(this,dt.call(jt(this),t,n))},Wt=function(t){jt(this);var n=At(arguments[1],1),r=this.length,e=x(t),i=d(e.length),o=0;if(i+n>r)throw B(Ot);for(;o255?255:255&e),i.v[v](r*n+i.o,e,Pt)},A=function(t,n){W(t,n,{get:function(){return P(this,n)},set:function(t){return F(this,n,t)},enumerable:!0})};b?(p=r(function(t,r,e,i){s(t,p,a,"_d");var o,u,c,f,l=0,v=0;if(S(r)){if(!(r instanceof $||(f=w(r))==q||f==J))return _t in r?Tt(p,r):Lt.call(p,r);o=r,v=At(e,n);var y=r.byteLength;if(void 0===i){if(y%n)throw B(Ot);if(u=y-v,u<0)throw B(Ot)}else if(u=d(i)*n,u+v>y)throw B(Ot);c=u/n}else c=g(r),u=c*n,o=new $(u);for(h(t,"_d",{b:o,o:v,l:u,e:c,v:new Z(o)});l>1,s=23===n?W(2,-24)-W(2,-77):0,l=0,h=t<0||0===t&&1/t<0?1:0;for(t=U(t),t!=t||t===D?(i=t!=t?1:0,e=f):(e=V(B(t)/z),t*(o=W(2,-e))<1&&(e--,o*=2),t+=e+a>=1?s/o:s*W(2,1-a),t*o>=2&&(e++,o/=2),e+a>=f?(i=0,e=f):e+a>=1?(i=(t*o-1)*W(2,n),e+=a):(i=t*W(2,a-1)*W(2,n),e=0));n>=8;u[l++]=255&i,i/=256,n-=8);for(e=e<0;u[l++]=255&e,e/=256,c-=8);return u[--l]|=128*h,u}function i(t,n,r){var e,i=8*r-n-1,o=(1<>1,c=i-7,f=r-1,a=t[f--],s=127&a;for(a>>=7;c>0;s=256*s+t[f],f--,c-=8);for(e=s&(1<<-c)-1,s>>=-c,c+=n;c>0;e=256*e+t[f],f--,c-=8);if(0===s)s=1-u;else{if(s===o)return e?NaN:a?-D:D;e+=W(2,n),s-=u}return(a?-1:1)*e*W(2,s-n)}function o(t){return t[3]<<24|t[2]<<16|t[1]<<8|t[0]}function u(t){return[255&t]}function c(t){return[255&t,t>>8&255]}function f(t){return[255&t,t>>8&255,t>>16&255,t>>24&255]}function a(t){return e(t,52,8)}function s(t){return e(t,23,4)}function l(t,n,r){M(t[N],n,{get:function(){return this[r]}})}function h(t,n,r,e){var i=+r,o=E(i);if(o+n>t[H])throw C(T);var u=t[K]._b,c=o+t[X],f=u.slice(c,c+n);return e?f:f.reverse()}function v(t,n,r,e,i,o){var u=+r,c=E(u);if(c+n>t[H])throw C(T);for(var f=t[K]._b,a=c+t[X],s=e(+i),l=0;ltt;)($=Q[tt++])in R||m(R,$,G[$]);g||(Z.constructor=R)}var nt=new L(new R(2)),rt=L[N].setInt8;nt.setInt8(0,2147483648),nt.setInt8(1,2147483649),!nt.getInt8(0)&&nt.getInt8(1)||b(L[N],{setInt8:function(t,n){rt.call(this,t,n<<24>>24)},setUint8:function(t,n){rt.call(this,t,n<<24>>24)}},!0)}else R=function(t){S(this,R,A);var n=E(t);this._b=P.call(Array(n),0),this[H]=n},L=function(t,n,r){S(this,L,j),S(t,R,j);var e=t[H],i=x(n);if(i<0||i>e)throw C("Wrong offset!");if(r=void 0===r?e-i:_(r),i+r>e)throw C(I);this[K]=t,this[X]=i,this[H]=r},d&&(l(R,q,"_l"),l(L,Y,"_b"),l(L,q,"_l"),l(L,J,"_o")),b(L[N],{getInt8:function(t){return h(this,1,t)[0]<<24>>24},getUint8:function(t){return h(this,1,t)[0]},getInt16:function(t){var n=h(this,2,t,arguments[1]);return(n[1]<<8|n[0])<<16>>16},getUint16:function(t){var n=h(this,2,t,arguments[1]);return n[1]<<8|n[0]},getInt32:function(t){return o(h(this,4,t,arguments[1]))},getUint32:function(t){return o(h(this,4,t,arguments[1]))>>>0},getFloat32:function(t){return i(h(this,4,t,arguments[1]),23,4)},getFloat64:function(t){return i(h(this,8,t,arguments[1]),52,8)},setInt8:function(t,n){v(this,1,t,u,n)},setUint8:function(t,n){v(this,1,t,u,n)},setInt16:function(t,n){v(this,2,t,c,n,arguments[2])},setUint16:function(t,n){v(this,2,t,c,n,arguments[2])},setInt32:function(t,n){v(this,4,t,f,n,arguments[2])},setUint32:function(t,n){v(this,4,t,f,n,arguments[2])},setFloat32:function(t,n){v(this,4,t,s,n,arguments[2])},setFloat64:function(t,n){v(this,8,t,a,n,arguments[2])}});F(R,A),F(L,j),m(L[N],y.VIEW,!0),r[A]=R,r[j]=L},{101:101,115:115,116:116,118:118,123:123,29:29,35:35,40:40,42:42,6:6,60:60,72:72,77:77,9:9,93:93}],123:[function(t,n,r){for(var e,i=t(40),o=t(42),u=t(124),c=u("typed_array"),f=u("view"),a=!(!i.ArrayBuffer||!i.DataView),s=a,l=0,h=9,v="Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array".split(",");l1?arguments[1]:void 0)}}),t(5)(o)},{12:12,33:33,5:5}],136:[function(t,n,r){"use strict";var e=t(33),i=t(12)(5),o="find",u=!0;o in[]&&Array(1)[o](function(){u=!1}),e(e.P+e.F*u,"Array",{find:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),t(5)(o)},{12:12,33:33,5:5}],137:[function(t,n,r){"use strict";var e=t(33),i=t(12)(0),o=t(105)([].forEach,!0);e(e.P+e.F*!o,"Array",{forEach:function(t){return i(this,t,arguments[1])}})},{105:105,12:12,33:33}],138:[function(t,n,r){"use strict";var e=t(25),i=t(33),o=t(119),u=t(53),c=t(48),f=t(118),a=t(24),s=t(129);i(i.S+i.F*!t(56)(function(t){Array.from(t)}),"Array",{from:function(t){var n,r,i,l,h=o(t),v="function"==typeof this?this:Array,p=arguments.length,d=p>1?arguments[1]:void 0,g=void 0!==d,y=0,m=s(h);if(g&&(d=e(d,p>2?arguments[2]:void 0,2)),void 0==m||v==Array&&c(m))for(n=f(h.length),r=new v(n);n>y;y++)a(r,y,g?d(h[y],y):h[y]);else for(l=m.call(h),r=new v;!(i=l.next()).done;y++)a(r,y,g?u(l,d,[i.value,y],!0):i.value);return r.length=y,r}})},{118:118,119:119,129:129,24:24,25:25,33:33,48:48,53:53,56:56}],139:[function(t,n,r){"use strict";var e=t(33),i=t(11)(!1),o=[].indexOf,u=!!o&&1/[1].indexOf(1,-0)<0;e(e.P+e.F*(u||!t(105)(o)),"Array",{indexOf:function(t){return u?o.apply(this,arguments)||0:i(this,t,arguments[1])}})},{105:105,11:11,33:33}],140:[function(t,n,r){var e=t(33);e(e.S,"Array",{isArray:t(49)})},{33:33,49:49}],141:[function(t,n,r){"use strict";var e=t(5),i=t(57),o=t(58),u=t(117);n.exports=t(55)(Array,"Array",function(t,n){this._t=u(t),this._i=0,this._k=n},function(){var t=this._t,n=this._k,r=this._i++;return!t||r>=t.length?(this._t=void 0,i(1)):"keys"==n?i(0,r):"values"==n?i(0,t[r]):i(0,[r,t[r]])},"values"),o.Arguments=o.Array,e("keys"),e("values"),e("entries")},{117:117,5:5,55:55,57:57,58:58}],142:[function(t,n,r){"use strict";var e=t(33),i=t(117),o=[].join;e(e.P+e.F*(t(47)!=Object||!t(105)(o)),"Array",{join:function(t){return o.call(i(this),void 0===t?",":t)}})},{105:105,117:117,33:33,47:47}],143:[function(t,n,r){"use strict";var e=t(33),i=t(117),o=t(116),u=t(118),c=[].lastIndexOf,f=!!c&&1/[1].lastIndexOf(1,-0)<0;e(e.P+e.F*(f||!t(105)(c)),"Array",{lastIndexOf:function(t){if(f)return c.apply(this,arguments)||0;var n=i(this),r=u(n.length),e=r-1;for(arguments.length>1&&(e=Math.min(e,o(arguments[1]))),e<0&&(e=r+e);e>=0;e--)if(e in n&&n[e]===t)return e||0;return-1}})},{105:105,116:116,117:117,118:118,33:33}],144:[function(t,n,r){"use strict";var e=t(33),i=t(12)(1);e(e.P+e.F*!t(105)([].map,!0),"Array",{map:function(t){return i(this,t,arguments[1])}})},{105:105,12:12,33:33}],145:[function(t,n,r){"use strict";var e=t(33),i=t(24);e(e.S+e.F*t(35)(function(){function t(){}return!(Array.of.call(t)instanceof t)}),"Array",{of:function(){for(var t=0,n=arguments.length,r=new("function"==typeof this?this:Array)(n);n>t;)i(r,t,arguments[t++]);return r.length=n,r}})},{24:24,33:33,35:35}],146:[function(t,n,r){"use strict";var e=t(33),i=t(13);e(e.P+e.F*!t(105)([].reduceRight,!0),"Array",{reduceRight:function(t){return i(this,t,arguments.length,arguments[1],!0)}})},{105:105,13:13,33:33}],147:[function(t,n,r){"use strict";var e=t(33),i=t(13);e(e.P+e.F*!t(105)([].reduce,!0),"Array",{reduce:function(t){return i(this,t,arguments.length,arguments[1],!1)}})},{105:105,13:13,33:33}],148:[function(t,n,r){"use strict";var e=t(33),i=t(43),o=t(18),u=t(114),c=t(118),f=[].slice;e(e.P+e.F*t(35)(function(){i&&f.call(i)}),"Array",{slice:function(t,n){var r=c(this.length),e=o(this);if(n=void 0===n?r:n,"Array"==e)return f.call(this,t,n);for(var i=u(t,r),a=u(n,r),s=c(a-i),l=Array(s),h=0;h0?arguments[0]:void 0)}},{get:function(t){var n=e.getEntry(i(this,o),t);return n&&n.v},set:function(t,n){return e.def(i(this,o),0===t?0:t,n)}},e,!0)},{125:125,19:19,22:22}],161:[function(t,n,r){var e=t(33),i=t(63),o=Math.sqrt,u=Math.acosh;e(e.S+e.F*!(u&&710==Math.floor(u(Number.MAX_VALUE))&&u(1/0)==1/0),"Math",{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?Math.log(t)+Math.LN2:i(t-1+o(t-1)*o(t+1))}})},{33:33,63:63}],162:[function(t,n,r){function e(t){return isFinite(t=+t)&&0!=t?t<0?-e(-t):Math.log(t+Math.sqrt(t*t+1)):t}var i=t(33),o=Math.asinh;i(i.S+i.F*!(o&&1/o(0)>0),"Math",{asinh:e})},{33:33}],163:[function(t,n,r){var e=t(33),i=Math.atanh;e(e.S+e.F*!(i&&1/i(-0)<0),"Math",{atanh:function(t){return 0==(t=+t)?t:Math.log((1+t)/(1-t))/2}})},{33:33}],164:[function(t,n,r){var e=t(33),i=t(65);e(e.S,"Math",{cbrt:function(t){return i(t=+t)*Math.pow(Math.abs(t),1/3)}})},{33:33,65:65}],165:[function(t,n,r){var e=t(33);e(e.S,"Math",{clz32:function(t){return(t>>>=0)?31-Math.floor(Math.log(t+.5)*Math.LOG2E):32}})},{33:33}],166:[function(t,n,r){var e=t(33),i=Math.exp;e(e.S,"Math",{cosh:function(t){return(i(t=+t)+i(-t))/2}})},{33:33}],167:[function(t,n,r){var e=t(33),i=t(61);e(e.S+e.F*(i!=Math.expm1),"Math",{expm1:i})},{33:33,61:61}],168:[function(t,n,r){var e=t(33);e(e.S,"Math",{fround:t(62)})},{33:33,62:62}],169:[function(t,n,r){var e=t(33),i=Math.abs;e(e.S,"Math",{hypot:function(t,n){for(var r,e,o=0,u=0,c=arguments.length,f=0;u0?(e=r/f,o+=e*e):o+=r;return f===1/0?1/0:f*Math.sqrt(o)}})},{33:33}],170:[function(t,n,r){var e=t(33),i=Math.imul;e(e.S+e.F*t(35)(function(){return i(4294967295,5)!=-5||2!=i.length}),"Math",{imul:function(t,n){var r=65535,e=+t,i=+n,o=r&e,u=r&i;return 0|o*u+((r&e>>>16)*u+o*(r&i>>>16)<<16>>>0)}})},{33:33,35:35}],171:[function(t,n,r){var e=t(33);e(e.S,"Math",{log10:function(t){return Math.log(t)*Math.LOG10E}})},{33:33}],172:[function(t,n,r){var e=t(33);e(e.S,"Math",{log1p:t(63)})},{33:33,63:63}],173:[function(t,n,r){var e=t(33);e(e.S,"Math",{log2:function(t){return Math.log(t)/Math.LN2}})},{33:33}],174:[function(t,n,r){var e=t(33);e(e.S,"Math",{sign:t(65)})},{33:33,65:65}],175:[function(t,n,r){var e=t(33),i=t(61),o=Math.exp;e(e.S+e.F*t(35)(function(){return!Math.sinh(-2e-17)!=-2e-17}),"Math",{sinh:function(t){return Math.abs(t=+t)<1?(i(t)-i(-t))/2:(o(t-1)-o(-t-1))*(Math.E/2)}})},{33:33,35:35,61:61}],176:[function(t,n,r){var e=t(33),i=t(61),o=Math.exp;e(e.S,"Math",{tanh:function(t){var n=i(t=+t),r=i(-t);return n==1/0?1:r==1/0?-1:(n-r)/(o(t)+o(-t))}})},{33:33,61:61}],177:[function(t,n,r){var e=t(33);e(e.S,"Math",{trunc:function(t){return(t>0?Math.floor:Math.ceil)(t)}})},{33:33}],178:[function(t,n,r){"use strict";var e=t(40),i=t(41),o=t(18),u=t(45),c=t(120),f=t(35),a=t(77).f,s=t(75).f,l=t(72).f,h=t(111).trim,v="Number",p=e[v],d=p,g=p.prototype,y=o(t(71)(g))==v,m="trim"in String.prototype,b=function(t){var n=c(t,!1);if("string"==typeof n&&n.length>2){n=m?n.trim():h(n,3);var r,e,i,o=n.charCodeAt(0);if(43===o||45===o){if(r=n.charCodeAt(2),88===r||120===r)return NaN}else if(48===o){switch(n.charCodeAt(1)){case 66:case 98:e=2,i=49;break;case 79:case 111:e=8,i=55;break;default:return+n}for(var u,f=n.slice(2),a=0,s=f.length;ai)return NaN;return parseInt(f,e)}}return+n};if(!p(" 0o1")||!p("0b1")||p("+0x1")){p=function(t){var n=arguments.length<1?0:t,r=this;return r instanceof p&&(y?f(function(){g.valueOf.call(r)}):o(r)!=v)?u(new d(b(n)),r,p):b(n)};for(var w,S=t(29)?a(d):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),x=0;S.length>x;x++)i(d,w=S[x])&&!i(p,w)&&l(p,w,s(d,w));p.prototype=g,g.constructor=p,t(94)(e,v,p)}},{111:111,120:120,18:18,29:29,35:35,40:40,41:41,45:45,71:71,72:72,75:75,77:77,94:94}],179:[function(t,n,r){var e=t(33);e(e.S,"Number",{EPSILON:Math.pow(2,-52)})},{33:33}],180:[function(t,n,r){var e=t(33),i=t(40).isFinite;e(e.S,"Number",{isFinite:function(t){return"number"==typeof t&&i(t)}})},{33:33,40:40}],181:[function(t,n,r){var e=t(33);e(e.S,"Number",{isInteger:t(50)})},{33:33,50:50}],182:[function(t,n,r){var e=t(33);e(e.S,"Number",{isNaN:function(t){return t!=t}})},{33:33}],183:[function(t,n,r){var e=t(33),i=t(50),o=Math.abs;e(e.S,"Number",{isSafeInteger:function(t){return i(t)&&o(t)<=9007199254740991}})},{33:33,50:50}],184:[function(t,n,r){var e=t(33);e(e.S,"Number",{MAX_SAFE_INTEGER:9007199254740991})},{33:33}],185:[function(t,n,r){var e=t(33);e(e.S,"Number",{MIN_SAFE_INTEGER:-9007199254740991})},{33:33}],186:[function(t,n,r){var e=t(33),i=t(86);e(e.S+e.F*(Number.parseFloat!=i),"Number",{parseFloat:i})},{33:33,86:86}],187:[function(t,n,r){var e=t(33),i=t(87);e(e.S+e.F*(Number.parseInt!=i),"Number",{parseInt:i})},{33:33,87:87}],188:[function(t,n,r){"use strict";var e=t(33),i=t(116),o=t(4),u=t(110),c=1..toFixed,f=Math.floor,a=[0,0,0,0,0,0],s="Number.toFixed: incorrect invocation!",l="0",h=function(t,n){for(var r=-1,e=n;++r<6;)e+=t*a[r],a[r]=e%1e7,e=f(e/1e7)},v=function(t){for(var n=6,r=0;--n>=0;)r+=a[n],a[n]=f(r/t),r=r%t*1e7},p=function(){for(var t=6,n="";--t>=0;)if(""!==n||0===t||0!==a[t]){var r=String(a[t]);n=""===n?r:n+u.call(l,7-r.length)+r}return n},d=function(t,n,r){return 0===n?r:n%2===1?d(t,n-1,r*t):d(t*t,n/2,r)},g=function(t){for(var n=0,r=t;r>=4096;)n+=12,r/=4096;for(;r>=2;)n+=1,r/=2;return n};e(e.P+e.F*(!!c&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==(0xde0b6b3a7640080).toFixed(0))||!t(35)(function(){c.call({})})),"Number",{toFixed:function(t){var n,r,e,c,f=o(this,s),a=i(t),y="",m=l;if(a<0||a>20)throw RangeError(s);if(f!=f)return"NaN";if(f<=-1e21||f>=1e21)return String(f);if(f<0&&(y="-",f=-f),f>1e-21)if(n=g(f*d(2,69,1))-69,r=n<0?f*d(2,-n,1):f/d(2,n,1),r*=4503599627370496,n=52-n,n>0){for(h(0,r),e=a;e>=7;)h(1e7,0),e-=7;for(h(d(10,e,1),0),e=n-1;e>=23;)v(1<<23),e-=23;v(1<0?(c=m.length,m=y+(c<=a?"0."+u.call(l,a-c)+m:m.slice(0,c-a)+"."+m.slice(c-a))):m=y+m,m}})},{110:110,116:116,33:33,35:35,4:4}],189:[function(t,n,r){"use strict";var e=t(33),i=t(35),o=t(4),u=1..toPrecision;e(e.P+e.F*(i(function(){return"1"!==u.call(1,void 0)})||!i(function(){u.call({})})),"Number",{toPrecision:function(t){var n=o(this,"Number#toPrecision: incorrect invocation!");return void 0===t?u.call(n):u.call(n,t)}})},{33:33,35:35,4:4}],190:[function(t,n,r){var e=t(33);e(e.S+e.F,"Object",{assign:t(70)})},{33:33,70:70}],191:[function(t,n,r){var e=t(33);e(e.S,"Object",{create:t(71)})},{33:33,71:71}],192:[function(t,n,r){var e=t(33);e(e.S+e.F*!t(29),"Object",{defineProperties:t(73)})},{29:29,33:33,73:73}],193:[function(t,n,r){var e=t(33);e(e.S+e.F*!t(29),"Object",{defineProperty:t(72).f})},{29:29,33:33,72:72}],194:[function(t,n,r){var e=t(51),i=t(66).onFreeze;t(83)("freeze",function(t){return function(n){return t&&e(n)?t(i(n)):n}})},{51:51,66:66,83:83}],195:[function(t,n,r){var e=t(117),i=t(75).f;t(83)("getOwnPropertyDescriptor",function(){return function(t,n){return i(e(t),n)}})},{117:117,75:75,83:83}],196:[function(t,n,r){t(83)("getOwnPropertyNames",function(){return t(76).f})},{76:76,83:83}],197:[function(t,n,r){var e=t(119),i=t(79);t(83)("getPrototypeOf",function(){return function(t){return i(e(t))}})},{119:119,79:79,83:83}],198:[function(t,n,r){var e=t(51);t(83)("isExtensible",function(t){return function(n){return!!e(n)&&(!t||t(n))}})},{51:51,83:83}],199:[function(t,n,r){var e=t(51);t(83)("isFrozen",function(t){return function(n){return!e(n)||!!t&&t(n)}})},{51:51,83:83}],200:[function(t,n,r){var e=t(51);t(83)("isSealed",function(t){return function(n){return!e(n)||!!t&&t(n)}})},{51:51,83:83}],201:[function(t,n,r){var e=t(33);e(e.S,"Object",{is:t(96)})},{33:33,96:96}],202:[function(t,n,r){var e=t(119),i=t(81);t(83)("keys",function(){return function(t){return i(e(t))}})},{119:119,81:81,83:83}],203:[function(t,n,r){var e=t(51),i=t(66).onFreeze;t(83)("preventExtensions",function(t){return function(n){return t&&e(n)?t(i(n)):n}})},{51:51,66:66,83:83}],204:[function(t,n,r){var e=t(51),i=t(66).onFreeze;t(83)("seal",function(t){return function(n){return t&&e(n)?t(i(n)):n}})},{51:51,66:66,83:83}],205:[function(t,n,r){var e=t(33);e(e.S,"Object",{setPrototypeOf:t(99).set})},{33:33,99:99}],206:[function(t,n,r){"use strict";var e=t(17),i={};i[t(128)("toStringTag")]="z",i+""!="[object z]"&&t(94)(Object.prototype,"toString",function(){return"[object "+e(this)+"]"},!0)},{128:128,17:17,94:94}],207:[function(t,n,r){var e=t(33),i=t(86);e(e.G+e.F*(parseFloat!=i),{parseFloat:i})},{33:33,86:86}],208:[function(t,n,r){var e=t(33),i=t(87);e(e.G+e.F*(parseInt!=i),{parseInt:i})},{33:33,87:87}],209:[function(t,n,r){"use strict";var e,i,o,u,c=t(60),f=t(40),a=t(25),s=t(17),l=t(33),h=t(51),v=t(3),p=t(6),d=t(39),g=t(104),y=t(113).set,m=t(68)(),b=t(69),w=t(90),S=t(91),x="Promise",_=f.TypeError,E=f.process,O=f[x],M="process"==s(E),P=function(){},F=i=b.f,A=!!function(){try{var n=O.resolve(1),r=(n.constructor={})[t(128)("species")]=function(t){t(P,P)};return(M||"function"==typeof PromiseRejectionEvent)&&n.then(P)instanceof r}catch(e){}}(),j=c?function(t,n){return t===n||t===O&&n===u}:function(t,n){return t===n},N=function(t){var n;return!(!h(t)||"function"!=typeof(n=t.then))&&n},I=function(t,n){if(!t._n){t._n=!0;var r=t._c;m(function(){for(var e=t._v,i=1==t._s,o=0,u=function(n){var r,o,u=i?n.ok:n.fail,c=n.resolve,f=n.reject,a=n.domain;try{u?(i||(2==t._h&&L(t),t._h=1),u===!0?r=e:(a&&a.enter(),r=u(e),a&&a.exit()),r===n.promise?f(_("Promise-chain cycle")):(o=N(r))?o.call(r,c,f):c(r)):f(e)}catch(s){f(s)}};r.length>o;)u(r[o++]);t._c=[],t._n=!1,n&&!t._h&&T(t)})}},T=function(t){y.call(f,function(){var n,r,e,i=t._v,o=R(t);if(o&&(n=w(function(){M?E.emit("unhandledRejection",i,t):(r=f.onunhandledrejection)?r({promise:t,reason:i}):(e=f.console)&&e.error&&e.error("Unhandled promise rejection",i)}),t._h=M||R(t)?2:1),t._a=void 0,o&&n.e)throw n.v})},R=function(t){if(1==t._h)return!1;for(var n,r=t._a||t._c,e=0;r.length>e;)if(n=r[e++],n.fail||!R(n.promise))return!1;return!0},L=function(t){y.call(f,function(){var n;M?E.emit("rejectionHandled",t):(n=f.onrejectionhandled)&&n({promise:t,reason:t._v})})},k=function(t){var n=this;n._d||(n._d=!0,n=n._w||n,n._v=t,n._s=2,n._a||(n._a=n._c.slice()),I(n,!0))},C=function(t){var n,r=this;if(!r._d){r._d=!0,r=r._w||r;try{if(r===t)throw _("Promise can't be resolved itself");(n=N(t))?m(function(){var e={_w:r,_d:!1};try{n.call(t,a(C,e,1),a(k,e,1))}catch(i){k.call(e,i)}}):(r._v=t,r._s=1,I(r,!1))}catch(e){k.call({_w:r,_d:!1},e)}}};A||(O=function(t){p(this,O,x,"_h"),v(t),e.call(this);try{t(a(C,this,1),a(k,this,1))}catch(n){k.call(this,n)}},e=function(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1},e.prototype=t(93)(O.prototype,{then:function(t,n){var r=F(g(this,O));return r.ok="function"!=typeof t||t,r.fail="function"==typeof n&&n,r.domain=M?E.domain:void 0,this._c.push(r),this._a&&this._a.push(r),this._s&&I(this,!1),r.promise},"catch":function(t){return this.then(void 0,t)}}),o=function(){var t=new e;this.promise=t,this.resolve=a(C,t,1),this.reject=a(k,t,1)},b.f=F=function(t){return j(O,t)?new o(t):i(t)}),l(l.G+l.W+l.F*!A,{Promise:O}),t(101)(O,x),t(100)(x),u=t(23)[x],l(l.S+l.F*!A,x,{reject:function(t){var n=F(this),r=n.reject;return r(t),n.promise}}),l(l.S+l.F*(c||!A),x,{resolve:function(t){return t instanceof O&&j(t.constructor,this)?t:S(this,t)}}),l(l.S+l.F*!(A&&t(56)(function(t){O.all(t)["catch"](P)})),x,{all:function(t){var n=this,r=F(n),e=r.resolve,i=r.reject,o=w(function(){var r=[],o=0,u=1;d(t,!1,function(t){var c=o++,f=!1;r.push(void 0),u++,n.resolve(t).then(function(t){f||(f=!0,r[c]=t,--u||e(r))},i)}),--u||e(r)});return o.e&&i(o.v),r.promise},race:function(t){var n=this,r=F(n),e=r.reject,i=w(function(){d(t,!1,function(t){n.resolve(t).then(r.resolve,e)})});return i.e&&e(i.v),r.promise}})},{100:100,101:101,104:104,113:113,128:128,17:17,23:23,25:25,3:3,33:33,39:39,40:40,51:51,56:56,6:6,60:60,68:68,69:69,90:90,91:91,93:93}],210:[function(t,n,r){var e=t(33),i=t(3),o=t(7),u=(t(40).Reflect||{}).apply,c=Function.apply;e(e.S+e.F*!t(35)(function(){u(function(){})}),"Reflect",{apply:function(t,n,r){var e=i(t),f=o(r);return u?u(e,n,f):c.call(e,n,f)}})},{3:3,33:33,35:35,40:40,7:7}],211:[function(t,n,r){var e=t(33),i=t(71),o=t(3),u=t(7),c=t(51),f=t(35),a=t(16),s=(t(40).Reflect||{}).construct,l=f(function(){function t(){}return!(s(function(){},[],t)instanceof t)}),h=!f(function(){s(function(){})});e(e.S+e.F*(l||h),"Reflect",{construct:function(t,n){o(t),u(n);var r=arguments.length<3?t:o(arguments[2]);if(h&&!l)return s(t,n,r);if(t==r){switch(n.length){case 0:return new t;case 1:return new t(n[0]);case 2:return new t(n[0],n[1]);case 3:return new t(n[0],n[1],n[2]);case 4:return new t(n[0],n[1],n[2],n[3])}var e=[null];return e.push.apply(e,n),new(a.apply(t,e))}var f=r.prototype,v=i(c(f)?f:Object.prototype),p=Function.apply.call(t,v,n);return c(p)?p:v}})},{16:16,3:3,33:33,35:35,40:40,51:51,7:7,71:71}],212:[function(t,n,r){var e=t(72),i=t(33),o=t(7),u=t(120);i(i.S+i.F*t(35)(function(){Reflect.defineProperty(e.f({},1,{value:1}),1,{value:2})}),"Reflect",{defineProperty:function(t,n,r){o(t),n=u(n,!0),o(r);try{return e.f(t,n,r),!0}catch(i){return!1}}})},{120:120,33:33,35:35,7:7,72:72}],213:[function(t,n,r){var e=t(33),i=t(75).f,o=t(7);e(e.S,"Reflect",{deleteProperty:function(t,n){var r=i(o(t),n);return!(r&&!r.configurable)&&delete t[n]}})},{33:33,7:7,75:75}],214:[function(t,n,r){"use strict";var e=t(33),i=t(7),o=function(t){this._t=i(t),this._i=0;var n,r=this._k=[];for(n in t)r.push(n)};t(54)(o,"Object",function(){var t,n=this,r=n._k;do if(n._i>=r.length)return{value:void 0,done:!0};while(!((t=r[n._i++])in n._t));return{value:t,done:!1}}),e(e.S,"Reflect",{enumerate:function(t){return new o(t)}})},{33:33,54:54,7:7}],215:[function(t,n,r){var e=t(75),i=t(33),o=t(7);i(i.S,"Reflect",{getOwnPropertyDescriptor:function(t,n){return e.f(o(t),n)}})},{33:33,7:7,75:75}],216:[function(t,n,r){var e=t(33),i=t(79),o=t(7);e(e.S,"Reflect",{getPrototypeOf:function(t){return i(o(t))}})},{33:33,7:7,79:79}],217:[function(t,n,r){function e(t,n){var r,c,s=arguments.length<3?t:arguments[2];return a(t)===s?t[n]:(r=i.f(t,n))?u(r,"value")?r.value:void 0!==r.get?r.get.call(s):void 0:f(c=o(t))?e(c,n,s):void 0}var i=t(75),o=t(79),u=t(41),c=t(33),f=t(51),a=t(7);c(c.S,"Reflect",{get:e})},{33:33,41:41,51:51,7:7,75:75,79:79}],218:[function(t,n,r){var e=t(33);e(e.S,"Reflect",{has:function(t,n){return n in t}})},{33:33}],219:[function(t,n,r){var e=t(33),i=t(7),o=Object.isExtensible;e(e.S,"Reflect",{isExtensible:function(t){return i(t),!o||o(t); +}})},{33:33,7:7}],220:[function(t,n,r){var e=t(33);e(e.S,"Reflect",{ownKeys:t(85)})},{33:33,85:85}],221:[function(t,n,r){var e=t(33),i=t(7),o=Object.preventExtensions;e(e.S,"Reflect",{preventExtensions:function(t){i(t);try{return o&&o(t),!0}catch(n){return!1}}})},{33:33,7:7}],222:[function(t,n,r){var e=t(33),i=t(99);i&&e(e.S,"Reflect",{setPrototypeOf:function(t,n){i.check(t,n);try{return i.set(t,n),!0}catch(r){return!1}}})},{33:33,99:99}],223:[function(t,n,r){function e(t,n,r){var f,h,v=arguments.length<4?t:arguments[3],p=o.f(s(t),n);if(!p){if(l(h=u(t)))return e(h,n,r,v);p=a(0)}return c(p,"value")?!(p.writable===!1||!l(v))&&(f=o.f(v,n)||a(0),f.value=r,i.f(v,n,f),!0):void 0!==p.set&&(p.set.call(v,r),!0)}var i=t(72),o=t(75),u=t(79),c=t(41),f=t(33),a=t(92),s=t(7),l=t(51);f(f.S,"Reflect",{set:e})},{33:33,41:41,51:51,7:7,72:72,75:75,79:79,92:92}],224:[function(t,n,r){var e=t(40),i=t(45),o=t(72).f,u=t(77).f,c=t(52),f=t(37),a=e.RegExp,s=a,l=a.prototype,h=/a/g,v=/a/g,p=new a(h)!==h;if(t(29)&&(!p||t(35)(function(){return v[t(128)("match")]=!1,a(h)!=h||a(v)==v||"/a/i"!=a(h,"i")}))){a=function(t,n){var r=this instanceof a,e=c(t),o=void 0===n;return!r&&e&&t.constructor===a&&o?t:i(p?new s(e&&!o?t.source:t,n):s((e=t instanceof a)?t.source:t,e&&o?f.call(t):n),r?this:l,a)};for(var d=(function(t){t in a||o(a,t,{configurable:!0,get:function(){return s[t]},set:function(n){s[t]=n}})}),g=u(s),y=0;g.length>y;)d(g[y++]);l.constructor=a,a.prototype=l,t(94)(e,"RegExp",a)}t(100)("RegExp")},{100:100,128:128,29:29,35:35,37:37,40:40,45:45,52:52,72:72,77:77,94:94}],225:[function(t,n,r){t(29)&&"g"!=/./g.flags&&t(72).f(RegExp.prototype,"flags",{configurable:!0,get:t(37)})},{29:29,37:37,72:72}],226:[function(t,n,r){t(36)("match",1,function(t,n,r){return[function(r){"use strict";var e=t(this),i=void 0==r?void 0:r[n];return void 0!==i?i.call(r,e):new RegExp(r)[n](String(e))},r]})},{36:36}],227:[function(t,n,r){t(36)("replace",2,function(t,n,r){return[function(e,i){"use strict";var o=t(this),u=void 0==e?void 0:e[n];return void 0!==u?u.call(e,o,i):r.call(String(o),e,i)},r]})},{36:36}],228:[function(t,n,r){t(36)("search",1,function(t,n,r){return[function(r){"use strict";var e=t(this),i=void 0==r?void 0:r[n];return void 0!==i?i.call(r,e):new RegExp(r)[n](String(e))},r]})},{36:36}],229:[function(t,n,r){t(36)("split",2,function(n,r,e){"use strict";var i=t(52),o=e,u=[].push,c="split",f="length",a="lastIndex";if("c"=="abbc"[c](/(b)*/)[1]||4!="test"[c](/(?:)/,-1)[f]||2!="ab"[c](/(?:ab)*/)[f]||4!="."[c](/(.?)(.?)/)[f]||"."[c](/()()/)[f]>1||""[c](/.?/)[f]){var s=void 0===/()??/.exec("")[1];e=function(t,n){var r=String(this);if(void 0===t&&0===n)return[];if(!i(t))return o.call(r,t,n);var e,c,l,h,v,p=[],d=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),g=0,y=void 0===n?4294967295:n>>>0,m=new RegExp(t.source,d+"g");for(s||(e=new RegExp("^"+m.source+"$(?!\\s)",d));(c=m.exec(r))&&(l=c.index+c[0][f],!(l>g&&(p.push(r.slice(g,c.index)),!s&&c[f]>1&&c[0].replace(e,function(){for(v=1;v1&&c.index=y)));)m[a]===c.index&&m[a]++;return g===r[f]?!h&&m.test("")||p.push(""):p.push(r.slice(g)),p[f]>y?p.slice(0,y):p}}else"0"[c](void 0,0)[f]&&(e=function(t,n){return void 0===t&&0===n?[]:o.call(this,t,n)});return[function(t,i){var o=n(this),u=void 0==t?void 0:t[r];return void 0!==u?u.call(t,o,i):e.call(String(o),t,i)},e]})},{36:36,52:52}],230:[function(t,n,r){"use strict";t(225);var e=t(7),i=t(37),o=t(29),u="toString",c=/./[u],f=function(n){t(94)(RegExp.prototype,u,n,!0)};t(35)(function(){return"/a/b"!=c.call({source:"a",flags:"b"})})?f(function(){var t=e(this);return"/".concat(t.source,"/","flags"in t?t.flags:!o&&t instanceof RegExp?i.call(t):void 0)}):c.name!=u&&f(function(){return c.call(this)})},{225:225,29:29,35:35,37:37,7:7,94:94}],231:[function(t,n,r){"use strict";var e=t(19),i=t(125),o="Set";n.exports=t(22)(o,function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},{add:function(t){return e.def(i(this,o),t=0===t?0:t,t)}},e)},{125:125,19:19,22:22}],232:[function(t,n,r){"use strict";t(108)("anchor",function(t){return function(n){return t(this,"a","name",n)}})},{108:108}],233:[function(t,n,r){"use strict";t(108)("big",function(t){return function(){return t(this,"big","","")}})},{108:108}],234:[function(t,n,r){"use strict";t(108)("blink",function(t){return function(){return t(this,"blink","","")}})},{108:108}],235:[function(t,n,r){"use strict";t(108)("bold",function(t){return function(){return t(this,"b","","")}})},{108:108}],236:[function(t,n,r){"use strict";var e=t(33),i=t(106)(!1);e(e.P,"String",{codePointAt:function(t){return i(this,t)}})},{106:106,33:33}],237:[function(t,n,r){"use strict";var e=t(33),i=t(118),o=t(107),u="endsWith",c=""[u];e(e.P+e.F*t(34)(u),"String",{endsWith:function(t){var n=o(this,t,u),r=arguments.length>1?arguments[1]:void 0,e=i(n.length),f=void 0===r?e:Math.min(i(r),e),a=String(t);return c?c.call(n,a,f):n.slice(f-a.length,f)===a}})},{107:107,118:118,33:33,34:34}],238:[function(t,n,r){"use strict";t(108)("fixed",function(t){return function(){return t(this,"tt","","")}})},{108:108}],239:[function(t,n,r){"use strict";t(108)("fontcolor",function(t){return function(n){return t(this,"font","color",n)}})},{108:108}],240:[function(t,n,r){"use strict";t(108)("fontsize",function(t){return function(n){return t(this,"font","size",n)}})},{108:108}],241:[function(t,n,r){var e=t(33),i=t(114),o=String.fromCharCode,u=String.fromCodePoint;e(e.S+e.F*(!!u&&1!=u.length),"String",{fromCodePoint:function(t){for(var n,r=[],e=arguments.length,u=0;e>u;){if(n=+arguments[u++],i(n,1114111)!==n)throw RangeError(n+" is not a valid code point");r.push(n<65536?o(n):o(((n-=65536)>>10)+55296,n%1024+56320))}return r.join("")}})},{114:114,33:33}],242:[function(t,n,r){"use strict";var e=t(33),i=t(107),o="includes";e(e.P+e.F*t(34)(o),"String",{includes:function(t){return!!~i(this,t,o).indexOf(t,arguments.length>1?arguments[1]:void 0)}})},{107:107,33:33,34:34}],243:[function(t,n,r){"use strict";t(108)("italics",function(t){return function(){return t(this,"i","","")}})},{108:108}],244:[function(t,n,r){"use strict";var e=t(106)(!0);t(55)(String,"String",function(t){this._t=String(t),this._i=0},function(){var t,n=this._t,r=this._i;return r>=n.length?{value:void 0,done:!0}:(t=e(n,r),this._i+=t.length,{value:t,done:!1})})},{106:106,55:55}],245:[function(t,n,r){"use strict";t(108)("link",function(t){return function(n){return t(this,"a","href",n)}})},{108:108}],246:[function(t,n,r){var e=t(33),i=t(117),o=t(118);e(e.S,"String",{raw:function(t){for(var n=i(t.raw),r=o(n.length),e=arguments.length,u=[],c=0;r>c;)u.push(String(n[c++])),c1?arguments[1]:void 0,n.length)),e=String(t);return c?c.call(n,e,r):n.slice(r,r+e.length)===e}})},{107:107,118:118,33:33,34:34}],250:[function(t,n,r){"use strict";t(108)("strike",function(t){return function(){return t(this,"strike","","")}})},{108:108}],251:[function(t,n,r){"use strict";t(108)("sub",function(t){return function(){return t(this,"sub","","")}})},{108:108}],252:[function(t,n,r){"use strict";t(108)("sup",function(t){return function(){return t(this,"sup","","")}})},{108:108}],253:[function(t,n,r){"use strict";t(111)("trim",function(t){return function(){return t(this,3)}})},{111:111}],254:[function(t,n,r){"use strict";var e=t(40),i=t(41),o=t(29),u=t(33),c=t(94),f=t(66).KEY,a=t(35),s=t(103),l=t(101),h=t(124),v=t(128),p=t(127),d=t(126),g=t(59),y=t(32),m=t(49),b=t(7),w=t(117),S=t(120),x=t(92),_=t(71),E=t(76),O=t(75),M=t(72),P=t(81),F=O.f,A=M.f,j=E.f,N=e.Symbol,I=e.JSON,T=I&&I.stringify,R="prototype",L=v("_hidden"),k=v("toPrimitive"),C={}.propertyIsEnumerable,D=s("symbol-registry"),G=s("symbols"),U=s("op-symbols"),W=Object[R],V="function"==typeof N,B=e.QObject,z=!B||!B[R]||!B[R].findChild,Y=o&&a(function(){return 7!=_(A({},"a",{get:function(){return A(this,"a",{value:7}).a}})).a})?function(t,n,r){var e=F(W,n);e&&delete W[n],A(t,n,r),e&&t!==W&&A(W,n,e)}:A,q=function(t){var n=G[t]=_(N[R]);return n._k=t,n},J=V&&"symbol"==typeof N.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof N},K=function(t,n,r){return t===W&&K(U,n,r),b(t),n=S(n,!0),b(r),i(G,n)?(r.enumerable?(i(t,L)&&t[L][n]&&(t[L][n]=!1),r=_(r,{enumerable:x(0,!1)})):(i(t,L)||A(t,L,x(1,{})),t[L][n]=!0),Y(t,n,r)):A(t,n,r)},H=function(t,n){b(t);for(var r,e=y(n=w(n)),i=0,o=e.length;o>i;)K(t,r=e[i++],n[r]);return t},X=function(t,n){return void 0===n?_(t):H(_(t),n)},$=function(t){var n=C.call(this,t=S(t,!0));return!(this===W&&i(G,t)&&!i(U,t))&&(!(n||!i(this,t)||!i(G,t)||i(this,L)&&this[L][t])||n)},Z=function(t,n){if(t=w(t),n=S(n,!0),t!==W||!i(G,n)||i(U,n)){var r=F(t,n);return!r||!i(G,n)||i(t,L)&&t[L][n]||(r.enumerable=!0),r}},Q=function(t){for(var n,r=j(w(t)),e=[],o=0;r.length>o;)i(G,n=r[o++])||n==L||n==f||e.push(n);return e},tt=function(t){for(var n,r=t===W,e=j(r?U:w(t)),o=[],u=0;e.length>u;)!i(G,n=e[u++])||r&&!i(W,n)||o.push(G[n]);return o};V||(N=function(){if(this instanceof N)throw TypeError("Symbol is not a constructor!");var t=h(arguments.length>0?arguments[0]:void 0),n=function(r){this===W&&n.call(U,r),i(this,L)&&i(this[L],t)&&(this[L][t]=!1),Y(this,t,x(1,r))};return o&&z&&Y(W,t,{configurable:!0,set:n}),q(t)},c(N[R],"toString",function(){return this._k}),O.f=Z,M.f=K,t(77).f=E.f=Q,t(82).f=$,t(78).f=tt,o&&!t(60)&&c(W,"propertyIsEnumerable",$,!0),p.f=function(t){return q(v(t))}),u(u.G+u.W+u.F*!V,{Symbol:N});for(var nt="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),rt=0;nt.length>rt;)v(nt[rt++]);for(var et=P(v.store),it=0;et.length>it;)d(et[it++]);u(u.S+u.F*!V,"Symbol",{"for":function(t){return i(D,t+="")?D[t]:D[t]=N(t)},keyFor:function(t){if(J(t))return g(D,t);throw TypeError(t+" is not a symbol!")},useSetter:function(){z=!0},useSimple:function(){z=!1}}),u(u.S+u.F*!V,"Object",{create:X,defineProperty:K,defineProperties:H,getOwnPropertyDescriptor:Z,getOwnPropertyNames:Q,getOwnPropertySymbols:tt}),I&&u(u.S+u.F*(!V||a(function(){var t=N();return"[null]"!=T([t])||"{}"!=T({a:t})||"{}"!=T(Object(t))})),"JSON",{stringify:function(t){if(void 0!==t&&!J(t)){for(var n,r,e=[t],i=1;arguments.length>i;)e.push(arguments[i++]);return n=e[1],"function"==typeof n&&(r=n),!r&&m(n)||(n=function(t,n){if(r&&(n=r.call(this,t,n)),!J(n))return n}),e[1]=n,T.apply(I,e)}}}),N[R][k]||t(42)(N[R],k,N[R].valueOf),l(N,"Symbol"),l(Math,"Math",!0),l(e.JSON,"JSON",!0)},{101:101,103:103,117:117,120:120,124:124,126:126,127:127,128:128,29:29,32:32,33:33,35:35,40:40,41:41,42:42,49:49,59:59,60:60,66:66,7:7,71:71,72:72,75:75,76:76,77:77,78:78,81:81,82:82,92:92,94:94}],255:[function(t,n,r){"use strict";var e=t(33),i=t(123),o=t(122),u=t(7),c=t(114),f=t(118),a=t(51),s=t(40).ArrayBuffer,l=t(104),h=o.ArrayBuffer,v=o.DataView,p=i.ABV&&s.isView,d=h.prototype.slice,g=i.VIEW,y="ArrayBuffer";e(e.G+e.W+e.F*(s!==h),{ArrayBuffer:h}),e(e.S+e.F*!i.CONSTR,y,{isView:function(t){return p&&p(t)||a(t)&&g in t}}),e(e.P+e.U+e.F*t(35)(function(){return!new h(2).slice(1,void 0).byteLength}),y,{slice:function(t,n){if(void 0!==d&&void 0===n)return d.call(u(this),t);for(var r=u(this).byteLength,e=c(t,r),i=c(void 0===n?r:n,r),o=new(l(this,h))(f(i-e)),a=new v(this),s=new v(o),p=0;e0?arguments[0]:void 0)}},m={get:function(t){if(a(t)){var n=v(t);return n===!0?d(l(this,h)).get(t):n?n[this._i]:void 0}},set:function(t,n){return f.def(l(this,h),t,n)}},b=n.exports=t(22)(h,y,m,f,!0,!0);s(function(){return 7!=(new b).set((Object.freeze||Object)(g),7).get(g)})&&(e=f.getConstructor(y,h),c(e.prototype,m),u.NEED=!0,i(["delete","has","get","set"],function(t){var n=b.prototype,r=n[t];o(n,t,function(n,i){if(a(n)&&!p(n)){this._f||(this._f=new e);var o=this._f[t](n,i);return"set"==t?this:o}return r.call(this,n,i)})}))},{12:12,125:125,21:21,22:22,35:35,51:51,66:66,70:70,94:94}],267:[function(t,n,r){"use strict";var e=t(21),i=t(125),o="WeakSet";t(22)(o,function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},{add:function(t){return e.def(i(this,o),t,!0)}},e,!1,!0)},{125:125,21:21,22:22}],268:[function(t,n,r){"use strict";var e=t(33),i=t(38),o=t(119),u=t(118),c=t(3),f=t(15);e(e.P,"Array",{flatMap:function(t){var n,r,e=o(this);return c(t),n=u(e.length),r=f(e,0),i(r,e,e,n,0,1,t,arguments[1]),r}}),t(5)("flatMap")},{118:118,119:119,15:15,3:3,33:33,38:38,5:5}],269:[function(t,n,r){"use strict";var e=t(33),i=t(38),o=t(119),u=t(118),c=t(116),f=t(15);e(e.P,"Array",{flatten:function(){var t=arguments[0],n=o(this),r=u(n.length),e=f(n,0);return i(e,n,n,r,0,void 0===t?1:c(t)),e}}),t(5)("flatten")},{116:116,118:118,119:119,15:15,33:33,38:38,5:5}],270:[function(t,n,r){"use strict";var e=t(33),i=t(11)(!0);e(e.P,"Array",{includes:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),t(5)("includes")},{11:11,33:33,5:5}],271:[function(t,n,r){var e=t(33),i=t(68)(),o=t(40).process,u="process"==t(18)(o);e(e.G,{asap:function(t){var n=u&&o.domain;i(n?n.bind(t):t)}})},{18:18,33:33,40:40,68:68}],272:[function(t,n,r){var e=t(33),i=t(18);e(e.S,"Error",{isError:function(t){return"Error"===i(t)}})},{18:18,33:33}],273:[function(t,n,r){var e=t(33);e(e.G,{global:t(40)})},{33:33,40:40}],274:[function(t,n,r){t(97)("Map")},{97:97}],275:[function(t,n,r){t(98)("Map")},{98:98}],276:[function(t,n,r){var e=t(33);e(e.P+e.R,"Map",{toJSON:t(20)("Map")})},{20:20,33:33}],277:[function(t,n,r){var e=t(33);e(e.S,"Math",{clamp:function(t,n,r){return Math.min(r,Math.max(n,t))}})},{33:33}],278:[function(t,n,r){var e=t(33);e(e.S,"Math",{DEG_PER_RAD:Math.PI/180})},{33:33}],279:[function(t,n,r){var e=t(33),i=180/Math.PI;e(e.S,"Math",{degrees:function(t){return t*i}})},{33:33}],280:[function(t,n,r){var e=t(33),i=t(64),o=t(62);e(e.S,"Math",{fscale:function(t,n,r,e,u){return o(i(t,n,r,e,u))}})},{33:33,62:62,64:64}],281:[function(t,n,r){var e=t(33);e(e.S,"Math",{iaddh:function(t,n,r,e){var i=t>>>0,o=n>>>0,u=r>>>0;return o+(e>>>0)+((i&u|(i|u)&~(i+u>>>0))>>>31)|0}})},{33:33}],282:[function(t,n,r){var e=t(33);e(e.S,"Math",{imulh:function(t,n){var r=65535,e=+t,i=+n,o=e&r,u=i&r,c=e>>16,f=i>>16,a=(c*u>>>0)+(o*u>>>16);return c*f+(a>>16)+((o*f>>>0)+(a&r)>>16)}})},{33:33}],283:[function(t,n,r){var e=t(33);e(e.S,"Math",{isubh:function(t,n,r,e){var i=t>>>0,o=n>>>0,u=r>>>0;return o-(e>>>0)-((~i&u|~(i^u)&i-u>>>0)>>>31)|0}})},{33:33}],284:[function(t,n,r){var e=t(33);e(e.S,"Math",{RAD_PER_DEG:180/Math.PI})},{33:33}],285:[function(t,n,r){var e=t(33),i=Math.PI/180;e(e.S,"Math",{radians:function(t){return t*i}})},{33:33}],286:[function(t,n,r){var e=t(33);e(e.S,"Math",{scale:t(64)})},{33:33,64:64}],287:[function(t,n,r){var e=t(33);e(e.S,"Math",{signbit:function(t){return(t=+t)!=t?t:0==t?1/t==1/0:t>0}})},{33:33}],288:[function(t,n,r){var e=t(33);e(e.S,"Math",{umulh:function(t,n){var r=65535,e=+t,i=+n,o=e&r,u=i&r,c=e>>>16,f=i>>>16,a=(c*u>>>0)+(o*u>>>16);return c*f+(a>>>16)+((o*f>>>0)+(a&r)>>>16)}})},{33:33}],289:[function(t,n,r){"use strict";var e=t(33),i=t(119),o=t(3),u=t(72);t(29)&&e(e.P+t(74),"Object",{__defineGetter__:function(t,n){u.f(i(this),t,{get:o(n),enumerable:!0,configurable:!0})}})},{119:119,29:29,3:3,33:33,72:72,74:74}],290:[function(t,n,r){"use strict";var e=t(33),i=t(119),o=t(3),u=t(72);t(29)&&e(e.P+t(74),"Object",{__defineSetter__:function(t,n){u.f(i(this),t,{set:o(n),enumerable:!0,configurable:!0})}})},{119:119,29:29,3:3,33:33,72:72,74:74}],291:[function(t,n,r){var e=t(33),i=t(84)(!0);e(e.S,"Object",{entries:function(t){return i(t)}})},{33:33,84:84}],292:[function(t,n,r){var e=t(33),i=t(85),o=t(117),u=t(75),c=t(24);e(e.S,"Object",{getOwnPropertyDescriptors:function(t){for(var n,r,e=o(t),f=u.f,a=i(e),s={},l=0;a.length>l;)r=f(e,n=a[l++]),void 0!==r&&c(s,n,r);return s}})},{117:117,24:24,33:33,75:75,85:85}],293:[function(t,n,r){"use strict";var e=t(33),i=t(119),o=t(120),u=t(79),c=t(75).f;t(29)&&e(e.P+t(74),"Object",{__lookupGetter__:function(t){var n,r=i(this),e=o(t,!0);do if(n=c(r,e))return n.get;while(r=u(r))}})},{119:119,120:120,29:29,33:33,74:74,75:75,79:79}],294:[function(t,n,r){"use strict";var e=t(33),i=t(119),o=t(120),u=t(79),c=t(75).f;t(29)&&e(e.P+t(74),"Object",{__lookupSetter__:function(t){var n,r=i(this),e=o(t,!0);do if(n=c(r,e))return n.set;while(r=u(r))}})},{119:119,120:120,29:29,33:33,74:74,75:75,79:79}],295:[function(t,n,r){var e=t(33),i=t(84)(!1);e(e.S,"Object",{values:function(t){return i(t)}})},{33:33,84:84}],296:[function(t,n,r){"use strict";var e=t(33),i=t(40),o=t(23),u=t(68)(),c=t(128)("observable"),f=t(3),a=t(7),s=t(6),l=t(93),h=t(42),v=t(39),p=v.RETURN,d=function(t){return null==t?void 0:f(t)},g=function(t){var n=t._c;n&&(t._c=void 0,n())},y=function(t){return void 0===t._o},m=function(t){y(t)||(t._o=void 0,g(t))},b=function(t,n){a(t),this._c=void 0,this._o=t,t=new w(this);try{var r=n(t),e=r;null!=r&&("function"==typeof r.unsubscribe?r=function(){e.unsubscribe()}:f(r),this._c=r)}catch(i){return void t.error(i)}y(this)&&g(this)};b.prototype=l({},{unsubscribe:function(){m(this)}});var w=function(t){this._s=t};w.prototype=l({},{next:function(t){var n=this._s;if(!y(n)){var r=n._o;try{var e=d(r.next);if(e)return e.call(r,t)}catch(i){try{m(n)}finally{throw i}}}},error:function(t){var n=this._s;if(y(n))throw t;var r=n._o;n._o=void 0;try{var e=d(r.error);if(!e)throw t;t=e.call(r,t)}catch(i){try{g(n)}finally{throw i}}return g(n),t},complete:function(t){var n=this._s;if(!y(n)){var r=n._o;n._o=void 0;try{var e=d(r.complete);t=e?e.call(r,t):void 0}catch(i){try{g(n)}finally{throw i}}return g(n),t}}});var S=function(t){s(this,S,"Observable","_f")._f=f(t)};l(S.prototype,{subscribe:function(t){return new b(t,this._f)},forEach:function(t){var n=this;return new(o.Promise||i.Promise)(function(r,e){f(t);var i=n.subscribe({next:function(n){try{return t(n)}catch(r){e(r),i.unsubscribe()}},error:e,complete:r})})}}),l(S,{from:function(t){var n="function"==typeof this?this:S,r=d(a(t)[c]);if(r){var e=a(r.call(t));return e.constructor===n?e:new n(function(t){return e.subscribe(t)})}return new n(function(n){var r=!1;return u(function(){if(!r){try{if(v(t,!1,function(t){if(n.next(t),r)return p})===p)return}catch(e){if(r)throw e;return void n.error(e)}n.complete()}}),function(){r=!0}})},of:function(){for(var t=0,n=arguments.length,r=Array(n);t1?arguments[1]:void 0,!1)}})},{109:109,33:33}],314:[function(t,n,r){"use strict";var e=t(33),i=t(109);e(e.P,"String",{padStart:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0,!0)}})},{109:109,33:33}],315:[function(t,n,r){"use strict";t(111)("trimLeft",function(t){return function(){return t(this,1)}},"trimStart")},{111:111}],316:[function(t,n,r){"use strict";t(111)("trimRight",function(t){return function(){return t(this,2)}},"trimEnd")},{111:111}],317:[function(t,n,r){t(126)("asyncIterator")},{126:126}],318:[function(t,n,r){t(126)("observable")},{126:126}],319:[function(t,n,r){var e=t(33);e(e.S,"System",{global:t(40)})},{33:33,40:40}],320:[function(t,n,r){t(97)("WeakMap")},{97:97}],321:[function(t,n,r){t(98)("WeakMap")},{98:98}],322:[function(t,n,r){t(97)("WeakSet")},{97:97}],323:[function(t,n,r){t(98)("WeakSet")},{98:98}],324:[function(t,n,r){for(var e=t(141),i=t(81),o=t(94),u=t(40),c=t(42),f=t(58),a=t(128),s=a("iterator"),l=a("toStringTag"),h=f.Array,v={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},p=i(v),d=0;d=0;--e){var i=this.tryEntries[e],o=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var u=m.call(i,"catchLoc"),c=m.call(i,"finallyLoc");if(u&&c){if(this.prev=0;--r){var e=this.tryEntries[r];if(e.tryLoc<=this.prev&&m.call(e,"finallyLoc")&&this.prev=0;--n){var r=this.tryEntries[n];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),h(r),A}},"catch":function(t){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc===t){var e=r.completion;if("throw"===e.type){var i=e.arg;h(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:p(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=g),A}}}("object"==typeof t?t:"object"==typeof window?window:"object"==typeof self?self:this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[1]); //# sourceMappingURL=es2015.js.map diff --git a/misago/static/misago/js/es2015.js.map b/misago/static/misago/js/es2015.js.map index 4cdee34936..7e5045a63b 100644 --- a/misago/static/misago/js/es2015.js.map +++ b/misago/static/misago/js/es2015.js.map @@ -1 +1 @@ -{"version":3,"sources":["es2015.js"],"names":["e","t","n","r","s","o","u","a","require","i","f","Error","code","l","exports","call","length","1","_dereq_","module","global","define","O","key","value","Object","DEFINE_PROPERTY","writable","configurable","_babelPolyfill","String","prototype","padStart","padEnd","split","forEach","Array","Function","bind","this","self","window","2","295","296","RegExp","escape","119","23","3","it","TypeError","4","cof","msg","18","5","UNSCOPABLES","ArrayProto","undefined","117","40","6","Constructor","name","forbiddenField","7","isObject","49","8","toObject","toIndex","toLength","copyWithin","target","start","len","to","from","end","arguments","count","Math","min","inc","105","108","109","9","aLen","index","endPos","10","forOf","iter","ITERATOR","result","push","37","11","toIObject","IS_INCLUDES","$this","el","fromIndex","107","12","ctx","IObject","asc","TYPE","$create","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","create","callbackfn","that","val","res","15","25","45","13","aFunction","memo","isRight","14","isArray","SPECIES","original","C","constructor","47","speciesConstructor","16","invoke","arraySlice","slice","factories","construct","F","args","join","fn","partArgs","bound","concat","44","17","TAG","ARG","tryGet","T","B","callee","toString","19","dP","redefineAll","anInstance","defined","$iterDefine","step","setSpecies","DESCRIPTORS","fastKey","SIZE","getEntry","entry","_i","_f","k","getConstructor","wrapper","NAME","ADDER","iterable","_l","clear","data","p","delete","next","prev","v","has","get","def","setStrong","iterated","kind","_t","_k","27","28","53","55","62","66","67","86","91","20","classof","21","getWeak","anObject","createArrayMethod","$has","arrayFind","arrayFindIndex","id","uncaughtFrozenStore","UncaughtFrozenStore","findUncaughtFrozen","store","set","splice","ufstore","39","22","$export","redefine","meta","fails","$iterDetect","setToStringTag","inheritIfRequired","methods","common","IS_WEAK","Base","proto","fixMethod","KEY","b","entries","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","NEED","G","W","32","34","38","43","54","87","92","core","version","__e","24","$defineProperty","createDesc","object","85","c","apply","26","toPrimitive","NUMBER","hint","110","defineProperty","29","document","is","createElement","30","31","getKeys","gOPS","pIE","getSymbols","symbols","isEnum","73","76","77","hide","PROTOTYPE","type","source","own","out","exp","IS_FORCED","IS_GLOBAL","IS_STATIC","S","IS_PROTO","P","IS_BIND","expProto","U","R","33","MATCH","re","exec","35","wks","SYMBOL","fns","strfn","rxfn","string","arg","36","ignoreCase","multiline","unicode","sticky","isArrayIter","getIterFn","BREAK","RETURN","iterator","iterFn","done","118","46","51","__g","hasOwnProperty","41","documentElement","42","setPrototypeOf","90","un","propertyIsEnumerable","Iterators","56","48","floor","isFinite","50","isRegExp","ret","52","descriptor","IteratorPrototype","LIBRARY","$iterCreate","getPrototypeOf","BUGGY","keys","FF_ITERATOR","KEYS","VALUES","returnThis","DEFAULT","IS_SET","FORCED","getMethod","DEF_VALUES","VALUES_BUG","$native","$default","$entries","$anyNative","values","58","74","SAFE_CLOSING","riter","skipClosing","safe","arr","57","59","$expm1","expm1","x","60","log1p","log","61","sign","META","setDesc","isExtensible","FREEZE","preventExtensions","setMeta","w","onFreeze","114","63","Map","shared","getOrCreateMetadataMap","targetKey","targetMetadata","keyMetadata","ordinaryHasOwnMetadata","MetadataKey","metadataMap","ordinaryGetOwnMetadata","ordinaryDefineOwnMetadata","MetadataValue","ordinaryOwnMetadataKeys","_","toMetaKey","map","149","255","94","64","macrotask","Observer","MutationObserver","WebKitMutationObserver","process","Promise","isNode","head","last","notify","flush","parent","domain","exit","enter","nextTick","toggle","node","createTextNode","observe","characterData","resolve","promise","then","task","104","65","$assign","assign","A","Symbol","K","j","dPs","enumBugKeys","IE_PROTO","Empty","createDict","iframeDocument","iframe","lt","gt","style","display","appendChild","src","contentWindow","open","write","close","Properties","68","93","IE8_DOM_DEFINE","Attributes","defineProperties","69","random","__defineSetter__","70","gOPD","getOwnPropertyDescriptor","71","gOPN","windowNames","getOwnPropertyNames","getWindowNames","72","$keys","hiddenKeys","75","getOwnPropertySymbols","ObjectProto","arrayIndexOf","names","78","79","isEntries","80","Reflect","ownKeys","81","$parseFloat","parseFloat","$trim","trim","Infinity","str","charAt","102","103","82","$parseInt","parseInt","ws","hex","radix","test","83","path","pargs","holder","84","bitmap","enumerable","SRC","TO_STRING","$toString","TPL","inspectSource","isFunction","88","regExp","replace","replacer","part","89","y","check","buggy","__proto__","tag","stat","uid","SHARED","95","D","96","method","97","toInteger","pos","charCodeAt","106","98","searchString","99","quot","createHTML","attribute","p1","toLowerCase","100","repeat","maxLength","fillString","left","stringLength","fillStr","intMaxLength","fillLen","stringFiller","ceil","101","RangeError","spaces","space","non","ltrim","rtrim","exporter","ALIAS","FORCE","defer","channel","port","html","cel","setTask","setImmediate","clearTask","clearImmediate","MessageChannel","counter","queue","ONREADYSTATECHANGE","run","listener","event","port2","port1","onmessage","postMessage","addEventListener","importScripts","removeChild","setTimeout","max","isNaN","valueOf","111","$typed","$buffer","propertyDesc","same","createArrayIncludes","ArrayIterators","arrayFill","arrayCopyWithin","$DP","$GOPD","Uint8Array","ARRAY_BUFFER","SHARED_BUFFER","BYTES_PER_ELEMENT","$ArrayBuffer","ArrayBuffer","$DataView","DataView","arrayForEach","arrayFilter","arraySome","arrayEvery","arrayIncludes","arrayValues","arrayKeys","arrayEntries","arrayLastIndexOf","lastIndexOf","arrayReduce","reduce","arrayReduceRight","reduceRight","arrayJoin","arraySort","sort","arrayToString","arrayToLocaleString","toLocaleString","TYPED_CONSTRUCTOR","DEF_CONSTRUCTOR","ALL_CONSTRUCTORS","CONSTR","TYPED_ARRAY","TYPED","VIEW","WRONG_LENGTH","$map","allocate","LITTLE_ENDIAN","Uint16Array","buffer","FORCED_SET","strictToLength","SAME","number","toOffset","BYTES","offset","validate","speciesFromList","list","fromList","addGetter","internal","_d","$from","mapfn","mapping","$of","TO_LOCALE_BUG","$toLocaleString","every","fill","filter","find","predicate","findIndex","indexOf","searchElement","includes","separator","reverse","middle","some","comparefn","subarray","begin","$begin","byteOffset","$slice","$set","arrayLike","$iterators","isTAIndex","$getDesc","$setDesc","desc","$TypedArrayPrototype$","CLAMPED","ISNT_UINT8","GETTER","SETTER","TypedArray","TAC","ABV","TypedArrayPrototype","getter","setter","round","addElement","$offset","$length","byteLength","klass","$len","$nativeIterator","CORRECT_ITER_NAME","$iterator","of","112","113","130","DATA_VIEW","WRONG_INDEX","BaseBuffer","abs","pow","LN2","BUFFER","BYTE_LENGTH","BYTE_OFFSET","$BUFFER","$LENGTH","$OFFSET","packIEEE754","mLen","nBytes","m","eLen","eMax","eBias","rt","unpackIEEE754","nBits","NaN","unpackI32","bytes","packI8","packI16","packI32","packF64","packF32","view","isLittleEndian","numIndex","intIndex","_b","pack","conversion","validateArrayBufferArguments","numberLength","ArrayBufferProto","$setInt8","setInt8","getInt8","setUint8","bufferLength","getUint8","getInt16","getUint16","getInt32","getUint32","getFloat32","getFloat64","setInt16","setUint16","setInt32","setUint32","setFloat32","setFloat64","Typed","TypedArrayConstructors","px","115","wksExt","$Symbol","116","USE_SYMBOL","$exports","getIteratorMethod","$re","120","121","$every","122","123","$filter","124","$find","forced","125","126","$forEach","STRICT","127","createProperty","128","$indexOf","NEGATIVE_ZERO","129","addToUnscopables","Arguments","131","132","133","134","135","$reduce","136","137","upTo","size","cloned","138","$some","139","$sort","140","141","now","Date","getTime","142","lz","num","toISOString","d","getUTCFullYear","getUTCMilliseconds","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","143","toJSON","pv","144","TO_PRIMITIVE","145","DateProto","INVALID_DATE","146","147","HAS_INSTANCE","FunctionProto","148","FProto","nameRE","match","strong","150","sqrt","$acosh","acosh","Number","MAX_VALUE","151","asinh","$asinh","152","$atanh","atanh","153","cbrt","154","clz32","LOG2E","155","cosh","156","157","EPSILON","EPSILON32","MAX32","MIN32","roundTiesToEven","fround","$abs","$sign","158","hypot","value1","value2","div","sum","larg","159","$imul","imul","UINT16","xn","yn","xl","yl","160","log10","LN10","161","162","log2","163","164","sinh","E","165","tanh","166","trunc","167","$Number","BROKEN_COF","TRIM","toNumber","argument","third","maxCode","first","digits","168","169","_isFinite","170","isInteger","171","172","isSafeInteger","173","MAX_SAFE_INTEGER","174","MIN_SAFE_INTEGER","175","176","177","aNumberValue","$toFixed","toFixed","ERROR","ZERO","multiply","c2","divide","numToString","acc","x2","fractionDigits","z","178","$fails","$toPrecision","toPrecision","precision","179","180","181","182","183","$freeze","184","$getOwnPropertyDescriptor","185","186","$getPrototypeOf","187","$isExtensible","188","$isFrozen","189","$isSealed","190","191","192","$preventExtensions","193","$seal","194","195","196","197","198","Internal","GenericPromiseCapability","Wrapper","microtask","PROMISE","$Promise","empty","USE_NATIVE","FakePromise","PromiseRejectionEvent","sameConstructor","isThenable","newPromiseCapability","PromiseCapability","reject","$$resolve","$$reject","perform","error","isReject","_n","chain","_c","_v","ok","_s","reaction","handler","fail","_h","onHandleUnhandled","onUnhandled","abrupt","console","isUnhandled","emit","onunhandledrejection","reason","_a","onrejectionhandled","$reject","_w","$resolve","executor","err","onFulfilled","onRejected","catch","capability","all","remaining","$index","alreadyCalled","race","199","rApply","fApply","thisArgument","argumentsList","L","200","rConstruct","NEW_TARGET_BUG","ARGS_BUG","Target","newTarget","$args","201","propertyKey","attributes","202","deleteProperty","203","Enumerate","enumerate","204","205","getProto","206","receiver","207","208","209","210","211","setProto","212","V","existingDescriptor","ownDesc","213","$flags","$RegExp","re1","re2","CORRECT_NEW","tiRE","piRE","fiU","proxy","214","flags","215","$match","regexp","216","REPLACE","$replace","searchValue","replaceValue","217","SEARCH","$search","218","SPLIT","$split","_split","$push","$SPLIT","LENGTH","LAST_INDEX","NPCG","limit","separator2","lastIndex","lastLength","output","lastLastIndex","splitLimit","separatorCopy","219","220","add","221","222","223","224","225","$at","codePointAt","226","context","ENDS_WITH","$endsWith","endsWith","endPosition","search","227","228","color","229","230","fromCharCode","$fromCodePoint","fromCodePoint","231","INCLUDES","232","233","point","234","url","235","raw","callSite","tpl","236","237","238","STARTS_WITH","$startsWith","startsWith","239","240","241","242","243","wksDefine","keyOf","enumKeys","_create","gOPNExt","$JSON","JSON","_stringify","stringify","HIDDEN","SymbolRegistry","AllSymbols","OPSymbols","QObject","findChild","setSymbolDesc","protoDesc","wrap","sym","isSymbol","$defineProperties","$propertyIsEnumerable","$getOwnPropertyNames","$getOwnPropertySymbols","IS_OP","for","keyFor","useSetter","useSimple","$replacer","244","$isView","isView","final","viewS","viewT","245","246","init","247","248","249","250","251","252","253","254","InternalMap","each","weak","tmp","$WeakMap","freeze","256","257","$includes","258","asap","259","isError","260","261","iaddh","x0","x1","y0","y1","$x0","$x1","$y0","262","imulh","$u","$v","u0","v0","u1","v1","263","isubh","264","umulh","265","__defineGetter__","266","267","268","getOwnPropertyDescriptors","getDesc","269","__lookupGetter__","270","__lookupSetter__","271","$values","272","OBSERVABLE","cleanupSubscription","subscription","cleanup","subscriptionClosed","_o","closeSubscription","Subscription","observer","subscriber","SubscriptionObserver","unsubscribe","complete","$Observable","subscribe","observable","items","Observable","273","metadata","defineMetadata","metadataKey","metadataValue","274","deleteMetadata","275","Set","ordinaryMetadataKeys","oKeys","pKeys","getMetadataKeys","276","ordinaryGetMetadata","hasOwn","getMetadata","277","getOwnMetadataKeys","278","getOwnMetadata","279","ordinaryHasMetadata","hasMetadata","280","hasOwnMetadata","281","282","283","at","284","getFlags","RegExpProto","$RegExpStringIterator","_r","matchAll","rx","285","$pad","286","287","288","289","290","291","292","TO_STRING_TAG","ArrayValues","collections","Collection","293","$task","294","partial","navigator","MSIE","userAgent","time","setInterval","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","Context","_invoke","makeInvokeMethod","tryCatch","obj","GeneratorFunction","GeneratorFunctionPrototype","defineIteratorMethods","AwaitArgument","AsyncIterator","record","unwrapped","enqueue","callInvokeWithMethodAndArg","previousPromise","state","GenStateSuspendedStart","GenStateExecuting","GenStateCompleted","doneResult","delegate","returnMethod","info","GenStateSuspendedYield","resultName","nextLoc","sent","_sent","dispatchException","ContinueSentinel","pushTryEntry","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iteratorMethod","iteratorSymbol","toStringTagSymbol","toStringTag","inModule","runtime","regeneratorRuntime","Gp","displayName","isGeneratorFunction","genFun","ctor","mark","awrap","async","pop","skipTempReset","stop","rootEntry","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","finish","thrown","delegateYield"],"mappings":"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AAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EA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","file":"es2015.js","sourcesContent":["(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o 2 ? arguments[2] : undefined\n , count = Math.min((end === undefined ? len : toIndex(end, len)) - from, len - to)\n , inc = 1;\n if(from < to && to < from + count){\n inc = -1;\n from += count - 1;\n to += count - 1;\n }\n while(count-- > 0){\n if(from in O)O[to] = O[from];\n else delete O[to];\n to += inc;\n from += inc;\n } return O;\n};\n},{\"105\":105,\"108\":108,\"109\":109}],9:[function(_dereq_,module,exports){\n// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)\n'use strict';\nvar toObject = _dereq_(109)\n , toIndex = _dereq_(105)\n , toLength = _dereq_(108);\nmodule.exports = function fill(value /*, start = 0, end = @length */){\n var O = toObject(this)\n , length = toLength(O.length)\n , aLen = arguments.length\n , index = toIndex(aLen > 1 ? arguments[1] : undefined, length)\n , end = aLen > 2 ? arguments[2] : undefined\n , endPos = end === undefined ? length : toIndex(end, length);\n while(endPos > index)O[index++] = value;\n return O;\n};\n},{\"105\":105,\"108\":108,\"109\":109}],10:[function(_dereq_,module,exports){\nvar forOf = _dereq_(37);\n\nmodule.exports = function(iter, ITERATOR){\n var result = [];\n forOf(iter, false, result.push, result, ITERATOR);\n return result;\n};\n\n},{\"37\":37}],11:[function(_dereq_,module,exports){\n// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = _dereq_(107)\n , toLength = _dereq_(108)\n , toIndex = _dereq_(105);\nmodule.exports = function(IS_INCLUDES){\n return function($this, el, fromIndex){\n var O = toIObject($this)\n , length = toLength(O.length)\n , index = toIndex(fromIndex, length)\n , value;\n // Array#includes uses SameValueZero equality algorithm\n if(IS_INCLUDES && el != el)while(length > index){\n value = O[index++];\n if(value != value)return true;\n // Array#toIndex ignores holes, Array#includes - not\n } else for(;length > index; index++)if(IS_INCLUDES || index in O){\n if(O[index] === el)return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n},{\"105\":105,\"107\":107,\"108\":108}],12:[function(_dereq_,module,exports){\n// 0 -> Array#forEach\n// 1 -> Array#map\n// 2 -> Array#filter\n// 3 -> Array#some\n// 4 -> Array#every\n// 5 -> Array#find\n// 6 -> Array#findIndex\nvar ctx = _dereq_(25)\n , IObject = _dereq_(45)\n , toObject = _dereq_(109)\n , toLength = _dereq_(108)\n , asc = _dereq_(15);\nmodule.exports = function(TYPE, $create){\n var IS_MAP = TYPE == 1\n , IS_FILTER = TYPE == 2\n , IS_SOME = TYPE == 3\n , IS_EVERY = TYPE == 4\n , IS_FIND_INDEX = TYPE == 6\n , NO_HOLES = TYPE == 5 || IS_FIND_INDEX\n , create = $create || asc;\n return function($this, callbackfn, that){\n var O = toObject($this)\n , self = IObject(O)\n , f = ctx(callbackfn, that, 3)\n , length = toLength(self.length)\n , index = 0\n , result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined\n , val, res;\n for(;length > index; index++)if(NO_HOLES || index in self){\n val = self[index];\n res = f(val, index, O);\n if(TYPE){\n if(IS_MAP)result[index] = res; // map\n else if(res)switch(TYPE){\n case 3: return true; // some\n case 5: return val; // find\n case 6: return index; // findIndex\n case 2: result.push(val); // filter\n } else if(IS_EVERY)return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;\n };\n};\n},{\"108\":108,\"109\":109,\"15\":15,\"25\":25,\"45\":45}],13:[function(_dereq_,module,exports){\nvar aFunction = _dereq_(3)\n , toObject = _dereq_(109)\n , IObject = _dereq_(45)\n , toLength = _dereq_(108);\n\nmodule.exports = function(that, callbackfn, aLen, memo, isRight){\n aFunction(callbackfn);\n var O = toObject(that)\n , self = IObject(O)\n , length = toLength(O.length)\n , index = isRight ? length - 1 : 0\n , i = isRight ? -1 : 1;\n if(aLen < 2)for(;;){\n if(index in self){\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if(isRight ? index < 0 : length <= index){\n throw TypeError('Reduce of empty array with no initial value');\n }\n }\n for(;isRight ? index >= 0 : length > index; index += i)if(index in self){\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n};\n},{\"108\":108,\"109\":109,\"3\":3,\"45\":45}],14:[function(_dereq_,module,exports){\nvar isObject = _dereq_(49)\n , isArray = _dereq_(47)\n , SPECIES = _dereq_(117)('species');\n\nmodule.exports = function(original){\n var C;\n if(isArray(original)){\n C = original.constructor;\n // cross-realm fallback\n if(typeof C == 'function' && (C === Array || isArray(C.prototype)))C = undefined;\n if(isObject(C)){\n C = C[SPECIES];\n if(C === null)C = undefined;\n }\n } return C === undefined ? Array : C;\n};\n},{\"117\":117,\"47\":47,\"49\":49}],15:[function(_dereq_,module,exports){\n// 9.4.2.3 ArraySpeciesCreate(originalArray, length)\nvar speciesConstructor = _dereq_(14);\n\nmodule.exports = function(original, length){\n return new (speciesConstructor(original))(length);\n};\n},{\"14\":14}],16:[function(_dereq_,module,exports){\n'use strict';\nvar aFunction = _dereq_(3)\n , isObject = _dereq_(49)\n , invoke = _dereq_(44)\n , arraySlice = [].slice\n , factories = {};\n\nvar construct = function(F, len, args){\n if(!(len in factories)){\n for(var n = [], i = 0; i < len; i++)n[i] = 'a[' + i + ']';\n factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');\n } return factories[len](F, args);\n};\n\nmodule.exports = Function.bind || function bind(that /*, args... */){\n var fn = aFunction(this)\n , partArgs = arraySlice.call(arguments, 1);\n var bound = function(/* args... */){\n var args = partArgs.concat(arraySlice.call(arguments));\n return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);\n };\n if(isObject(fn.prototype))bound.prototype = fn.prototype;\n return bound;\n};\n},{\"3\":3,\"44\":44,\"49\":49}],17:[function(_dereq_,module,exports){\n// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = _dereq_(18)\n , TAG = _dereq_(117)('toStringTag')\n // ES3 wrong here\n , ARG = cof(function(){ return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function(it, key){\n try {\n return it[key];\n } catch(e){ /* empty */ }\n};\n\nmodule.exports = function(it){\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n},{\"117\":117,\"18\":18}],18:[function(_dereq_,module,exports){\nvar toString = {}.toString;\n\nmodule.exports = function(it){\n return toString.call(it).slice(8, -1);\n};\n},{}],19:[function(_dereq_,module,exports){\n'use strict';\nvar dP = _dereq_(67).f\n , create = _dereq_(66)\n , redefineAll = _dereq_(86)\n , ctx = _dereq_(25)\n , anInstance = _dereq_(6)\n , defined = _dereq_(27)\n , forOf = _dereq_(37)\n , $iterDefine = _dereq_(53)\n , step = _dereq_(55)\n , setSpecies = _dereq_(91)\n , DESCRIPTORS = _dereq_(28)\n , fastKey = _dereq_(62).fastKey\n , SIZE = DESCRIPTORS ? '_s' : 'size';\n\nvar getEntry = function(that, key){\n // fast case\n var index = fastKey(key), entry;\n if(index !== 'F')return that._i[index];\n // frozen object case\n for(entry = that._f; entry; entry = entry.n){\n if(entry.k == key)return entry;\n }\n};\n\nmodule.exports = {\n getConstructor: function(wrapper, NAME, IS_MAP, ADDER){\n var C = wrapper(function(that, iterable){\n anInstance(that, C, NAME, '_i');\n that._i = create(null); // index\n that._f = undefined; // first entry\n that._l = undefined; // last entry\n that[SIZE] = 0; // size\n if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.1.3.1 Map.prototype.clear()\n // 23.2.3.2 Set.prototype.clear()\n clear: function clear(){\n for(var that = this, data = that._i, entry = that._f; entry; entry = entry.n){\n entry.r = true;\n if(entry.p)entry.p = entry.p.n = undefined;\n delete data[entry.i];\n }\n that._f = that._l = undefined;\n that[SIZE] = 0;\n },\n // 23.1.3.3 Map.prototype.delete(key)\n // 23.2.3.4 Set.prototype.delete(value)\n 'delete': function(key){\n var that = this\n , entry = getEntry(that, key);\n if(entry){\n var next = entry.n\n , prev = entry.p;\n delete that._i[entry.i];\n entry.r = true;\n if(prev)prev.n = next;\n if(next)next.p = prev;\n if(that._f == entry)that._f = next;\n if(that._l == entry)that._l = prev;\n that[SIZE]--;\n } return !!entry;\n },\n // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)\n // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)\n forEach: function forEach(callbackfn /*, that = undefined */){\n anInstance(this, C, 'forEach');\n var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3)\n , entry;\n while(entry = entry ? entry.n : this._f){\n f(entry.v, entry.k, this);\n // revert to the last existing entry\n while(entry && entry.r)entry = entry.p;\n }\n },\n // 23.1.3.7 Map.prototype.has(key)\n // 23.2.3.7 Set.prototype.has(value)\n has: function has(key){\n return !!getEntry(this, key);\n }\n });\n if(DESCRIPTORS)dP(C.prototype, 'size', {\n get: function(){\n return defined(this[SIZE]);\n }\n });\n return C;\n },\n def: function(that, key, value){\n var entry = getEntry(that, key)\n , prev, index;\n // change existing entry\n if(entry){\n entry.v = value;\n // create new entry\n } else {\n that._l = entry = {\n i: index = fastKey(key, true), // <- index\n k: key, // <- key\n v: value, // <- value\n p: prev = that._l, // <- previous entry\n n: undefined, // <- next entry\n r: false // <- removed\n };\n if(!that._f)that._f = entry;\n if(prev)prev.n = entry;\n that[SIZE]++;\n // add to index\n if(index !== 'F')that._i[index] = entry;\n } return that;\n },\n getEntry: getEntry,\n setStrong: function(C, NAME, IS_MAP){\n // add .keys, .values, .entries, [@@iterator]\n // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11\n $iterDefine(C, NAME, function(iterated, kind){\n this._t = iterated; // target\n this._k = kind; // kind\n this._l = undefined; // previous\n }, function(){\n var that = this\n , kind = that._k\n , entry = that._l;\n // revert to the last existing entry\n while(entry && entry.r)entry = entry.p;\n // get next entry\n if(!that._t || !(that._l = entry = entry ? entry.n : that._t._f)){\n // or finish the iteration\n that._t = undefined;\n return step(1);\n }\n // return step by kind\n if(kind == 'keys' )return step(0, entry.k);\n if(kind == 'values')return step(0, entry.v);\n return step(0, [entry.k, entry.v]);\n }, IS_MAP ? 'entries' : 'values' , !IS_MAP, true);\n\n // add [@@species], 23.1.2.2, 23.2.2.2\n setSpecies(NAME);\n }\n};\n},{\"25\":25,\"27\":27,\"28\":28,\"37\":37,\"53\":53,\"55\":55,\"6\":6,\"62\":62,\"66\":66,\"67\":67,\"86\":86,\"91\":91}],20:[function(_dereq_,module,exports){\n// https://github.com/DavidBruant/Map-Set.prototype.toJSON\nvar classof = _dereq_(17)\n , from = _dereq_(10);\nmodule.exports = function(NAME){\n return function toJSON(){\n if(classof(this) != NAME)throw TypeError(NAME + \"#toJSON isn't generic\");\n return from(this);\n };\n};\n},{\"10\":10,\"17\":17}],21:[function(_dereq_,module,exports){\n'use strict';\nvar redefineAll = _dereq_(86)\n , getWeak = _dereq_(62).getWeak\n , anObject = _dereq_(7)\n , isObject = _dereq_(49)\n , anInstance = _dereq_(6)\n , forOf = _dereq_(37)\n , createArrayMethod = _dereq_(12)\n , $has = _dereq_(39)\n , arrayFind = createArrayMethod(5)\n , arrayFindIndex = createArrayMethod(6)\n , id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function(that){\n return that._l || (that._l = new UncaughtFrozenStore);\n};\nvar UncaughtFrozenStore = function(){\n this.a = [];\n};\nvar findUncaughtFrozen = function(store, key){\n return arrayFind(store.a, function(it){\n return it[0] === key;\n });\n};\nUncaughtFrozenStore.prototype = {\n get: function(key){\n var entry = findUncaughtFrozen(this, key);\n if(entry)return entry[1];\n },\n has: function(key){\n return !!findUncaughtFrozen(this, key);\n },\n set: function(key, value){\n var entry = findUncaughtFrozen(this, key);\n if(entry)entry[1] = value;\n else this.a.push([key, value]);\n },\n 'delete': function(key){\n var index = arrayFindIndex(this.a, function(it){\n return it[0] === key;\n });\n if(~index)this.a.splice(index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function(wrapper, NAME, IS_MAP, ADDER){\n var C = wrapper(function(that, iterable){\n anInstance(that, C, NAME, '_i');\n that._i = id++; // collection id\n that._l = undefined; // leak store for uncaught frozen objects\n if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.3.3.2 WeakMap.prototype.delete(key)\n // 23.4.3.3 WeakSet.prototype.delete(value)\n 'delete': function(key){\n if(!isObject(key))return false;\n var data = getWeak(key);\n if(data === true)return uncaughtFrozenStore(this)['delete'](key);\n return data && $has(data, this._i) && delete data[this._i];\n },\n // 23.3.3.4 WeakMap.prototype.has(key)\n // 23.4.3.4 WeakSet.prototype.has(value)\n has: function has(key){\n if(!isObject(key))return false;\n var data = getWeak(key);\n if(data === true)return uncaughtFrozenStore(this).has(key);\n return data && $has(data, this._i);\n }\n });\n return C;\n },\n def: function(that, key, value){\n var data = getWeak(anObject(key), true);\n if(data === true)uncaughtFrozenStore(that).set(key, value);\n else data[that._i] = value;\n return that;\n },\n ufstore: uncaughtFrozenStore\n};\n},{\"12\":12,\"37\":37,\"39\":39,\"49\":49,\"6\":6,\"62\":62,\"7\":7,\"86\":86}],22:[function(_dereq_,module,exports){\n'use strict';\nvar global = _dereq_(38)\n , $export = _dereq_(32)\n , redefine = _dereq_(87)\n , redefineAll = _dereq_(86)\n , meta = _dereq_(62)\n , forOf = _dereq_(37)\n , anInstance = _dereq_(6)\n , isObject = _dereq_(49)\n , fails = _dereq_(34)\n , $iterDetect = _dereq_(54)\n , setToStringTag = _dereq_(92)\n , inheritIfRequired = _dereq_(43);\n\nmodule.exports = function(NAME, wrapper, methods, common, IS_MAP, IS_WEAK){\n var Base = global[NAME]\n , C = Base\n , ADDER = IS_MAP ? 'set' : 'add'\n , proto = C && C.prototype\n , O = {};\n var fixMethod = function(KEY){\n var fn = proto[KEY];\n redefine(proto, KEY,\n KEY == 'delete' ? function(a){\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'has' ? function has(a){\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'get' ? function get(a){\n return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'add' ? function add(a){ fn.call(this, a === 0 ? 0 : a); return this; }\n : function set(a, b){ fn.call(this, a === 0 ? 0 : a, b); return this; }\n );\n };\n if(typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function(){\n new C().entries().next();\n }))){\n // create collection constructor\n C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);\n redefineAll(C.prototype, methods);\n meta.NEED = true;\n } else {\n var instance = new C\n // early implementations not supports chaining\n , HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n , THROWS_ON_PRIMITIVES = fails(function(){ instance.has(1); })\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n , ACCEPT_ITERABLES = $iterDetect(function(iter){ new C(iter); }) // eslint-disable-line no-new\n // for early implementations -0 and +0 not the same\n , BUGGY_ZERO = !IS_WEAK && fails(function(){\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new C()\n , index = 5;\n while(index--)$instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n if(!ACCEPT_ITERABLES){ \n C = wrapper(function(target, iterable){\n anInstance(target, C, NAME);\n var that = inheritIfRequired(new Base, target, C);\n if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);\n return that;\n });\n C.prototype = proto;\n proto.constructor = C;\n }\n if(THROWS_ON_PRIMITIVES || BUGGY_ZERO){\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n if(BUGGY_ZERO || HASNT_CHAINING)fixMethod(ADDER);\n // weak collections should not contains .clear method\n if(IS_WEAK && proto.clear)delete proto.clear;\n }\n\n setToStringTag(C, NAME);\n\n O[NAME] = C;\n $export($export.G + $export.W + $export.F * (C != Base), O);\n\n if(!IS_WEAK)common.setStrong(C, NAME, IS_MAP);\n\n return C;\n};\n},{\"32\":32,\"34\":34,\"37\":37,\"38\":38,\"43\":43,\"49\":49,\"54\":54,\"6\":6,\"62\":62,\"86\":86,\"87\":87,\"92\":92}],23:[function(_dereq_,module,exports){\nvar core = module.exports = {version: '2.4.0'};\nif(typeof __e == 'number')__e = core; // eslint-disable-line no-undef\n},{}],24:[function(_dereq_,module,exports){\n'use strict';\nvar $defineProperty = _dereq_(67)\n , createDesc = _dereq_(85);\n\nmodule.exports = function(object, index, value){\n if(index in object)$defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n},{\"67\":67,\"85\":85}],25:[function(_dereq_,module,exports){\n// optional / simple context binding\nvar aFunction = _dereq_(3);\nmodule.exports = function(fn, that, length){\n aFunction(fn);\n if(that === undefined)return fn;\n switch(length){\n case 1: return function(a){\n return fn.call(that, a);\n };\n case 2: return function(a, b){\n return fn.call(that, a, b);\n };\n case 3: return function(a, b, c){\n return fn.call(that, a, b, c);\n };\n }\n return function(/* ...args */){\n return fn.apply(that, arguments);\n };\n};\n},{\"3\":3}],26:[function(_dereq_,module,exports){\n'use strict';\nvar anObject = _dereq_(7)\n , toPrimitive = _dereq_(110)\n , NUMBER = 'number';\n\nmodule.exports = function(hint){\n if(hint !== 'string' && hint !== NUMBER && hint !== 'default')throw TypeError('Incorrect hint');\n return toPrimitive(anObject(this), hint != NUMBER);\n};\n},{\"110\":110,\"7\":7}],27:[function(_dereq_,module,exports){\n// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function(it){\n if(it == undefined)throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n},{}],28:[function(_dereq_,module,exports){\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !_dereq_(34)(function(){\n return Object.defineProperty({}, 'a', {get: function(){ return 7; }}).a != 7;\n});\n},{\"34\":34}],29:[function(_dereq_,module,exports){\nvar isObject = _dereq_(49)\n , document = _dereq_(38).document\n // in old IE typeof document.createElement is 'object'\n , is = isObject(document) && isObject(document.createElement);\nmodule.exports = function(it){\n return is ? document.createElement(it) : {};\n};\n},{\"38\":38,\"49\":49}],30:[function(_dereq_,module,exports){\n// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n},{}],31:[function(_dereq_,module,exports){\n// all enumerable object keys, includes symbols\nvar getKeys = _dereq_(76)\n , gOPS = _dereq_(73)\n , pIE = _dereq_(77);\nmodule.exports = function(it){\n var result = getKeys(it)\n , getSymbols = gOPS.f;\n if(getSymbols){\n var symbols = getSymbols(it)\n , isEnum = pIE.f\n , i = 0\n , key;\n while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))result.push(key);\n } return result;\n};\n},{\"73\":73,\"76\":76,\"77\":77}],32:[function(_dereq_,module,exports){\nvar global = _dereq_(38)\n , core = _dereq_(23)\n , hide = _dereq_(40)\n , redefine = _dereq_(87)\n , ctx = _dereq_(25)\n , PROTOTYPE = 'prototype';\n\nvar $export = function(type, name, source){\n var IS_FORCED = type & $export.F\n , IS_GLOBAL = type & $export.G\n , IS_STATIC = type & $export.S\n , IS_PROTO = type & $export.P\n , IS_BIND = type & $export.B\n , target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE]\n , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})\n , expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {})\n , key, own, out, exp;\n if(IS_GLOBAL)source = name;\n for(key in source){\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n // export native or passed\n out = (own ? target : source)[key];\n // bind timers to global for call from export context\n exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // extend global\n if(target)redefine(target, key, out, type & $export.U);\n // export\n if(exports[key] != out)hide(exports, key, exp);\n if(IS_PROTO && expProto[key] != out)expProto[key] = out;\n }\n};\nglobal.core = core;\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library` \nmodule.exports = $export;\n},{\"23\":23,\"25\":25,\"38\":38,\"40\":40,\"87\":87}],33:[function(_dereq_,module,exports){\nvar MATCH = _dereq_(117)('match');\nmodule.exports = function(KEY){\n var re = /./;\n try {\n '/./'[KEY](re);\n } catch(e){\n try {\n re[MATCH] = false;\n return !'/./'[KEY](re);\n } catch(f){ /* empty */ }\n } return true;\n};\n},{\"117\":117}],34:[function(_dereq_,module,exports){\nmodule.exports = function(exec){\n try {\n return !!exec();\n } catch(e){\n return true;\n }\n};\n},{}],35:[function(_dereq_,module,exports){\n'use strict';\nvar hide = _dereq_(40)\n , redefine = _dereq_(87)\n , fails = _dereq_(34)\n , defined = _dereq_(27)\n , wks = _dereq_(117);\n\nmodule.exports = function(KEY, length, exec){\n var SYMBOL = wks(KEY)\n , fns = exec(defined, SYMBOL, ''[KEY])\n , strfn = fns[0]\n , rxfn = fns[1];\n if(fails(function(){\n var O = {};\n O[SYMBOL] = function(){ return 7; };\n return ''[KEY](O) != 7;\n })){\n redefine(String.prototype, KEY, strfn);\n hide(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function(string, arg){ return rxfn.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function(string){ return rxfn.call(string, this); }\n );\n }\n};\n},{\"117\":117,\"27\":27,\"34\":34,\"40\":40,\"87\":87}],36:[function(_dereq_,module,exports){\n'use strict';\n// 21.2.5.3 get RegExp.prototype.flags\nvar anObject = _dereq_(7);\nmodule.exports = function(){\n var that = anObject(this)\n , result = '';\n if(that.global) result += 'g';\n if(that.ignoreCase) result += 'i';\n if(that.multiline) result += 'm';\n if(that.unicode) result += 'u';\n if(that.sticky) result += 'y';\n return result;\n};\n},{\"7\":7}],37:[function(_dereq_,module,exports){\nvar ctx = _dereq_(25)\n , call = _dereq_(51)\n , isArrayIter = _dereq_(46)\n , anObject = _dereq_(7)\n , toLength = _dereq_(108)\n , getIterFn = _dereq_(118)\n , BREAK = {}\n , RETURN = {};\nvar exports = module.exports = function(iterable, entries, fn, that, ITERATOR){\n var iterFn = ITERATOR ? function(){ return iterable; } : getIterFn(iterable)\n , f = ctx(fn, that, entries ? 2 : 1)\n , index = 0\n , length, step, iterator, result;\n if(typeof iterFn != 'function')throw TypeError(iterable + ' is not iterable!');\n // fast case for arrays with default iterator\n if(isArrayIter(iterFn))for(length = toLength(iterable.length); length > index; index++){\n result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);\n if(result === BREAK || result === RETURN)return result;\n } else for(iterator = iterFn.call(iterable); !(step = iterator.next()).done; ){\n result = call(iterator, f, step.value, entries);\n if(result === BREAK || result === RETURN)return result;\n }\n};\nexports.BREAK = BREAK;\nexports.RETURN = RETURN;\n},{\"108\":108,\"118\":118,\"25\":25,\"46\":46,\"51\":51,\"7\":7}],38:[function(_dereq_,module,exports){\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();\nif(typeof __g == 'number')__g = global; // eslint-disable-line no-undef\n},{}],39:[function(_dereq_,module,exports){\nvar hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function(it, key){\n return hasOwnProperty.call(it, key);\n};\n},{}],40:[function(_dereq_,module,exports){\nvar dP = _dereq_(67)\n , createDesc = _dereq_(85);\nmodule.exports = _dereq_(28) ? function(object, key, value){\n return dP.f(object, key, createDesc(1, value));\n} : function(object, key, value){\n object[key] = value;\n return object;\n};\n},{\"28\":28,\"67\":67,\"85\":85}],41:[function(_dereq_,module,exports){\nmodule.exports = _dereq_(38).document && document.documentElement;\n},{\"38\":38}],42:[function(_dereq_,module,exports){\nmodule.exports = !_dereq_(28) && !_dereq_(34)(function(){\n return Object.defineProperty(_dereq_(29)('div'), 'a', {get: function(){ return 7; }}).a != 7;\n});\n},{\"28\":28,\"29\":29,\"34\":34}],43:[function(_dereq_,module,exports){\nvar isObject = _dereq_(49)\n , setPrototypeOf = _dereq_(90).set;\nmodule.exports = function(that, target, C){\n var P, S = target.constructor;\n if(S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf){\n setPrototypeOf(that, P);\n } return that;\n};\n},{\"49\":49,\"90\":90}],44:[function(_dereq_,module,exports){\n// fast apply, http://jsperf.lnkit.com/fast-apply/5\nmodule.exports = function(fn, args, that){\n var un = that === undefined;\n switch(args.length){\n case 0: return un ? fn()\n : fn.call(that);\n case 1: return un ? fn(args[0])\n : fn.call(that, args[0]);\n case 2: return un ? fn(args[0], args[1])\n : fn.call(that, args[0], args[1]);\n case 3: return un ? fn(args[0], args[1], args[2])\n : fn.call(that, args[0], args[1], args[2]);\n case 4: return un ? fn(args[0], args[1], args[2], args[3])\n : fn.call(that, args[0], args[1], args[2], args[3]);\n } return fn.apply(that, args);\n};\n},{}],45:[function(_dereq_,module,exports){\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = _dereq_(18);\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n},{\"18\":18}],46:[function(_dereq_,module,exports){\n// check on default Array iterator\nvar Iterators = _dereq_(56)\n , ITERATOR = _dereq_(117)('iterator')\n , ArrayProto = Array.prototype;\n\nmodule.exports = function(it){\n return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);\n};\n},{\"117\":117,\"56\":56}],47:[function(_dereq_,module,exports){\n// 7.2.2 IsArray(argument)\nvar cof = _dereq_(18);\nmodule.exports = Array.isArray || function isArray(arg){\n return cof(arg) == 'Array';\n};\n},{\"18\":18}],48:[function(_dereq_,module,exports){\n// 20.1.2.3 Number.isInteger(number)\nvar isObject = _dereq_(49)\n , floor = Math.floor;\nmodule.exports = function isInteger(it){\n return !isObject(it) && isFinite(it) && floor(it) === it;\n};\n},{\"49\":49}],49:[function(_dereq_,module,exports){\nmodule.exports = function(it){\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n},{}],50:[function(_dereq_,module,exports){\n// 7.2.8 IsRegExp(argument)\nvar isObject = _dereq_(49)\n , cof = _dereq_(18)\n , MATCH = _dereq_(117)('match');\nmodule.exports = function(it){\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');\n};\n},{\"117\":117,\"18\":18,\"49\":49}],51:[function(_dereq_,module,exports){\n// call something on iterator step with safe closing on error\nvar anObject = _dereq_(7);\nmodule.exports = function(iterator, fn, value, entries){\n try {\n return entries ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch(e){\n var ret = iterator['return'];\n if(ret !== undefined)anObject(ret.call(iterator));\n throw e;\n }\n};\n},{\"7\":7}],52:[function(_dereq_,module,exports){\n'use strict';\nvar create = _dereq_(66)\n , descriptor = _dereq_(85)\n , setToStringTag = _dereq_(92)\n , IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\n_dereq_(40)(IteratorPrototype, _dereq_(117)('iterator'), function(){ return this; });\n\nmodule.exports = function(Constructor, NAME, next){\n Constructor.prototype = create(IteratorPrototype, {next: descriptor(1, next)});\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n},{\"117\":117,\"40\":40,\"66\":66,\"85\":85,\"92\":92}],53:[function(_dereq_,module,exports){\n'use strict';\nvar LIBRARY = _dereq_(58)\n , $export = _dereq_(32)\n , redefine = _dereq_(87)\n , hide = _dereq_(40)\n , has = _dereq_(39)\n , Iterators = _dereq_(56)\n , $iterCreate = _dereq_(52)\n , setToStringTag = _dereq_(92)\n , getPrototypeOf = _dereq_(74)\n , ITERATOR = _dereq_(117)('iterator')\n , BUGGY = !([].keys && 'next' in [].keys()) // Safari has buggy iterators w/o `next`\n , FF_ITERATOR = '@@iterator'\n , KEYS = 'keys'\n , VALUES = 'values';\n\nvar returnThis = function(){ return this; };\n\nmodule.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED){\n $iterCreate(Constructor, NAME, next);\n var getMethod = function(kind){\n if(!BUGGY && kind in proto)return proto[kind];\n switch(kind){\n case KEYS: return function keys(){ return new Constructor(this, kind); };\n case VALUES: return function values(){ return new Constructor(this, kind); };\n } return function entries(){ return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator'\n , DEF_VALUES = DEFAULT == VALUES\n , VALUES_BUG = false\n , proto = Base.prototype\n , $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]\n , $default = $native || getMethod(DEFAULT)\n , $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined\n , $anyNative = NAME == 'Array' ? proto.entries || $native : $native\n , methods, key, IteratorPrototype;\n // Fix native\n if($anyNative){\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base));\n if(IteratorPrototype !== Object.prototype){\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if(!LIBRARY && !has(IteratorPrototype, ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if(DEF_VALUES && $native && $native.name !== VALUES){\n VALUES_BUG = true;\n $default = function values(){ return $native.call(this); };\n }\n // Define iterator\n if((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])){\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if(DEFAULT){\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if(FORCED)for(key in methods){\n if(!(key in proto))redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n},{\"117\":117,\"32\":32,\"39\":39,\"40\":40,\"52\":52,\"56\":56,\"58\":58,\"74\":74,\"87\":87,\"92\":92}],54:[function(_dereq_,module,exports){\nvar ITERATOR = _dereq_(117)('iterator')\n , SAFE_CLOSING = false;\n\ntry {\n var riter = [7][ITERATOR]();\n riter['return'] = function(){ SAFE_CLOSING = true; };\n Array.from(riter, function(){ throw 2; });\n} catch(e){ /* empty */ }\n\nmodule.exports = function(exec, skipClosing){\n if(!skipClosing && !SAFE_CLOSING)return false;\n var safe = false;\n try {\n var arr = [7]\n , iter = arr[ITERATOR]();\n iter.next = function(){ return {done: safe = true}; };\n arr[ITERATOR] = function(){ return iter; };\n exec(arr);\n } catch(e){ /* empty */ }\n return safe;\n};\n},{\"117\":117}],55:[function(_dereq_,module,exports){\nmodule.exports = function(done, value){\n return {value: value, done: !!done};\n};\n},{}],56:[function(_dereq_,module,exports){\nmodule.exports = {};\n},{}],57:[function(_dereq_,module,exports){\nvar getKeys = _dereq_(76)\n , toIObject = _dereq_(107);\nmodule.exports = function(object, el){\n var O = toIObject(object)\n , keys = getKeys(O)\n , length = keys.length\n , index = 0\n , key;\n while(length > index)if(O[key = keys[index++]] === el)return key;\n};\n},{\"107\":107,\"76\":76}],58:[function(_dereq_,module,exports){\nmodule.exports = false;\n},{}],59:[function(_dereq_,module,exports){\n// 20.2.2.14 Math.expm1(x)\nvar $expm1 = Math.expm1;\nmodule.exports = (!$expm1\n // Old FF bug\n || $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168\n // Tor Browser bug\n || $expm1(-2e-17) != -2e-17\n) ? function expm1(x){\n return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;\n} : $expm1;\n},{}],60:[function(_dereq_,module,exports){\n// 20.2.2.20 Math.log1p(x)\nmodule.exports = Math.log1p || function log1p(x){\n return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x);\n};\n},{}],61:[function(_dereq_,module,exports){\n// 20.2.2.28 Math.sign(x)\nmodule.exports = Math.sign || function sign(x){\n return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1;\n};\n},{}],62:[function(_dereq_,module,exports){\nvar META = _dereq_(114)('meta')\n , isObject = _dereq_(49)\n , has = _dereq_(39)\n , setDesc = _dereq_(67).f\n , id = 0;\nvar isExtensible = Object.isExtensible || function(){\n return true;\n};\nvar FREEZE = !_dereq_(34)(function(){\n return isExtensible(Object.preventExtensions({}));\n});\nvar setMeta = function(it){\n setDesc(it, META, {value: {\n i: 'O' + ++id, // object ID\n w: {} // weak collections IDs\n }});\n};\nvar fastKey = function(it, create){\n // return primitive with prefix\n if(!isObject(it))return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if(!has(it, META)){\n // can't set metadata to uncaught frozen object\n if(!isExtensible(it))return 'F';\n // not necessary to add metadata\n if(!create)return 'E';\n // add missing metadata\n setMeta(it);\n // return object ID\n } return it[META].i;\n};\nvar getWeak = function(it, create){\n if(!has(it, META)){\n // can't set metadata to uncaught frozen object\n if(!isExtensible(it))return true;\n // not necessary to add metadata\n if(!create)return false;\n // add missing metadata\n setMeta(it);\n // return hash weak collections IDs\n } return it[META].w;\n};\n// add metadata on freeze-family methods calling\nvar onFreeze = function(it){\n if(FREEZE && meta.NEED && isExtensible(it) && !has(it, META))setMeta(it);\n return it;\n};\nvar meta = module.exports = {\n KEY: META,\n NEED: false,\n fastKey: fastKey,\n getWeak: getWeak,\n onFreeze: onFreeze\n};\n},{\"114\":114,\"34\":34,\"39\":39,\"49\":49,\"67\":67}],63:[function(_dereq_,module,exports){\nvar Map = _dereq_(149)\n , $export = _dereq_(32)\n , shared = _dereq_(94)('metadata')\n , store = shared.store || (shared.store = new (_dereq_(255)));\n\nvar getOrCreateMetadataMap = function(target, targetKey, create){\n var targetMetadata = store.get(target);\n if(!targetMetadata){\n if(!create)return undefined;\n store.set(target, targetMetadata = new Map);\n }\n var keyMetadata = targetMetadata.get(targetKey);\n if(!keyMetadata){\n if(!create)return undefined;\n targetMetadata.set(targetKey, keyMetadata = new Map);\n } return keyMetadata;\n};\nvar ordinaryHasOwnMetadata = function(MetadataKey, O, P){\n var metadataMap = getOrCreateMetadataMap(O, P, false);\n return metadataMap === undefined ? false : metadataMap.has(MetadataKey);\n};\nvar ordinaryGetOwnMetadata = function(MetadataKey, O, P){\n var metadataMap = getOrCreateMetadataMap(O, P, false);\n return metadataMap === undefined ? undefined : metadataMap.get(MetadataKey);\n};\nvar ordinaryDefineOwnMetadata = function(MetadataKey, MetadataValue, O, P){\n getOrCreateMetadataMap(O, P, true).set(MetadataKey, MetadataValue);\n};\nvar ordinaryOwnMetadataKeys = function(target, targetKey){\n var metadataMap = getOrCreateMetadataMap(target, targetKey, false)\n , keys = [];\n if(metadataMap)metadataMap.forEach(function(_, key){ keys.push(key); });\n return keys;\n};\nvar toMetaKey = function(it){\n return it === undefined || typeof it == 'symbol' ? it : String(it);\n};\nvar exp = function(O){\n $export($export.S, 'Reflect', O);\n};\n\nmodule.exports = {\n store: store,\n map: getOrCreateMetadataMap,\n has: ordinaryHasOwnMetadata,\n get: ordinaryGetOwnMetadata,\n set: ordinaryDefineOwnMetadata,\n keys: ordinaryOwnMetadataKeys,\n key: toMetaKey,\n exp: exp\n};\n},{\"149\":149,\"255\":255,\"32\":32,\"94\":94}],64:[function(_dereq_,module,exports){\nvar global = _dereq_(38)\n , macrotask = _dereq_(104).set\n , Observer = global.MutationObserver || global.WebKitMutationObserver\n , process = global.process\n , Promise = global.Promise\n , isNode = _dereq_(18)(process) == 'process';\n\nmodule.exports = function(){\n var head, last, notify;\n\n var flush = function(){\n var parent, fn;\n if(isNode && (parent = process.domain))parent.exit();\n while(head){\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch(e){\n if(head)notify();\n else last = undefined;\n throw e;\n }\n } last = undefined;\n if(parent)parent.enter();\n };\n\n // Node.js\n if(isNode){\n notify = function(){\n process.nextTick(flush);\n };\n // browsers with MutationObserver\n } else if(Observer){\n var toggle = true\n , node = document.createTextNode('');\n new Observer(flush).observe(node, {characterData: true}); // eslint-disable-line no-new\n notify = function(){\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if(Promise && Promise.resolve){\n var promise = Promise.resolve();\n notify = function(){\n promise.then(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function(){\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n\n return function(fn){\n var task = {fn: fn, next: undefined};\n if(last)last.next = task;\n if(!head){\n head = task;\n notify();\n } last = task;\n };\n};\n},{\"104\":104,\"18\":18,\"38\":38}],65:[function(_dereq_,module,exports){\n'use strict';\n// 19.1.2.1 Object.assign(target, source, ...)\nvar getKeys = _dereq_(76)\n , gOPS = _dereq_(73)\n , pIE = _dereq_(77)\n , toObject = _dereq_(109)\n , IObject = _dereq_(45)\n , $assign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !$assign || _dereq_(34)(function(){\n var A = {}\n , B = {}\n , S = Symbol()\n , K = 'abcdefghijklmnopqrst';\n A[S] = 7;\n K.split('').forEach(function(k){ B[k] = k; });\n return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;\n}) ? function assign(target, source){ // eslint-disable-line no-unused-vars\n var T = toObject(target)\n , aLen = arguments.length\n , index = 1\n , getSymbols = gOPS.f\n , isEnum = pIE.f;\n while(aLen > index){\n var S = IObject(arguments[index++])\n , keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S)\n , length = keys.length\n , j = 0\n , key;\n while(length > j)if(isEnum.call(S, key = keys[j++]))T[key] = S[key];\n } return T;\n} : $assign;\n},{\"109\":109,\"34\":34,\"45\":45,\"73\":73,\"76\":76,\"77\":77}],66:[function(_dereq_,module,exports){\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = _dereq_(7)\n , dPs = _dereq_(68)\n , enumBugKeys = _dereq_(30)\n , IE_PROTO = _dereq_(93)('IE_PROTO')\n , Empty = function(){ /* empty */ }\n , PROTOTYPE = 'prototype';\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar createDict = function(){\n // Thrash, waste and sodomy: IE GC bug\n var iframe = _dereq_(29)('iframe')\n , i = enumBugKeys.length\n , lt = '<'\n , gt = '>'\n , iframeDocument;\n iframe.style.display = 'none';\n _dereq_(41).appendChild(iframe);\n iframe.src = 'javascript:'; // eslint-disable-line no-script-url\n // createDict = iframe.contentWindow.Object;\n // html.removeChild(iframe);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);\n iframeDocument.close();\n createDict = iframeDocument.F;\n while(i--)delete createDict[PROTOTYPE][enumBugKeys[i]];\n return createDict();\n};\n\nmodule.exports = Object.create || function create(O, Properties){\n var result;\n if(O !== null){\n Empty[PROTOTYPE] = anObject(O);\n result = new Empty;\n Empty[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = createDict();\n return Properties === undefined ? result : dPs(result, Properties);\n};\n\n},{\"29\":29,\"30\":30,\"41\":41,\"68\":68,\"7\":7,\"93\":93}],67:[function(_dereq_,module,exports){\nvar anObject = _dereq_(7)\n , IE8_DOM_DEFINE = _dereq_(42)\n , toPrimitive = _dereq_(110)\n , dP = Object.defineProperty;\n\nexports.f = _dereq_(28) ? Object.defineProperty : function defineProperty(O, P, Attributes){\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if(IE8_DOM_DEFINE)try {\n return dP(O, P, Attributes);\n } catch(e){ /* empty */ }\n if('get' in Attributes || 'set' in Attributes)throw TypeError('Accessors not supported!');\n if('value' in Attributes)O[P] = Attributes.value;\n return O;\n};\n},{\"110\":110,\"28\":28,\"42\":42,\"7\":7}],68:[function(_dereq_,module,exports){\nvar dP = _dereq_(67)\n , anObject = _dereq_(7)\n , getKeys = _dereq_(76);\n\nmodule.exports = _dereq_(28) ? Object.defineProperties : function defineProperties(O, Properties){\n anObject(O);\n var keys = getKeys(Properties)\n , length = keys.length\n , i = 0\n , P;\n while(length > i)dP.f(O, P = keys[i++], Properties[P]);\n return O;\n};\n},{\"28\":28,\"67\":67,\"7\":7,\"76\":76}],69:[function(_dereq_,module,exports){\n// Forced replacement prototype accessors methods\nmodule.exports = _dereq_(58)|| !_dereq_(34)(function(){\n var K = Math.random();\n // In FF throws only define methods\n __defineSetter__.call(null, K, function(){ /* empty */});\n delete _dereq_(38)[K];\n});\n},{\"34\":34,\"38\":38,\"58\":58}],70:[function(_dereq_,module,exports){\nvar pIE = _dereq_(77)\n , createDesc = _dereq_(85)\n , toIObject = _dereq_(107)\n , toPrimitive = _dereq_(110)\n , has = _dereq_(39)\n , IE8_DOM_DEFINE = _dereq_(42)\n , gOPD = Object.getOwnPropertyDescriptor;\n\nexports.f = _dereq_(28) ? gOPD : function getOwnPropertyDescriptor(O, P){\n O = toIObject(O);\n P = toPrimitive(P, true);\n if(IE8_DOM_DEFINE)try {\n return gOPD(O, P);\n } catch(e){ /* empty */ }\n if(has(O, P))return createDesc(!pIE.f.call(O, P), O[P]);\n};\n},{\"107\":107,\"110\":110,\"28\":28,\"39\":39,\"42\":42,\"77\":77,\"85\":85}],71:[function(_dereq_,module,exports){\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIObject = _dereq_(107)\n , gOPN = _dereq_(72).f\n , toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function(it){\n try {\n return gOPN(it);\n } catch(e){\n return windowNames.slice();\n }\n};\n\nmodule.exports.f = function getOwnPropertyNames(it){\n return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));\n};\n\n},{\"107\":107,\"72\":72}],72:[function(_dereq_,module,exports){\n// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)\nvar $keys = _dereq_(75)\n , hiddenKeys = _dereq_(30).concat('length', 'prototype');\n\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O){\n return $keys(O, hiddenKeys);\n};\n},{\"30\":30,\"75\":75}],73:[function(_dereq_,module,exports){\nexports.f = Object.getOwnPropertySymbols;\n},{}],74:[function(_dereq_,module,exports){\n// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = _dereq_(39)\n , toObject = _dereq_(109)\n , IE_PROTO = _dereq_(93)('IE_PROTO')\n , ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function(O){\n O = toObject(O);\n if(has(O, IE_PROTO))return O[IE_PROTO];\n if(typeof O.constructor == 'function' && O instanceof O.constructor){\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n},{\"109\":109,\"39\":39,\"93\":93}],75:[function(_dereq_,module,exports){\nvar has = _dereq_(39)\n , toIObject = _dereq_(107)\n , arrayIndexOf = _dereq_(11)(false)\n , IE_PROTO = _dereq_(93)('IE_PROTO');\n\nmodule.exports = function(object, names){\n var O = toIObject(object)\n , i = 0\n , result = []\n , key;\n for(key in O)if(key != IE_PROTO)has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while(names.length > i)if(has(O, key = names[i++])){\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n},{\"107\":107,\"11\":11,\"39\":39,\"93\":93}],76:[function(_dereq_,module,exports){\n// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = _dereq_(75)\n , enumBugKeys = _dereq_(30);\n\nmodule.exports = Object.keys || function keys(O){\n return $keys(O, enumBugKeys);\n};\n},{\"30\":30,\"75\":75}],77:[function(_dereq_,module,exports){\nexports.f = {}.propertyIsEnumerable;\n},{}],78:[function(_dereq_,module,exports){\n// most Object methods by ES6 should accept primitives\nvar $export = _dereq_(32)\n , core = _dereq_(23)\n , fails = _dereq_(34);\nmodule.exports = function(KEY, exec){\n var fn = (core.Object || {})[KEY] || Object[KEY]\n , exp = {};\n exp[KEY] = exec(fn);\n $export($export.S + $export.F * fails(function(){ fn(1); }), 'Object', exp);\n};\n},{\"23\":23,\"32\":32,\"34\":34}],79:[function(_dereq_,module,exports){\nvar getKeys = _dereq_(76)\n , toIObject = _dereq_(107)\n , isEnum = _dereq_(77).f;\nmodule.exports = function(isEntries){\n return function(it){\n var O = toIObject(it)\n , keys = getKeys(O)\n , length = keys.length\n , i = 0\n , result = []\n , key;\n while(length > i)if(isEnum.call(O, key = keys[i++])){\n result.push(isEntries ? [key, O[key]] : O[key]);\n } return result;\n };\n};\n},{\"107\":107,\"76\":76,\"77\":77}],80:[function(_dereq_,module,exports){\n// all object keys, includes non-enumerable and symbols\nvar gOPN = _dereq_(72)\n , gOPS = _dereq_(73)\n , anObject = _dereq_(7)\n , Reflect = _dereq_(38).Reflect;\nmodule.exports = Reflect && Reflect.ownKeys || function ownKeys(it){\n var keys = gOPN.f(anObject(it))\n , getSymbols = gOPS.f;\n return getSymbols ? keys.concat(getSymbols(it)) : keys;\n};\n},{\"38\":38,\"7\":7,\"72\":72,\"73\":73}],81:[function(_dereq_,module,exports){\nvar $parseFloat = _dereq_(38).parseFloat\n , $trim = _dereq_(102).trim;\n\nmodule.exports = 1 / $parseFloat(_dereq_(103) + '-0') !== -Infinity ? function parseFloat(str){\n var string = $trim(String(str), 3)\n , result = $parseFloat(string);\n return result === 0 && string.charAt(0) == '-' ? -0 : result;\n} : $parseFloat;\n},{\"102\":102,\"103\":103,\"38\":38}],82:[function(_dereq_,module,exports){\nvar $parseInt = _dereq_(38).parseInt\n , $trim = _dereq_(102).trim\n , ws = _dereq_(103)\n , hex = /^[\\-+]?0[xX]/;\n\nmodule.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix){\n var string = $trim(String(str), 3);\n return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));\n} : $parseInt;\n},{\"102\":102,\"103\":103,\"38\":38}],83:[function(_dereq_,module,exports){\n'use strict';\nvar path = _dereq_(84)\n , invoke = _dereq_(44)\n , aFunction = _dereq_(3);\nmodule.exports = function(/* ...pargs */){\n var fn = aFunction(this)\n , length = arguments.length\n , pargs = Array(length)\n , i = 0\n , _ = path._\n , holder = false;\n while(length > i)if((pargs[i] = arguments[i++]) === _)holder = true;\n return function(/* ...args */){\n var that = this\n , aLen = arguments.length\n , j = 0, k = 0, args;\n if(!holder && !aLen)return invoke(fn, pargs, that);\n args = pargs.slice();\n if(holder)for(;length > j; j++)if(args[j] === _)args[j] = arguments[k++];\n while(aLen > k)args.push(arguments[k++]);\n return invoke(fn, args, that);\n };\n};\n},{\"3\":3,\"44\":44,\"84\":84}],84:[function(_dereq_,module,exports){\nmodule.exports = _dereq_(38);\n},{\"38\":38}],85:[function(_dereq_,module,exports){\nmodule.exports = function(bitmap, value){\n return {\n enumerable : !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable : !(bitmap & 4),\n value : value\n };\n};\n},{}],86:[function(_dereq_,module,exports){\nvar redefine = _dereq_(87);\nmodule.exports = function(target, src, safe){\n for(var key in src)redefine(target, key, src[key], safe);\n return target;\n};\n},{\"87\":87}],87:[function(_dereq_,module,exports){\nvar global = _dereq_(38)\n , hide = _dereq_(40)\n , has = _dereq_(39)\n , SRC = _dereq_(114)('src')\n , TO_STRING = 'toString'\n , $toString = Function[TO_STRING]\n , TPL = ('' + $toString).split(TO_STRING);\n\n_dereq_(23).inspectSource = function(it){\n return $toString.call(it);\n};\n\n(module.exports = function(O, key, val, safe){\n var isFunction = typeof val == 'function';\n if(isFunction)has(val, 'name') || hide(val, 'name', key);\n if(O[key] === val)return;\n if(isFunction)has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));\n if(O === global){\n O[key] = val;\n } else {\n if(!safe){\n delete O[key];\n hide(O, key, val);\n } else {\n if(O[key])O[key] = val;\n else hide(O, key, val);\n }\n }\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, TO_STRING, function toString(){\n return typeof this == 'function' && this[SRC] || $toString.call(this);\n});\n},{\"114\":114,\"23\":23,\"38\":38,\"39\":39,\"40\":40}],88:[function(_dereq_,module,exports){\nmodule.exports = function(regExp, replace){\n var replacer = replace === Object(replace) ? function(part){\n return replace[part];\n } : replace;\n return function(it){\n return String(it).replace(regExp, replacer);\n };\n};\n},{}],89:[function(_dereq_,module,exports){\n// 7.2.9 SameValue(x, y)\nmodule.exports = Object.is || function is(x, y){\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n},{}],90:[function(_dereq_,module,exports){\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nvar isObject = _dereq_(49)\n , anObject = _dereq_(7);\nvar check = function(O, proto){\n anObject(O);\n if(!isObject(proto) && proto !== null)throw TypeError(proto + \": can't set as prototype!\");\n};\nmodule.exports = {\n set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line\n function(test, buggy, set){\n try {\n set = _dereq_(25)(Function.call, _dereq_(70).f(Object.prototype, '__proto__').set, 2);\n set(test, []);\n buggy = !(test instanceof Array);\n } catch(e){ buggy = true; }\n return function setPrototypeOf(O, proto){\n check(O, proto);\n if(buggy)O.__proto__ = proto;\n else set(O, proto);\n return O;\n };\n }({}, false) : undefined),\n check: check\n};\n},{\"25\":25,\"49\":49,\"7\":7,\"70\":70}],91:[function(_dereq_,module,exports){\n'use strict';\nvar global = _dereq_(38)\n , dP = _dereq_(67)\n , DESCRIPTORS = _dereq_(28)\n , SPECIES = _dereq_(117)('species');\n\nmodule.exports = function(KEY){\n var C = global[KEY];\n if(DESCRIPTORS && C && !C[SPECIES])dP.f(C, SPECIES, {\n configurable: true,\n get: function(){ return this; }\n });\n};\n},{\"117\":117,\"28\":28,\"38\":38,\"67\":67}],92:[function(_dereq_,module,exports){\nvar def = _dereq_(67).f\n , has = _dereq_(39)\n , TAG = _dereq_(117)('toStringTag');\n\nmodule.exports = function(it, tag, stat){\n if(it && !has(it = stat ? it : it.prototype, TAG))def(it, TAG, {configurable: true, value: tag});\n};\n},{\"117\":117,\"39\":39,\"67\":67}],93:[function(_dereq_,module,exports){\nvar shared = _dereq_(94)('keys')\n , uid = _dereq_(114);\nmodule.exports = function(key){\n return shared[key] || (shared[key] = uid(key));\n};\n},{\"114\":114,\"94\":94}],94:[function(_dereq_,module,exports){\nvar global = _dereq_(38)\n , SHARED = '__core-js_shared__'\n , store = global[SHARED] || (global[SHARED] = {});\nmodule.exports = function(key){\n return store[key] || (store[key] = {});\n};\n},{\"38\":38}],95:[function(_dereq_,module,exports){\n// 7.3.20 SpeciesConstructor(O, defaultConstructor)\nvar anObject = _dereq_(7)\n , aFunction = _dereq_(3)\n , SPECIES = _dereq_(117)('species');\nmodule.exports = function(O, D){\n var C = anObject(O).constructor, S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);\n};\n},{\"117\":117,\"3\":3,\"7\":7}],96:[function(_dereq_,module,exports){\nvar fails = _dereq_(34);\n\nmodule.exports = function(method, arg){\n return !!method && fails(function(){\n arg ? method.call(null, function(){}, 1) : method.call(null);\n });\n};\n},{\"34\":34}],97:[function(_dereq_,module,exports){\nvar toInteger = _dereq_(106)\n , defined = _dereq_(27);\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function(TO_STRING){\n return function(that, pos){\n var s = String(defined(that))\n , i = toInteger(pos)\n , l = s.length\n , a, b;\n if(i < 0 || i >= l)return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n},{\"106\":106,\"27\":27}],98:[function(_dereq_,module,exports){\n// helper for String#{startsWith, endsWith, includes}\nvar isRegExp = _dereq_(50)\n , defined = _dereq_(27);\n\nmodule.exports = function(that, searchString, NAME){\n if(isRegExp(searchString))throw TypeError('String#' + NAME + \" doesn't accept regex!\");\n return String(defined(that));\n};\n},{\"27\":27,\"50\":50}],99:[function(_dereq_,module,exports){\nvar $export = _dereq_(32)\n , fails = _dereq_(34)\n , defined = _dereq_(27)\n , quot = /\"/g;\n// B.2.3.2.1 CreateHTML(string, tag, attribute, value)\nvar createHTML = function(string, tag, attribute, value) {\n var S = String(defined(string))\n , p1 = '<' + tag;\n if(attribute !== '')p1 += ' ' + attribute + '=\"' + String(value).replace(quot, '"') + '\"';\n return p1 + '>' + S + '';\n};\nmodule.exports = function(NAME, exec){\n var O = {};\n O[NAME] = exec(createHTML);\n $export($export.P + $export.F * fails(function(){\n var test = ''[NAME]('\"');\n return test !== test.toLowerCase() || test.split('\"').length > 3;\n }), 'String', O);\n};\n},{\"27\":27,\"32\":32,\"34\":34}],100:[function(_dereq_,module,exports){\n// https://github.com/tc39/proposal-string-pad-start-end\nvar toLength = _dereq_(108)\n , repeat = _dereq_(101)\n , defined = _dereq_(27);\n\nmodule.exports = function(that, maxLength, fillString, left){\n var S = String(defined(that))\n , stringLength = S.length\n , fillStr = fillString === undefined ? ' ' : String(fillString)\n , intMaxLength = toLength(maxLength);\n if(intMaxLength <= stringLength || fillStr == '')return S;\n var fillLen = intMaxLength - stringLength\n , stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length));\n if(stringFiller.length > fillLen)stringFiller = stringFiller.slice(0, fillLen);\n return left ? stringFiller + S : S + stringFiller;\n};\n\n},{\"101\":101,\"108\":108,\"27\":27}],101:[function(_dereq_,module,exports){\n'use strict';\nvar toInteger = _dereq_(106)\n , defined = _dereq_(27);\n\nmodule.exports = function repeat(count){\n var str = String(defined(this))\n , res = ''\n , n = toInteger(count);\n if(n < 0 || n == Infinity)throw RangeError(\"Count can't be negative\");\n for(;n > 0; (n >>>= 1) && (str += str))if(n & 1)res += str;\n return res;\n};\n},{\"106\":106,\"27\":27}],102:[function(_dereq_,module,exports){\nvar $export = _dereq_(32)\n , defined = _dereq_(27)\n , fails = _dereq_(34)\n , spaces = _dereq_(103)\n , space = '[' + spaces + ']'\n , non = '\\u200b\\u0085'\n , ltrim = RegExp('^' + space + space + '*')\n , rtrim = RegExp(space + space + '*$');\n\nvar exporter = function(KEY, exec, ALIAS){\n var exp = {};\n var FORCE = fails(function(){\n return !!spaces[KEY]() || non[KEY]() != non;\n });\n var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];\n if(ALIAS)exp[ALIAS] = fn;\n $export($export.P + $export.F * FORCE, 'String', exp);\n};\n\n// 1 -> String#trimLeft\n// 2 -> String#trimRight\n// 3 -> String#trim\nvar trim = exporter.trim = function(string, TYPE){\n string = String(defined(string));\n if(TYPE & 1)string = string.replace(ltrim, '');\n if(TYPE & 2)string = string.replace(rtrim, '');\n return string;\n};\n\nmodule.exports = exporter;\n},{\"103\":103,\"27\":27,\"32\":32,\"34\":34}],103:[function(_dereq_,module,exports){\nmodule.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n},{}],104:[function(_dereq_,module,exports){\nvar ctx = _dereq_(25)\n , invoke = _dereq_(44)\n , html = _dereq_(41)\n , cel = _dereq_(29)\n , global = _dereq_(38)\n , process = global.process\n , setTask = global.setImmediate\n , clearTask = global.clearImmediate\n , MessageChannel = global.MessageChannel\n , counter = 0\n , queue = {}\n , ONREADYSTATECHANGE = 'onreadystatechange'\n , defer, channel, port;\nvar run = function(){\n var id = +this;\n if(queue.hasOwnProperty(id)){\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\nvar listener = function(event){\n run.call(event.data);\n};\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif(!setTask || !clearTask){\n setTask = function setImmediate(fn){\n var args = [], i = 1;\n while(arguments.length > i)args.push(arguments[i++]);\n queue[++counter] = function(){\n invoke(typeof fn == 'function' ? fn : Function(fn), args);\n };\n defer(counter);\n return counter;\n };\n clearTask = function clearImmediate(id){\n delete queue[id];\n };\n // Node.js 0.8-\n if(_dereq_(18)(process) == 'process'){\n defer = function(id){\n process.nextTick(ctx(run, id, 1));\n };\n // Browsers with MessageChannel, includes WebWorkers\n } else if(MessageChannel){\n channel = new MessageChannel;\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = ctx(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if(global.addEventListener && typeof postMessage == 'function' && !global.importScripts){\n defer = function(id){\n global.postMessage(id + '', '*');\n };\n global.addEventListener('message', listener, false);\n // IE8-\n } else if(ONREADYSTATECHANGE in cel('script')){\n defer = function(id){\n html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function(){\n html.removeChild(this);\n run.call(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function(id){\n setTimeout(ctx(run, id, 1), 0);\n };\n }\n}\nmodule.exports = {\n set: setTask,\n clear: clearTask\n};\n},{\"18\":18,\"25\":25,\"29\":29,\"38\":38,\"41\":41,\"44\":44}],105:[function(_dereq_,module,exports){\nvar toInteger = _dereq_(106)\n , max = Math.max\n , min = Math.min;\nmodule.exports = function(index, length){\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n},{\"106\":106}],106:[function(_dereq_,module,exports){\n// 7.1.4 ToInteger\nvar ceil = Math.ceil\n , floor = Math.floor;\nmodule.exports = function(it){\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n},{}],107:[function(_dereq_,module,exports){\n// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = _dereq_(45)\n , defined = _dereq_(27);\nmodule.exports = function(it){\n return IObject(defined(it));\n};\n},{\"27\":27,\"45\":45}],108:[function(_dereq_,module,exports){\n// 7.1.15 ToLength\nvar toInteger = _dereq_(106)\n , min = Math.min;\nmodule.exports = function(it){\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n},{\"106\":106}],109:[function(_dereq_,module,exports){\n// 7.1.13 ToObject(argument)\nvar defined = _dereq_(27);\nmodule.exports = function(it){\n return Object(defined(it));\n};\n},{\"27\":27}],110:[function(_dereq_,module,exports){\n// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = _dereq_(49);\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function(it, S){\n if(!isObject(it))return it;\n var fn, val;\n if(S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;\n if(typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it)))return val;\n if(!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n},{\"49\":49}],111:[function(_dereq_,module,exports){\n'use strict';\nif(_dereq_(28)){\n var LIBRARY = _dereq_(58)\n , global = _dereq_(38)\n , fails = _dereq_(34)\n , $export = _dereq_(32)\n , $typed = _dereq_(113)\n , $buffer = _dereq_(112)\n , ctx = _dereq_(25)\n , anInstance = _dereq_(6)\n , propertyDesc = _dereq_(85)\n , hide = _dereq_(40)\n , redefineAll = _dereq_(86)\n , toInteger = _dereq_(106)\n , toLength = _dereq_(108)\n , toIndex = _dereq_(105)\n , toPrimitive = _dereq_(110)\n , has = _dereq_(39)\n , same = _dereq_(89)\n , classof = _dereq_(17)\n , isObject = _dereq_(49)\n , toObject = _dereq_(109)\n , isArrayIter = _dereq_(46)\n , create = _dereq_(66)\n , getPrototypeOf = _dereq_(74)\n , gOPN = _dereq_(72).f\n , getIterFn = _dereq_(118)\n , uid = _dereq_(114)\n , wks = _dereq_(117)\n , createArrayMethod = _dereq_(12)\n , createArrayIncludes = _dereq_(11)\n , speciesConstructor = _dereq_(95)\n , ArrayIterators = _dereq_(130)\n , Iterators = _dereq_(56)\n , $iterDetect = _dereq_(54)\n , setSpecies = _dereq_(91)\n , arrayFill = _dereq_(9)\n , arrayCopyWithin = _dereq_(8)\n , $DP = _dereq_(67)\n , $GOPD = _dereq_(70)\n , dP = $DP.f\n , gOPD = $GOPD.f\n , RangeError = global.RangeError\n , TypeError = global.TypeError\n , Uint8Array = global.Uint8Array\n , ARRAY_BUFFER = 'ArrayBuffer'\n , SHARED_BUFFER = 'Shared' + ARRAY_BUFFER\n , BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT'\n , PROTOTYPE = 'prototype'\n , ArrayProto = Array[PROTOTYPE]\n , $ArrayBuffer = $buffer.ArrayBuffer\n , $DataView = $buffer.DataView\n , arrayForEach = createArrayMethod(0)\n , arrayFilter = createArrayMethod(2)\n , arraySome = createArrayMethod(3)\n , arrayEvery = createArrayMethod(4)\n , arrayFind = createArrayMethod(5)\n , arrayFindIndex = createArrayMethod(6)\n , arrayIncludes = createArrayIncludes(true)\n , arrayIndexOf = createArrayIncludes(false)\n , arrayValues = ArrayIterators.values\n , arrayKeys = ArrayIterators.keys\n , arrayEntries = ArrayIterators.entries\n , arrayLastIndexOf = ArrayProto.lastIndexOf\n , arrayReduce = ArrayProto.reduce\n , arrayReduceRight = ArrayProto.reduceRight\n , arrayJoin = ArrayProto.join\n , arraySort = ArrayProto.sort\n , arraySlice = ArrayProto.slice\n , arrayToString = ArrayProto.toString\n , arrayToLocaleString = ArrayProto.toLocaleString\n , ITERATOR = wks('iterator')\n , TAG = wks('toStringTag')\n , TYPED_CONSTRUCTOR = uid('typed_constructor')\n , DEF_CONSTRUCTOR = uid('def_constructor')\n , ALL_CONSTRUCTORS = $typed.CONSTR\n , TYPED_ARRAY = $typed.TYPED\n , VIEW = $typed.VIEW\n , WRONG_LENGTH = 'Wrong length!';\n\n var $map = createArrayMethod(1, function(O, length){\n return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);\n });\n\n var LITTLE_ENDIAN = fails(function(){\n return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;\n });\n\n var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function(){\n new Uint8Array(1).set({});\n });\n\n var strictToLength = function(it, SAME){\n if(it === undefined)throw TypeError(WRONG_LENGTH);\n var number = +it\n , length = toLength(it);\n if(SAME && !same(number, length))throw RangeError(WRONG_LENGTH);\n return length;\n };\n\n var toOffset = function(it, BYTES){\n var offset = toInteger(it);\n if(offset < 0 || offset % BYTES)throw RangeError('Wrong offset!');\n return offset;\n };\n\n var validate = function(it){\n if(isObject(it) && TYPED_ARRAY in it)return it;\n throw TypeError(it + ' is not a typed array!');\n };\n\n var allocate = function(C, length){\n if(!(isObject(C) && TYPED_CONSTRUCTOR in C)){\n throw TypeError('It is not a typed array constructor!');\n } return new C(length);\n };\n\n var speciesFromList = function(O, list){\n return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list);\n };\n\n var fromList = function(C, list){\n var index = 0\n , length = list.length\n , result = allocate(C, length);\n while(length > index)result[index] = list[index++];\n return result;\n };\n\n var addGetter = function(it, key, internal){\n dP(it, key, {get: function(){ return this._d[internal]; }});\n };\n\n var $from = function from(source /*, mapfn, thisArg */){\n var O = toObject(source)\n , aLen = arguments.length\n , mapfn = aLen > 1 ? arguments[1] : undefined\n , mapping = mapfn !== undefined\n , iterFn = getIterFn(O)\n , i, length, values, result, step, iterator;\n if(iterFn != undefined && !isArrayIter(iterFn)){\n for(iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++){\n values.push(step.value);\n } O = values;\n }\n if(mapping && aLen > 2)mapfn = ctx(mapfn, arguments[2], 2);\n for(i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++){\n result[i] = mapping ? mapfn(O[i], i) : O[i];\n }\n return result;\n };\n\n var $of = function of(/*...items*/){\n var index = 0\n , length = arguments.length\n , result = allocate(this, length);\n while(length > index)result[index] = arguments[index++];\n return result;\n };\n\n // iOS Safari 6.x fails here\n var TO_LOCALE_BUG = !!Uint8Array && fails(function(){ arrayToLocaleString.call(new Uint8Array(1)); });\n\n var $toLocaleString = function toLocaleString(){\n return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments);\n };\n\n var proto = {\n copyWithin: function copyWithin(target, start /*, end */){\n return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined);\n },\n every: function every(callbackfn /*, thisArg */){\n return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n fill: function fill(value /*, start, end */){ // eslint-disable-line no-unused-vars\n return arrayFill.apply(validate(this), arguments);\n },\n filter: function filter(callbackfn /*, thisArg */){\n return speciesFromList(this, arrayFilter(validate(this), callbackfn,\n arguments.length > 1 ? arguments[1] : undefined));\n },\n find: function find(predicate /*, thisArg */){\n return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n },\n findIndex: function findIndex(predicate /*, thisArg */){\n return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n },\n forEach: function forEach(callbackfn /*, thisArg */){\n arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n indexOf: function indexOf(searchElement /*, fromIndex */){\n return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n },\n includes: function includes(searchElement /*, fromIndex */){\n return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n },\n join: function join(separator){ // eslint-disable-line no-unused-vars\n return arrayJoin.apply(validate(this), arguments);\n },\n lastIndexOf: function lastIndexOf(searchElement /*, fromIndex */){ // eslint-disable-line no-unused-vars\n return arrayLastIndexOf.apply(validate(this), arguments);\n },\n map: function map(mapfn /*, thisArg */){\n return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n reduce: function reduce(callbackfn /*, initialValue */){ // eslint-disable-line no-unused-vars\n return arrayReduce.apply(validate(this), arguments);\n },\n reduceRight: function reduceRight(callbackfn /*, initialValue */){ // eslint-disable-line no-unused-vars\n return arrayReduceRight.apply(validate(this), arguments);\n },\n reverse: function reverse(){\n var that = this\n , length = validate(that).length\n , middle = Math.floor(length / 2)\n , index = 0\n , value;\n while(index < middle){\n value = that[index];\n that[index++] = that[--length];\n that[length] = value;\n } return that;\n },\n some: function some(callbackfn /*, thisArg */){\n return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n sort: function sort(comparefn){\n return arraySort.call(validate(this), comparefn);\n },\n subarray: function subarray(begin, end){\n var O = validate(this)\n , length = O.length\n , $begin = toIndex(begin, length);\n return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))(\n O.buffer,\n O.byteOffset + $begin * O.BYTES_PER_ELEMENT,\n toLength((end === undefined ? length : toIndex(end, length)) - $begin)\n );\n }\n };\n\n var $slice = function slice(start, end){\n return speciesFromList(this, arraySlice.call(validate(this), start, end));\n };\n\n var $set = function set(arrayLike /*, offset */){\n validate(this);\n var offset = toOffset(arguments[1], 1)\n , length = this.length\n , src = toObject(arrayLike)\n , len = toLength(src.length)\n , index = 0;\n if(len + offset > length)throw RangeError(WRONG_LENGTH);\n while(index < len)this[offset + index] = src[index++];\n };\n\n var $iterators = {\n entries: function entries(){\n return arrayEntries.call(validate(this));\n },\n keys: function keys(){\n return arrayKeys.call(validate(this));\n },\n values: function values(){\n return arrayValues.call(validate(this));\n }\n };\n\n var isTAIndex = function(target, key){\n return isObject(target)\n && target[TYPED_ARRAY]\n && typeof key != 'symbol'\n && key in target\n && String(+key) == String(key);\n };\n var $getDesc = function getOwnPropertyDescriptor(target, key){\n return isTAIndex(target, key = toPrimitive(key, true))\n ? propertyDesc(2, target[key])\n : gOPD(target, key);\n };\n var $setDesc = function defineProperty(target, key, desc){\n if(isTAIndex(target, key = toPrimitive(key, true))\n && isObject(desc)\n && has(desc, 'value')\n && !has(desc, 'get')\n && !has(desc, 'set')\n // TODO: add validation descriptor w/o calling accessors\n && !desc.configurable\n && (!has(desc, 'writable') || desc.writable)\n && (!has(desc, 'enumerable') || desc.enumerable)\n ){\n target[key] = desc.value;\n return target;\n } else return dP(target, key, desc);\n };\n\n if(!ALL_CONSTRUCTORS){\n $GOPD.f = $getDesc;\n $DP.f = $setDesc;\n }\n\n $export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', {\n getOwnPropertyDescriptor: $getDesc,\n defineProperty: $setDesc\n });\n\n if(fails(function(){ arrayToString.call({}); })){\n arrayToString = arrayToLocaleString = function toString(){\n return arrayJoin.call(this);\n }\n }\n\n var $TypedArrayPrototype$ = redefineAll({}, proto);\n redefineAll($TypedArrayPrototype$, $iterators);\n hide($TypedArrayPrototype$, ITERATOR, $iterators.values);\n redefineAll($TypedArrayPrototype$, {\n slice: $slice,\n set: $set,\n constructor: function(){ /* noop */ },\n toString: arrayToString,\n toLocaleString: $toLocaleString\n });\n addGetter($TypedArrayPrototype$, 'buffer', 'b');\n addGetter($TypedArrayPrototype$, 'byteOffset', 'o');\n addGetter($TypedArrayPrototype$, 'byteLength', 'l');\n addGetter($TypedArrayPrototype$, 'length', 'e');\n dP($TypedArrayPrototype$, TAG, {\n get: function(){ return this[TYPED_ARRAY]; }\n });\n\n module.exports = function(KEY, BYTES, wrapper, CLAMPED){\n CLAMPED = !!CLAMPED;\n var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array'\n , ISNT_UINT8 = NAME != 'Uint8Array'\n , GETTER = 'get' + KEY\n , SETTER = 'set' + KEY\n , TypedArray = global[NAME]\n , Base = TypedArray || {}\n , TAC = TypedArray && getPrototypeOf(TypedArray)\n , FORCED = !TypedArray || !$typed.ABV\n , O = {}\n , TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE];\n var getter = function(that, index){\n var data = that._d;\n return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);\n };\n var setter = function(that, index, value){\n var data = that._d;\n if(CLAMPED)value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff;\n data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN);\n };\n var addElement = function(that, index){\n dP(that, index, {\n get: function(){\n return getter(this, index);\n },\n set: function(value){\n return setter(this, index, value);\n },\n enumerable: true\n });\n };\n if(FORCED){\n TypedArray = wrapper(function(that, data, $offset, $length){\n anInstance(that, TypedArray, NAME, '_d');\n var index = 0\n , offset = 0\n , buffer, byteLength, length, klass;\n if(!isObject(data)){\n length = strictToLength(data, true)\n byteLength = length * BYTES;\n buffer = new $ArrayBuffer(byteLength);\n } else if(data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER){\n buffer = data;\n offset = toOffset($offset, BYTES);\n var $len = data.byteLength;\n if($length === undefined){\n if($len % BYTES)throw RangeError(WRONG_LENGTH);\n byteLength = $len - offset;\n if(byteLength < 0)throw RangeError(WRONG_LENGTH);\n } else {\n byteLength = toLength($length) * BYTES;\n if(byteLength + offset > $len)throw RangeError(WRONG_LENGTH);\n }\n length = byteLength / BYTES;\n } else if(TYPED_ARRAY in data){\n return fromList(TypedArray, data);\n } else {\n return $from.call(TypedArray, data);\n }\n hide(that, '_d', {\n b: buffer,\n o: offset,\n l: byteLength,\n e: length,\n v: new $DataView(buffer)\n });\n while(index < length)addElement(that, index++);\n });\n TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$);\n hide(TypedArrayPrototype, 'constructor', TypedArray);\n } else if(!$iterDetect(function(iter){\n // V8 works with iterators, but fails in many other cases\n // https://code.google.com/p/v8/issues/detail?id=4552\n new TypedArray(null); // eslint-disable-line no-new\n new TypedArray(iter); // eslint-disable-line no-new\n }, true)){\n TypedArray = wrapper(function(that, data, $offset, $length){\n anInstance(that, TypedArray, NAME);\n var klass;\n // `ws` module bug, temporarily remove validation length for Uint8Array\n // https://github.com/websockets/ws/pull/645\n if(!isObject(data))return new Base(strictToLength(data, ISNT_UINT8));\n if(data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER){\n return $length !== undefined\n ? new Base(data, toOffset($offset, BYTES), $length)\n : $offset !== undefined\n ? new Base(data, toOffset($offset, BYTES))\n : new Base(data);\n }\n if(TYPED_ARRAY in data)return fromList(TypedArray, data);\n return $from.call(TypedArray, data);\n });\n arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function(key){\n if(!(key in TypedArray))hide(TypedArray, key, Base[key]);\n });\n TypedArray[PROTOTYPE] = TypedArrayPrototype;\n if(!LIBRARY)TypedArrayPrototype.constructor = TypedArray;\n }\n var $nativeIterator = TypedArrayPrototype[ITERATOR]\n , CORRECT_ITER_NAME = !!$nativeIterator && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined)\n , $iterator = $iterators.values;\n hide(TypedArray, TYPED_CONSTRUCTOR, true);\n hide(TypedArrayPrototype, TYPED_ARRAY, NAME);\n hide(TypedArrayPrototype, VIEW, true);\n hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);\n\n if(CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)){\n dP(TypedArrayPrototype, TAG, {\n get: function(){ return NAME; }\n });\n }\n\n O[NAME] = TypedArray;\n\n $export($export.G + $export.W + $export.F * (TypedArray != Base), O);\n\n $export($export.S, NAME, {\n BYTES_PER_ELEMENT: BYTES,\n from: $from,\n of: $of\n });\n\n if(!(BYTES_PER_ELEMENT in TypedArrayPrototype))hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES);\n\n $export($export.P, NAME, proto);\n\n setSpecies(NAME);\n\n $export($export.P + $export.F * FORCED_SET, NAME, {set: $set});\n\n $export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators);\n\n $export($export.P + $export.F * (TypedArrayPrototype.toString != arrayToString), NAME, {toString: arrayToString});\n\n $export($export.P + $export.F * fails(function(){\n new TypedArray(1).slice();\n }), NAME, {slice: $slice});\n\n $export($export.P + $export.F * (fails(function(){\n return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString()\n }) || !fails(function(){\n TypedArrayPrototype.toLocaleString.call([1, 2]);\n })), NAME, {toLocaleString: $toLocaleString});\n\n Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator;\n if(!LIBRARY && !CORRECT_ITER_NAME)hide(TypedArrayPrototype, ITERATOR, $iterator);\n };\n} else module.exports = function(){ /* empty */ };\n},{\"105\":105,\"106\":106,\"108\":108,\"109\":109,\"11\":11,\"110\":110,\"112\":112,\"113\":113,\"114\":114,\"117\":117,\"118\":118,\"12\":12,\"130\":130,\"17\":17,\"25\":25,\"28\":28,\"32\":32,\"34\":34,\"38\":38,\"39\":39,\"40\":40,\"46\":46,\"49\":49,\"54\":54,\"56\":56,\"58\":58,\"6\":6,\"66\":66,\"67\":67,\"70\":70,\"72\":72,\"74\":74,\"8\":8,\"85\":85,\"86\":86,\"89\":89,\"9\":9,\"91\":91,\"95\":95}],112:[function(_dereq_,module,exports){\n'use strict';\nvar global = _dereq_(38)\n , DESCRIPTORS = _dereq_(28)\n , LIBRARY = _dereq_(58)\n , $typed = _dereq_(113)\n , hide = _dereq_(40)\n , redefineAll = _dereq_(86)\n , fails = _dereq_(34)\n , anInstance = _dereq_(6)\n , toInteger = _dereq_(106)\n , toLength = _dereq_(108)\n , gOPN = _dereq_(72).f\n , dP = _dereq_(67).f\n , arrayFill = _dereq_(9)\n , setToStringTag = _dereq_(92)\n , ARRAY_BUFFER = 'ArrayBuffer'\n , DATA_VIEW = 'DataView'\n , PROTOTYPE = 'prototype'\n , WRONG_LENGTH = 'Wrong length!'\n , WRONG_INDEX = 'Wrong index!'\n , $ArrayBuffer = global[ARRAY_BUFFER]\n , $DataView = global[DATA_VIEW]\n , Math = global.Math\n , RangeError = global.RangeError\n , Infinity = global.Infinity\n , BaseBuffer = $ArrayBuffer\n , abs = Math.abs\n , pow = Math.pow\n , floor = Math.floor\n , log = Math.log\n , LN2 = Math.LN2\n , BUFFER = 'buffer'\n , BYTE_LENGTH = 'byteLength'\n , BYTE_OFFSET = 'byteOffset'\n , $BUFFER = DESCRIPTORS ? '_b' : BUFFER\n , $LENGTH = DESCRIPTORS ? '_l' : BYTE_LENGTH\n , $OFFSET = DESCRIPTORS ? '_o' : BYTE_OFFSET;\n\n// IEEE754 conversions based on https://github.com/feross/ieee754\nvar packIEEE754 = function(value, mLen, nBytes){\n var buffer = Array(nBytes)\n , eLen = nBytes * 8 - mLen - 1\n , eMax = (1 << eLen) - 1\n , eBias = eMax >> 1\n , rt = mLen === 23 ? pow(2, -24) - pow(2, -77) : 0\n , i = 0\n , s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0\n , e, m, c;\n value = abs(value)\n if(value != value || value === Infinity){\n m = value != value ? 1 : 0;\n e = eMax;\n } else {\n e = floor(log(value) / LN2);\n if(value * (c = pow(2, -e)) < 1){\n e--;\n c *= 2;\n }\n if(e + eBias >= 1){\n value += rt / c;\n } else {\n value += rt * pow(2, 1 - eBias);\n }\n if(value * c >= 2){\n e++;\n c /= 2;\n }\n if(e + eBias >= eMax){\n m = 0;\n e = eMax;\n } else if(e + eBias >= 1){\n m = (value * c - 1) * pow(2, mLen);\n e = e + eBias;\n } else {\n m = value * pow(2, eBias - 1) * pow(2, mLen);\n e = 0;\n }\n }\n for(; mLen >= 8; buffer[i++] = m & 255, m /= 256, mLen -= 8);\n e = e << mLen | m;\n eLen += mLen;\n for(; eLen > 0; buffer[i++] = e & 255, e /= 256, eLen -= 8);\n buffer[--i] |= s * 128;\n return buffer;\n};\nvar unpackIEEE754 = function(buffer, mLen, nBytes){\n var eLen = nBytes * 8 - mLen - 1\n , eMax = (1 << eLen) - 1\n , eBias = eMax >> 1\n , nBits = eLen - 7\n , i = nBytes - 1\n , s = buffer[i--]\n , e = s & 127\n , m;\n s >>= 7;\n for(; nBits > 0; e = e * 256 + buffer[i], i--, nBits -= 8);\n m = e & (1 << -nBits) - 1;\n e >>= -nBits;\n nBits += mLen;\n for(; nBits > 0; m = m * 256 + buffer[i], i--, nBits -= 8);\n if(e === 0){\n e = 1 - eBias;\n } else if(e === eMax){\n return m ? NaN : s ? -Infinity : Infinity;\n } else {\n m = m + pow(2, mLen);\n e = e - eBias;\n } return (s ? -1 : 1) * m * pow(2, e - mLen);\n};\n\nvar unpackI32 = function(bytes){\n return bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0];\n};\nvar packI8 = function(it){\n return [it & 0xff];\n};\nvar packI16 = function(it){\n return [it & 0xff, it >> 8 & 0xff];\n};\nvar packI32 = function(it){\n return [it & 0xff, it >> 8 & 0xff, it >> 16 & 0xff, it >> 24 & 0xff];\n};\nvar packF64 = function(it){\n return packIEEE754(it, 52, 8);\n};\nvar packF32 = function(it){\n return packIEEE754(it, 23, 4);\n};\n\nvar addGetter = function(C, key, internal){\n dP(C[PROTOTYPE], key, {get: function(){ return this[internal]; }});\n};\n\nvar get = function(view, bytes, index, isLittleEndian){\n var numIndex = +index\n , intIndex = toInteger(numIndex);\n if(numIndex != intIndex || intIndex < 0 || intIndex + bytes > view[$LENGTH])throw RangeError(WRONG_INDEX);\n var store = view[$BUFFER]._b\n , start = intIndex + view[$OFFSET]\n , pack = store.slice(start, start + bytes);\n return isLittleEndian ? pack : pack.reverse();\n};\nvar set = function(view, bytes, index, conversion, value, isLittleEndian){\n var numIndex = +index\n , intIndex = toInteger(numIndex);\n if(numIndex != intIndex || intIndex < 0 || intIndex + bytes > view[$LENGTH])throw RangeError(WRONG_INDEX);\n var store = view[$BUFFER]._b\n , start = intIndex + view[$OFFSET]\n , pack = conversion(+value);\n for(var i = 0; i < bytes; i++)store[start + i] = pack[isLittleEndian ? i : bytes - i - 1];\n};\n\nvar validateArrayBufferArguments = function(that, length){\n anInstance(that, $ArrayBuffer, ARRAY_BUFFER);\n var numberLength = +length\n , byteLength = toLength(numberLength);\n if(numberLength != byteLength)throw RangeError(WRONG_LENGTH);\n return byteLength;\n};\n\nif(!$typed.ABV){\n $ArrayBuffer = function ArrayBuffer(length){\n var byteLength = validateArrayBufferArguments(this, length);\n this._b = arrayFill.call(Array(byteLength), 0);\n this[$LENGTH] = byteLength;\n };\n\n $DataView = function DataView(buffer, byteOffset, byteLength){\n anInstance(this, $DataView, DATA_VIEW);\n anInstance(buffer, $ArrayBuffer, DATA_VIEW);\n var bufferLength = buffer[$LENGTH]\n , offset = toInteger(byteOffset);\n if(offset < 0 || offset > bufferLength)throw RangeError('Wrong offset!');\n byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);\n if(offset + byteLength > bufferLength)throw RangeError(WRONG_LENGTH);\n this[$BUFFER] = buffer;\n this[$OFFSET] = offset;\n this[$LENGTH] = byteLength;\n };\n\n if(DESCRIPTORS){\n addGetter($ArrayBuffer, BYTE_LENGTH, '_l');\n addGetter($DataView, BUFFER, '_b');\n addGetter($DataView, BYTE_LENGTH, '_l');\n addGetter($DataView, BYTE_OFFSET, '_o');\n }\n\n redefineAll($DataView[PROTOTYPE], {\n getInt8: function getInt8(byteOffset){\n return get(this, 1, byteOffset)[0] << 24 >> 24;\n },\n getUint8: function getUint8(byteOffset){\n return get(this, 1, byteOffset)[0];\n },\n getInt16: function getInt16(byteOffset /*, littleEndian */){\n var bytes = get(this, 2, byteOffset, arguments[1]);\n return (bytes[1] << 8 | bytes[0]) << 16 >> 16;\n },\n getUint16: function getUint16(byteOffset /*, littleEndian */){\n var bytes = get(this, 2, byteOffset, arguments[1]);\n return bytes[1] << 8 | bytes[0];\n },\n getInt32: function getInt32(byteOffset /*, littleEndian */){\n return unpackI32(get(this, 4, byteOffset, arguments[1]));\n },\n getUint32: function getUint32(byteOffset /*, littleEndian */){\n return unpackI32(get(this, 4, byteOffset, arguments[1])) >>> 0;\n },\n getFloat32: function getFloat32(byteOffset /*, littleEndian */){\n return unpackIEEE754(get(this, 4, byteOffset, arguments[1]), 23, 4);\n },\n getFloat64: function getFloat64(byteOffset /*, littleEndian */){\n return unpackIEEE754(get(this, 8, byteOffset, arguments[1]), 52, 8);\n },\n setInt8: function setInt8(byteOffset, value){\n set(this, 1, byteOffset, packI8, value);\n },\n setUint8: function setUint8(byteOffset, value){\n set(this, 1, byteOffset, packI8, value);\n },\n setInt16: function setInt16(byteOffset, value /*, littleEndian */){\n set(this, 2, byteOffset, packI16, value, arguments[2]);\n },\n setUint16: function setUint16(byteOffset, value /*, littleEndian */){\n set(this, 2, byteOffset, packI16, value, arguments[2]);\n },\n setInt32: function setInt32(byteOffset, value /*, littleEndian */){\n set(this, 4, byteOffset, packI32, value, arguments[2]);\n },\n setUint32: function setUint32(byteOffset, value /*, littleEndian */){\n set(this, 4, byteOffset, packI32, value, arguments[2]);\n },\n setFloat32: function setFloat32(byteOffset, value /*, littleEndian */){\n set(this, 4, byteOffset, packF32, value, arguments[2]);\n },\n setFloat64: function setFloat64(byteOffset, value /*, littleEndian */){\n set(this, 8, byteOffset, packF64, value, arguments[2]);\n }\n });\n} else {\n if(!fails(function(){\n new $ArrayBuffer; // eslint-disable-line no-new\n }) || !fails(function(){\n new $ArrayBuffer(.5); // eslint-disable-line no-new\n })){\n $ArrayBuffer = function ArrayBuffer(length){\n return new BaseBuffer(validateArrayBufferArguments(this, length));\n };\n var ArrayBufferProto = $ArrayBuffer[PROTOTYPE] = BaseBuffer[PROTOTYPE];\n for(var keys = gOPN(BaseBuffer), j = 0, key; keys.length > j; ){\n if(!((key = keys[j++]) in $ArrayBuffer))hide($ArrayBuffer, key, BaseBuffer[key]);\n };\n if(!LIBRARY)ArrayBufferProto.constructor = $ArrayBuffer;\n }\n // iOS Safari 7.x bug\n var view = new $DataView(new $ArrayBuffer(2))\n , $setInt8 = $DataView[PROTOTYPE].setInt8;\n view.setInt8(0, 2147483648);\n view.setInt8(1, 2147483649);\n if(view.getInt8(0) || !view.getInt8(1))redefineAll($DataView[PROTOTYPE], {\n setInt8: function setInt8(byteOffset, value){\n $setInt8.call(this, byteOffset, value << 24 >> 24);\n },\n setUint8: function setUint8(byteOffset, value){\n $setInt8.call(this, byteOffset, value << 24 >> 24);\n }\n }, true);\n}\nsetToStringTag($ArrayBuffer, ARRAY_BUFFER);\nsetToStringTag($DataView, DATA_VIEW);\nhide($DataView[PROTOTYPE], $typed.VIEW, true);\nexports[ARRAY_BUFFER] = $ArrayBuffer;\nexports[DATA_VIEW] = $DataView;\n},{\"106\":106,\"108\":108,\"113\":113,\"28\":28,\"34\":34,\"38\":38,\"40\":40,\"58\":58,\"6\":6,\"67\":67,\"72\":72,\"86\":86,\"9\":9,\"92\":92}],113:[function(_dereq_,module,exports){\nvar global = _dereq_(38)\n , hide = _dereq_(40)\n , uid = _dereq_(114)\n , TYPED = uid('typed_array')\n , VIEW = uid('view')\n , ABV = !!(global.ArrayBuffer && global.DataView)\n , CONSTR = ABV\n , i = 0, l = 9, Typed;\n\nvar TypedArrayConstructors = (\n 'Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array'\n).split(',');\n\nwhile(i < l){\n if(Typed = global[TypedArrayConstructors[i++]]){\n hide(Typed.prototype, TYPED, true);\n hide(Typed.prototype, VIEW, true);\n } else CONSTR = false;\n}\n\nmodule.exports = {\n ABV: ABV,\n CONSTR: CONSTR,\n TYPED: TYPED,\n VIEW: VIEW\n};\n},{\"114\":114,\"38\":38,\"40\":40}],114:[function(_dereq_,module,exports){\nvar id = 0\n , px = Math.random();\nmodule.exports = function(key){\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n},{}],115:[function(_dereq_,module,exports){\nvar global = _dereq_(38)\n , core = _dereq_(23)\n , LIBRARY = _dereq_(58)\n , wksExt = _dereq_(116)\n , defineProperty = _dereq_(67).f;\nmodule.exports = function(name){\n var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});\n if(name.charAt(0) != '_' && !(name in $Symbol))defineProperty($Symbol, name, {value: wksExt.f(name)});\n};\n},{\"116\":116,\"23\":23,\"38\":38,\"58\":58,\"67\":67}],116:[function(_dereq_,module,exports){\nexports.f = _dereq_(117);\n},{\"117\":117}],117:[function(_dereq_,module,exports){\nvar store = _dereq_(94)('wks')\n , uid = _dereq_(114)\n , Symbol = _dereq_(38).Symbol\n , USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function(name){\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n},{\"114\":114,\"38\":38,\"94\":94}],118:[function(_dereq_,module,exports){\nvar classof = _dereq_(17)\n , ITERATOR = _dereq_(117)('iterator')\n , Iterators = _dereq_(56);\nmodule.exports = _dereq_(23).getIteratorMethod = function(it){\n if(it != undefined)return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n},{\"117\":117,\"17\":17,\"23\":23,\"56\":56}],119:[function(_dereq_,module,exports){\n// https://github.com/benjamingr/RexExp.escape\nvar $export = _dereq_(32)\n , $re = _dereq_(88)(/[\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n\n$export($export.S, 'RegExp', {escape: function escape(it){ return $re(it); }});\n\n},{\"32\":32,\"88\":88}],120:[function(_dereq_,module,exports){\n// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)\nvar $export = _dereq_(32);\n\n$export($export.P, 'Array', {copyWithin: _dereq_(8)});\n\n_dereq_(5)('copyWithin');\n},{\"32\":32,\"5\":5,\"8\":8}],121:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , $every = _dereq_(12)(4);\n\n$export($export.P + $export.F * !_dereq_(96)([].every, true), 'Array', {\n // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg])\n every: function every(callbackfn /* , thisArg */){\n return $every(this, callbackfn, arguments[1]);\n }\n});\n},{\"12\":12,\"32\":32,\"96\":96}],122:[function(_dereq_,module,exports){\n// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)\nvar $export = _dereq_(32);\n\n$export($export.P, 'Array', {fill: _dereq_(9)});\n\n_dereq_(5)('fill');\n},{\"32\":32,\"5\":5,\"9\":9}],123:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , $filter = _dereq_(12)(2);\n\n$export($export.P + $export.F * !_dereq_(96)([].filter, true), 'Array', {\n // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])\n filter: function filter(callbackfn /* , thisArg */){\n return $filter(this, callbackfn, arguments[1]);\n }\n});\n},{\"12\":12,\"32\":32,\"96\":96}],124:[function(_dereq_,module,exports){\n'use strict';\n// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)\nvar $export = _dereq_(32)\n , $find = _dereq_(12)(6)\n , KEY = 'findIndex'\n , forced = true;\n// Shouldn't skip holes\nif(KEY in [])Array(1)[KEY](function(){ forced = false; });\n$export($export.P + $export.F * forced, 'Array', {\n findIndex: function findIndex(callbackfn/*, that = undefined */){\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n_dereq_(5)(KEY);\n},{\"12\":12,\"32\":32,\"5\":5}],125:[function(_dereq_,module,exports){\n'use strict';\n// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)\nvar $export = _dereq_(32)\n , $find = _dereq_(12)(5)\n , KEY = 'find'\n , forced = true;\n// Shouldn't skip holes\nif(KEY in [])Array(1)[KEY](function(){ forced = false; });\n$export($export.P + $export.F * forced, 'Array', {\n find: function find(callbackfn/*, that = undefined */){\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n_dereq_(5)(KEY);\n},{\"12\":12,\"32\":32,\"5\":5}],126:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , $forEach = _dereq_(12)(0)\n , STRICT = _dereq_(96)([].forEach, true);\n\n$export($export.P + $export.F * !STRICT, 'Array', {\n // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg])\n forEach: function forEach(callbackfn /* , thisArg */){\n return $forEach(this, callbackfn, arguments[1]);\n }\n});\n},{\"12\":12,\"32\":32,\"96\":96}],127:[function(_dereq_,module,exports){\n'use strict';\nvar ctx = _dereq_(25)\n , $export = _dereq_(32)\n , toObject = _dereq_(109)\n , call = _dereq_(51)\n , isArrayIter = _dereq_(46)\n , toLength = _dereq_(108)\n , createProperty = _dereq_(24)\n , getIterFn = _dereq_(118);\n\n$export($export.S + $export.F * !_dereq_(54)(function(iter){ Array.from(iter); }), 'Array', {\n // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)\n from: function from(arrayLike/*, mapfn = undefined, thisArg = undefined*/){\n var O = toObject(arrayLike)\n , C = typeof this == 'function' ? this : Array\n , aLen = arguments.length\n , mapfn = aLen > 1 ? arguments[1] : undefined\n , mapping = mapfn !== undefined\n , index = 0\n , iterFn = getIterFn(O)\n , length, result, step, iterator;\n if(mapping)mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);\n // if object isn't iterable or it's array with default iterator - use simple case\n if(iterFn != undefined && !(C == Array && isArrayIter(iterFn))){\n for(iterator = iterFn.call(O), result = new C; !(step = iterator.next()).done; index++){\n createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);\n }\n } else {\n length = toLength(O.length);\n for(result = new C(length); length > index; index++){\n createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);\n }\n }\n result.length = index;\n return result;\n }\n});\n\n},{\"108\":108,\"109\":109,\"118\":118,\"24\":24,\"25\":25,\"32\":32,\"46\":46,\"51\":51,\"54\":54}],128:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , $indexOf = _dereq_(11)(false)\n , $native = [].indexOf\n , NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0;\n\n$export($export.P + $export.F * (NEGATIVE_ZERO || !_dereq_(96)($native)), 'Array', {\n // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex])\n indexOf: function indexOf(searchElement /*, fromIndex = 0 */){\n return NEGATIVE_ZERO\n // convert -0 to +0\n ? $native.apply(this, arguments) || 0\n : $indexOf(this, searchElement, arguments[1]);\n }\n});\n},{\"11\":11,\"32\":32,\"96\":96}],129:[function(_dereq_,module,exports){\n// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)\nvar $export = _dereq_(32);\n\n$export($export.S, 'Array', {isArray: _dereq_(47)});\n},{\"32\":32,\"47\":47}],130:[function(_dereq_,module,exports){\n'use strict';\nvar addToUnscopables = _dereq_(5)\n , step = _dereq_(55)\n , Iterators = _dereq_(56)\n , toIObject = _dereq_(107);\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = _dereq_(53)(Array, 'Array', function(iterated, kind){\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function(){\n var O = this._t\n , kind = this._k\n , index = this._i++;\n if(!O || index >= O.length){\n this._t = undefined;\n return step(1);\n }\n if(kind == 'keys' )return step(0, index);\n if(kind == 'values')return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n},{\"107\":107,\"5\":5,\"53\":53,\"55\":55,\"56\":56}],131:[function(_dereq_,module,exports){\n'use strict';\n// 22.1.3.13 Array.prototype.join(separator)\nvar $export = _dereq_(32)\n , toIObject = _dereq_(107)\n , arrayJoin = [].join;\n\n// fallback for not array-like strings\n$export($export.P + $export.F * (_dereq_(45) != Object || !_dereq_(96)(arrayJoin)), 'Array', {\n join: function join(separator){\n return arrayJoin.call(toIObject(this), separator === undefined ? ',' : separator);\n }\n});\n},{\"107\":107,\"32\":32,\"45\":45,\"96\":96}],132:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , toIObject = _dereq_(107)\n , toInteger = _dereq_(106)\n , toLength = _dereq_(108)\n , $native = [].lastIndexOf\n , NEGATIVE_ZERO = !!$native && 1 / [1].lastIndexOf(1, -0) < 0;\n\n$export($export.P + $export.F * (NEGATIVE_ZERO || !_dereq_(96)($native)), 'Array', {\n // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex])\n lastIndexOf: function lastIndexOf(searchElement /*, fromIndex = @[*-1] */){\n // convert -0 to +0\n if(NEGATIVE_ZERO)return $native.apply(this, arguments) || 0;\n var O = toIObject(this)\n , length = toLength(O.length)\n , index = length - 1;\n if(arguments.length > 1)index = Math.min(index, toInteger(arguments[1]));\n if(index < 0)index = length + index;\n for(;index >= 0; index--)if(index in O)if(O[index] === searchElement)return index || 0;\n return -1;\n }\n});\n},{\"106\":106,\"107\":107,\"108\":108,\"32\":32,\"96\":96}],133:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , $map = _dereq_(12)(1);\n\n$export($export.P + $export.F * !_dereq_(96)([].map, true), 'Array', {\n // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])\n map: function map(callbackfn /* , thisArg */){\n return $map(this, callbackfn, arguments[1]);\n }\n});\n},{\"12\":12,\"32\":32,\"96\":96}],134:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , createProperty = _dereq_(24);\n\n// WebKit Array.of isn't generic\n$export($export.S + $export.F * _dereq_(34)(function(){\n function F(){}\n return !(Array.of.call(F) instanceof F);\n}), 'Array', {\n // 22.1.2.3 Array.of( ...items)\n of: function of(/* ...args */){\n var index = 0\n , aLen = arguments.length\n , result = new (typeof this == 'function' ? this : Array)(aLen);\n while(aLen > index)createProperty(result, index, arguments[index++]);\n result.length = aLen;\n return result;\n }\n});\n},{\"24\":24,\"32\":32,\"34\":34}],135:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , $reduce = _dereq_(13);\n\n$export($export.P + $export.F * !_dereq_(96)([].reduceRight, true), 'Array', {\n // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue])\n reduceRight: function reduceRight(callbackfn /* , initialValue */){\n return $reduce(this, callbackfn, arguments.length, arguments[1], true);\n }\n});\n},{\"13\":13,\"32\":32,\"96\":96}],136:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , $reduce = _dereq_(13);\n\n$export($export.P + $export.F * !_dereq_(96)([].reduce, true), 'Array', {\n // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue])\n reduce: function reduce(callbackfn /* , initialValue */){\n return $reduce(this, callbackfn, arguments.length, arguments[1], false);\n }\n});\n},{\"13\":13,\"32\":32,\"96\":96}],137:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , html = _dereq_(41)\n , cof = _dereq_(18)\n , toIndex = _dereq_(105)\n , toLength = _dereq_(108)\n , arraySlice = [].slice;\n\n// fallback for not array-like ES3 strings and DOM objects\n$export($export.P + $export.F * _dereq_(34)(function(){\n if(html)arraySlice.call(html);\n}), 'Array', {\n slice: function slice(begin, end){\n var len = toLength(this.length)\n , klass = cof(this);\n end = end === undefined ? len : end;\n if(klass == 'Array')return arraySlice.call(this, begin, end);\n var start = toIndex(begin, len)\n , upTo = toIndex(end, len)\n , size = toLength(upTo - start)\n , cloned = Array(size)\n , i = 0;\n for(; i < size; i++)cloned[i] = klass == 'String'\n ? this.charAt(start + i)\n : this[start + i];\n return cloned;\n }\n});\n},{\"105\":105,\"108\":108,\"18\":18,\"32\":32,\"34\":34,\"41\":41}],138:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , $some = _dereq_(12)(3);\n\n$export($export.P + $export.F * !_dereq_(96)([].some, true), 'Array', {\n // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg])\n some: function some(callbackfn /* , thisArg */){\n return $some(this, callbackfn, arguments[1]);\n }\n});\n},{\"12\":12,\"32\":32,\"96\":96}],139:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , aFunction = _dereq_(3)\n , toObject = _dereq_(109)\n , fails = _dereq_(34)\n , $sort = [].sort\n , test = [1, 2, 3];\n\n$export($export.P + $export.F * (fails(function(){\n // IE8-\n test.sort(undefined);\n}) || !fails(function(){\n // V8 bug\n test.sort(null);\n // Old WebKit\n}) || !_dereq_(96)($sort)), 'Array', {\n // 22.1.3.25 Array.prototype.sort(comparefn)\n sort: function sort(comparefn){\n return comparefn === undefined\n ? $sort.call(toObject(this))\n : $sort.call(toObject(this), aFunction(comparefn));\n }\n});\n},{\"109\":109,\"3\":3,\"32\":32,\"34\":34,\"96\":96}],140:[function(_dereq_,module,exports){\n_dereq_(91)('Array');\n},{\"91\":91}],141:[function(_dereq_,module,exports){\n// 20.3.3.1 / 15.9.4.4 Date.now()\nvar $export = _dereq_(32);\n\n$export($export.S, 'Date', {now: function(){ return new Date().getTime(); }});\n},{\"32\":32}],142:[function(_dereq_,module,exports){\n'use strict';\n// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()\nvar $export = _dereq_(32)\n , fails = _dereq_(34)\n , getTime = Date.prototype.getTime;\n\nvar lz = function(num){\n return num > 9 ? num : '0' + num;\n};\n\n// PhantomJS / old WebKit has a broken implementations\n$export($export.P + $export.F * (fails(function(){\n return new Date(-5e13 - 1).toISOString() != '0385-07-25T07:06:39.999Z';\n}) || !fails(function(){\n new Date(NaN).toISOString();\n})), 'Date', {\n toISOString: function toISOString(){\n if(!isFinite(getTime.call(this)))throw RangeError('Invalid time value');\n var d = this\n , y = d.getUTCFullYear()\n , m = d.getUTCMilliseconds()\n , s = y < 0 ? '-' : y > 9999 ? '+' : '';\n return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) +\n '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) +\n 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) +\n ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z';\n }\n});\n},{\"32\":32,\"34\":34}],143:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , toObject = _dereq_(109)\n , toPrimitive = _dereq_(110);\n\n$export($export.P + $export.F * _dereq_(34)(function(){\n return new Date(NaN).toJSON() !== null || Date.prototype.toJSON.call({toISOString: function(){ return 1; }}) !== 1;\n}), 'Date', {\n toJSON: function toJSON(key){\n var O = toObject(this)\n , pv = toPrimitive(O);\n return typeof pv == 'number' && !isFinite(pv) ? null : O.toISOString();\n }\n});\n},{\"109\":109,\"110\":110,\"32\":32,\"34\":34}],144:[function(_dereq_,module,exports){\nvar TO_PRIMITIVE = _dereq_(117)('toPrimitive')\n , proto = Date.prototype;\n\nif(!(TO_PRIMITIVE in proto))_dereq_(40)(proto, TO_PRIMITIVE, _dereq_(26));\n},{\"117\":117,\"26\":26,\"40\":40}],145:[function(_dereq_,module,exports){\nvar DateProto = Date.prototype\n , INVALID_DATE = 'Invalid Date'\n , TO_STRING = 'toString'\n , $toString = DateProto[TO_STRING]\n , getTime = DateProto.getTime;\nif(new Date(NaN) + '' != INVALID_DATE){\n _dereq_(87)(DateProto, TO_STRING, function toString(){\n var value = getTime.call(this);\n return value === value ? $toString.call(this) : INVALID_DATE;\n });\n}\n},{\"87\":87}],146:[function(_dereq_,module,exports){\n// 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...)\nvar $export = _dereq_(32);\n\n$export($export.P, 'Function', {bind: _dereq_(16)});\n},{\"16\":16,\"32\":32}],147:[function(_dereq_,module,exports){\n'use strict';\nvar isObject = _dereq_(49)\n , getPrototypeOf = _dereq_(74)\n , HAS_INSTANCE = _dereq_(117)('hasInstance')\n , FunctionProto = Function.prototype;\n// 19.2.3.6 Function.prototype[@@hasInstance](V)\nif(!(HAS_INSTANCE in FunctionProto))_dereq_(67).f(FunctionProto, HAS_INSTANCE, {value: function(O){\n if(typeof this != 'function' || !isObject(O))return false;\n if(!isObject(this.prototype))return O instanceof this;\n // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:\n while(O = getPrototypeOf(O))if(this.prototype === O)return true;\n return false;\n}});\n},{\"117\":117,\"49\":49,\"67\":67,\"74\":74}],148:[function(_dereq_,module,exports){\nvar dP = _dereq_(67).f\n , createDesc = _dereq_(85)\n , has = _dereq_(39)\n , FProto = Function.prototype\n , nameRE = /^\\s*function ([^ (]*)/\n , NAME = 'name';\n\nvar isExtensible = Object.isExtensible || function(){\n return true;\n};\n\n// 19.2.4.2 name\nNAME in FProto || _dereq_(28) && dP(FProto, NAME, {\n configurable: true,\n get: function(){\n try {\n var that = this\n , name = ('' + that).match(nameRE)[1];\n has(that, NAME) || !isExtensible(that) || dP(that, NAME, createDesc(5, name));\n return name;\n } catch(e){\n return '';\n }\n }\n});\n},{\"28\":28,\"39\":39,\"67\":67,\"85\":85}],149:[function(_dereq_,module,exports){\n'use strict';\nvar strong = _dereq_(19);\n\n// 23.1 Map Objects\nmodule.exports = _dereq_(22)('Map', function(get){\n return function Map(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.1.3.6 Map.prototype.get(key)\n get: function get(key){\n var entry = strong.getEntry(this, key);\n return entry && entry.v;\n },\n // 23.1.3.9 Map.prototype.set(key, value)\n set: function set(key, value){\n return strong.def(this, key === 0 ? 0 : key, value);\n }\n}, strong, true);\n},{\"19\":19,\"22\":22}],150:[function(_dereq_,module,exports){\n// 20.2.2.3 Math.acosh(x)\nvar $export = _dereq_(32)\n , log1p = _dereq_(60)\n , sqrt = Math.sqrt\n , $acosh = Math.acosh;\n\n$export($export.S + $export.F * !($acosh\n // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509\n && Math.floor($acosh(Number.MAX_VALUE)) == 710\n // Tor Browser bug: Math.acosh(Infinity) -> NaN \n && $acosh(Infinity) == Infinity\n), 'Math', {\n acosh: function acosh(x){\n return (x = +x) < 1 ? NaN : x > 94906265.62425156\n ? Math.log(x) + Math.LN2\n : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1));\n }\n});\n},{\"32\":32,\"60\":60}],151:[function(_dereq_,module,exports){\n// 20.2.2.5 Math.asinh(x)\nvar $export = _dereq_(32)\n , $asinh = Math.asinh;\n\nfunction asinh(x){\n return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1));\n}\n\n// Tor Browser bug: Math.asinh(0) -> -0 \n$export($export.S + $export.F * !($asinh && 1 / $asinh(0) > 0), 'Math', {asinh: asinh});\n},{\"32\":32}],152:[function(_dereq_,module,exports){\n// 20.2.2.7 Math.atanh(x)\nvar $export = _dereq_(32)\n , $atanh = Math.atanh;\n\n// Tor Browser bug: Math.atanh(-0) -> 0 \n$export($export.S + $export.F * !($atanh && 1 / $atanh(-0) < 0), 'Math', {\n atanh: function atanh(x){\n return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2;\n }\n});\n},{\"32\":32}],153:[function(_dereq_,module,exports){\n// 20.2.2.9 Math.cbrt(x)\nvar $export = _dereq_(32)\n , sign = _dereq_(61);\n\n$export($export.S, 'Math', {\n cbrt: function cbrt(x){\n return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3);\n }\n});\n},{\"32\":32,\"61\":61}],154:[function(_dereq_,module,exports){\n// 20.2.2.11 Math.clz32(x)\nvar $export = _dereq_(32);\n\n$export($export.S, 'Math', {\n clz32: function clz32(x){\n return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32;\n }\n});\n},{\"32\":32}],155:[function(_dereq_,module,exports){\n// 20.2.2.12 Math.cosh(x)\nvar $export = _dereq_(32)\n , exp = Math.exp;\n\n$export($export.S, 'Math', {\n cosh: function cosh(x){\n return (exp(x = +x) + exp(-x)) / 2;\n }\n});\n},{\"32\":32}],156:[function(_dereq_,module,exports){\n// 20.2.2.14 Math.expm1(x)\nvar $export = _dereq_(32)\n , $expm1 = _dereq_(59);\n\n$export($export.S + $export.F * ($expm1 != Math.expm1), 'Math', {expm1: $expm1});\n},{\"32\":32,\"59\":59}],157:[function(_dereq_,module,exports){\n// 20.2.2.16 Math.fround(x)\nvar $export = _dereq_(32)\n , sign = _dereq_(61)\n , pow = Math.pow\n , EPSILON = pow(2, -52)\n , EPSILON32 = pow(2, -23)\n , MAX32 = pow(2, 127) * (2 - EPSILON32)\n , MIN32 = pow(2, -126);\n\nvar roundTiesToEven = function(n){\n return n + 1 / EPSILON - 1 / EPSILON;\n};\n\n\n$export($export.S, 'Math', {\n fround: function fround(x){\n var $abs = Math.abs(x)\n , $sign = sign(x)\n , a, result;\n if($abs < MIN32)return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32;\n a = (1 + EPSILON32 / EPSILON) * $abs;\n result = a - (a - $abs);\n if(result > MAX32 || result != result)return $sign * Infinity;\n return $sign * result;\n }\n});\n},{\"32\":32,\"61\":61}],158:[function(_dereq_,module,exports){\n// 20.2.2.17 Math.hypot([value1[, value2[, … ]]])\nvar $export = _dereq_(32)\n , abs = Math.abs;\n\n$export($export.S, 'Math', {\n hypot: function hypot(value1, value2){ // eslint-disable-line no-unused-vars\n var sum = 0\n , i = 0\n , aLen = arguments.length\n , larg = 0\n , arg, div;\n while(i < aLen){\n arg = abs(arguments[i++]);\n if(larg < arg){\n div = larg / arg;\n sum = sum * div * div + 1;\n larg = arg;\n } else if(arg > 0){\n div = arg / larg;\n sum += div * div;\n } else sum += arg;\n }\n return larg === Infinity ? Infinity : larg * Math.sqrt(sum);\n }\n});\n},{\"32\":32}],159:[function(_dereq_,module,exports){\n// 20.2.2.18 Math.imul(x, y)\nvar $export = _dereq_(32)\n , $imul = Math.imul;\n\n// some WebKit versions fails with big numbers, some has wrong arity\n$export($export.S + $export.F * _dereq_(34)(function(){\n return $imul(0xffffffff, 5) != -5 || $imul.length != 2;\n}), 'Math', {\n imul: function imul(x, y){\n var UINT16 = 0xffff\n , xn = +x\n , yn = +y\n , xl = UINT16 & xn\n , yl = UINT16 & yn;\n return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0);\n }\n});\n},{\"32\":32,\"34\":34}],160:[function(_dereq_,module,exports){\n// 20.2.2.21 Math.log10(x)\nvar $export = _dereq_(32);\n\n$export($export.S, 'Math', {\n log10: function log10(x){\n return Math.log(x) / Math.LN10;\n }\n});\n},{\"32\":32}],161:[function(_dereq_,module,exports){\n// 20.2.2.20 Math.log1p(x)\nvar $export = _dereq_(32);\n\n$export($export.S, 'Math', {log1p: _dereq_(60)});\n},{\"32\":32,\"60\":60}],162:[function(_dereq_,module,exports){\n// 20.2.2.22 Math.log2(x)\nvar $export = _dereq_(32);\n\n$export($export.S, 'Math', {\n log2: function log2(x){\n return Math.log(x) / Math.LN2;\n }\n});\n},{\"32\":32}],163:[function(_dereq_,module,exports){\n// 20.2.2.28 Math.sign(x)\nvar $export = _dereq_(32);\n\n$export($export.S, 'Math', {sign: _dereq_(61)});\n},{\"32\":32,\"61\":61}],164:[function(_dereq_,module,exports){\n// 20.2.2.30 Math.sinh(x)\nvar $export = _dereq_(32)\n , expm1 = _dereq_(59)\n , exp = Math.exp;\n\n// V8 near Chromium 38 has a problem with very small numbers\n$export($export.S + $export.F * _dereq_(34)(function(){\n return !Math.sinh(-2e-17) != -2e-17;\n}), 'Math', {\n sinh: function sinh(x){\n return Math.abs(x = +x) < 1\n ? (expm1(x) - expm1(-x)) / 2\n : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2);\n }\n});\n},{\"32\":32,\"34\":34,\"59\":59}],165:[function(_dereq_,module,exports){\n// 20.2.2.33 Math.tanh(x)\nvar $export = _dereq_(32)\n , expm1 = _dereq_(59)\n , exp = Math.exp;\n\n$export($export.S, 'Math', {\n tanh: function tanh(x){\n var a = expm1(x = +x)\n , b = expm1(-x);\n return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x));\n }\n});\n},{\"32\":32,\"59\":59}],166:[function(_dereq_,module,exports){\n// 20.2.2.34 Math.trunc(x)\nvar $export = _dereq_(32);\n\n$export($export.S, 'Math', {\n trunc: function trunc(it){\n return (it > 0 ? Math.floor : Math.ceil)(it);\n }\n});\n},{\"32\":32}],167:[function(_dereq_,module,exports){\n'use strict';\nvar global = _dereq_(38)\n , has = _dereq_(39)\n , cof = _dereq_(18)\n , inheritIfRequired = _dereq_(43)\n , toPrimitive = _dereq_(110)\n , fails = _dereq_(34)\n , gOPN = _dereq_(72).f\n , gOPD = _dereq_(70).f\n , dP = _dereq_(67).f\n , $trim = _dereq_(102).trim\n , NUMBER = 'Number'\n , $Number = global[NUMBER]\n , Base = $Number\n , proto = $Number.prototype\n // Opera ~12 has broken Object#toString\n , BROKEN_COF = cof(_dereq_(66)(proto)) == NUMBER\n , TRIM = 'trim' in String.prototype;\n\n// 7.1.3 ToNumber(argument)\nvar toNumber = function(argument){\n var it = toPrimitive(argument, false);\n if(typeof it == 'string' && it.length > 2){\n it = TRIM ? it.trim() : $trim(it, 3);\n var first = it.charCodeAt(0)\n , third, radix, maxCode;\n if(first === 43 || first === 45){\n third = it.charCodeAt(2);\n if(third === 88 || third === 120)return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if(first === 48){\n switch(it.charCodeAt(1)){\n case 66 : case 98 : radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i\n case 79 : case 111 : radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i\n default : return +it;\n }\n for(var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++){\n code = digits.charCodeAt(i);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if(code < 48 || code > maxCode)return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\nif(!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')){\n $Number = function Number(value){\n var it = arguments.length < 1 ? 0 : value\n , that = this;\n return that instanceof $Number\n // check on 1..constructor(foo) case\n && (BROKEN_COF ? fails(function(){ proto.valueOf.call(that); }) : cof(that) != NUMBER)\n ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);\n };\n for(var keys = _dereq_(28) ? gOPN(Base) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES6 (in case, if modules with ES6 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++){\n if(has(Base, key = keys[j]) && !has($Number, key)){\n dP($Number, key, gOPD(Base, key));\n }\n }\n $Number.prototype = proto;\n proto.constructor = $Number;\n _dereq_(87)(global, NUMBER, $Number);\n}\n},{\"102\":102,\"110\":110,\"18\":18,\"28\":28,\"34\":34,\"38\":38,\"39\":39,\"43\":43,\"66\":66,\"67\":67,\"70\":70,\"72\":72,\"87\":87}],168:[function(_dereq_,module,exports){\n// 20.1.2.1 Number.EPSILON\nvar $export = _dereq_(32);\n\n$export($export.S, 'Number', {EPSILON: Math.pow(2, -52)});\n},{\"32\":32}],169:[function(_dereq_,module,exports){\n// 20.1.2.2 Number.isFinite(number)\nvar $export = _dereq_(32)\n , _isFinite = _dereq_(38).isFinite;\n\n$export($export.S, 'Number', {\n isFinite: function isFinite(it){\n return typeof it == 'number' && _isFinite(it);\n }\n});\n},{\"32\":32,\"38\":38}],170:[function(_dereq_,module,exports){\n// 20.1.2.3 Number.isInteger(number)\nvar $export = _dereq_(32);\n\n$export($export.S, 'Number', {isInteger: _dereq_(48)});\n},{\"32\":32,\"48\":48}],171:[function(_dereq_,module,exports){\n// 20.1.2.4 Number.isNaN(number)\nvar $export = _dereq_(32);\n\n$export($export.S, 'Number', {\n isNaN: function isNaN(number){\n return number != number;\n }\n});\n},{\"32\":32}],172:[function(_dereq_,module,exports){\n// 20.1.2.5 Number.isSafeInteger(number)\nvar $export = _dereq_(32)\n , isInteger = _dereq_(48)\n , abs = Math.abs;\n\n$export($export.S, 'Number', {\n isSafeInteger: function isSafeInteger(number){\n return isInteger(number) && abs(number) <= 0x1fffffffffffff;\n }\n});\n},{\"32\":32,\"48\":48}],173:[function(_dereq_,module,exports){\n// 20.1.2.6 Number.MAX_SAFE_INTEGER\nvar $export = _dereq_(32);\n\n$export($export.S, 'Number', {MAX_SAFE_INTEGER: 0x1fffffffffffff});\n},{\"32\":32}],174:[function(_dereq_,module,exports){\n// 20.1.2.10 Number.MIN_SAFE_INTEGER\nvar $export = _dereq_(32);\n\n$export($export.S, 'Number', {MIN_SAFE_INTEGER: -0x1fffffffffffff});\n},{\"32\":32}],175:[function(_dereq_,module,exports){\nvar $export = _dereq_(32)\n , $parseFloat = _dereq_(81);\n// 20.1.2.12 Number.parseFloat(string)\n$export($export.S + $export.F * (Number.parseFloat != $parseFloat), 'Number', {parseFloat: $parseFloat});\n},{\"32\":32,\"81\":81}],176:[function(_dereq_,module,exports){\nvar $export = _dereq_(32)\n , $parseInt = _dereq_(82);\n// 20.1.2.13 Number.parseInt(string, radix)\n$export($export.S + $export.F * (Number.parseInt != $parseInt), 'Number', {parseInt: $parseInt});\n},{\"32\":32,\"82\":82}],177:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , toInteger = _dereq_(106)\n , aNumberValue = _dereq_(4)\n , repeat = _dereq_(101)\n , $toFixed = 1..toFixed\n , floor = Math.floor\n , data = [0, 0, 0, 0, 0, 0]\n , ERROR = 'Number.toFixed: incorrect invocation!'\n , ZERO = '0';\n\nvar multiply = function(n, c){\n var i = -1\n , c2 = c;\n while(++i < 6){\n c2 += n * data[i];\n data[i] = c2 % 1e7;\n c2 = floor(c2 / 1e7);\n }\n};\nvar divide = function(n){\n var i = 6\n , c = 0;\n while(--i >= 0){\n c += data[i];\n data[i] = floor(c / n);\n c = (c % n) * 1e7;\n }\n};\nvar numToString = function(){\n var i = 6\n , s = '';\n while(--i >= 0){\n if(s !== '' || i === 0 || data[i] !== 0){\n var t = String(data[i]);\n s = s === '' ? t : s + repeat.call(ZERO, 7 - t.length) + t;\n }\n } return s;\n};\nvar pow = function(x, n, acc){\n return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc);\n};\nvar log = function(x){\n var n = 0\n , x2 = x;\n while(x2 >= 4096){\n n += 12;\n x2 /= 4096;\n }\n while(x2 >= 2){\n n += 1;\n x2 /= 2;\n } return n;\n};\n\n$export($export.P + $export.F * (!!$toFixed && (\n 0.00008.toFixed(3) !== '0.000' ||\n 0.9.toFixed(0) !== '1' ||\n 1.255.toFixed(2) !== '1.25' ||\n 1000000000000000128..toFixed(0) !== '1000000000000000128'\n) || !_dereq_(34)(function(){\n // V8 ~ Android 4.3-\n $toFixed.call({});\n})), 'Number', {\n toFixed: function toFixed(fractionDigits){\n var x = aNumberValue(this, ERROR)\n , f = toInteger(fractionDigits)\n , s = ''\n , m = ZERO\n , e, z, j, k;\n if(f < 0 || f > 20)throw RangeError(ERROR);\n if(x != x)return 'NaN';\n if(x <= -1e21 || x >= 1e21)return String(x);\n if(x < 0){\n s = '-';\n x = -x;\n }\n if(x > 1e-21){\n e = log(x * pow(2, 69, 1)) - 69;\n z = e < 0 ? x * pow(2, -e, 1) : x / pow(2, e, 1);\n z *= 0x10000000000000;\n e = 52 - e;\n if(e > 0){\n multiply(0, z);\n j = f;\n while(j >= 7){\n multiply(1e7, 0);\n j -= 7;\n }\n multiply(pow(10, j, 1), 0);\n j = e - 1;\n while(j >= 23){\n divide(1 << 23);\n j -= 23;\n }\n divide(1 << j);\n multiply(1, 1);\n divide(2);\n m = numToString();\n } else {\n multiply(0, z);\n multiply(1 << -e, 0);\n m = numToString() + repeat.call(ZERO, f);\n }\n }\n if(f > 0){\n k = m.length;\n m = s + (k <= f ? '0.' + repeat.call(ZERO, f - k) + m : m.slice(0, k - f) + '.' + m.slice(k - f));\n } else {\n m = s + m;\n } return m;\n }\n});\n},{\"101\":101,\"106\":106,\"32\":32,\"34\":34,\"4\":4}],178:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , $fails = _dereq_(34)\n , aNumberValue = _dereq_(4)\n , $toPrecision = 1..toPrecision;\n\n$export($export.P + $export.F * ($fails(function(){\n // IE7-\n return $toPrecision.call(1, undefined) !== '1';\n}) || !$fails(function(){\n // V8 ~ Android 4.3-\n $toPrecision.call({});\n})), 'Number', {\n toPrecision: function toPrecision(precision){\n var that = aNumberValue(this, 'Number#toPrecision: incorrect invocation!');\n return precision === undefined ? $toPrecision.call(that) : $toPrecision.call(that, precision); \n }\n});\n},{\"32\":32,\"34\":34,\"4\":4}],179:[function(_dereq_,module,exports){\n// 19.1.3.1 Object.assign(target, source)\nvar $export = _dereq_(32);\n\n$export($export.S + $export.F, 'Object', {assign: _dereq_(65)});\n},{\"32\":32,\"65\":65}],180:[function(_dereq_,module,exports){\nvar $export = _dereq_(32)\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\n$export($export.S, 'Object', {create: _dereq_(66)});\n},{\"32\":32,\"66\":66}],181:[function(_dereq_,module,exports){\nvar $export = _dereq_(32);\n// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)\n$export($export.S + $export.F * !_dereq_(28), 'Object', {defineProperties: _dereq_(68)});\n},{\"28\":28,\"32\":32,\"68\":68}],182:[function(_dereq_,module,exports){\nvar $export = _dereq_(32);\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !_dereq_(28), 'Object', {defineProperty: _dereq_(67).f});\n},{\"28\":28,\"32\":32,\"67\":67}],183:[function(_dereq_,module,exports){\n// 19.1.2.5 Object.freeze(O)\nvar isObject = _dereq_(49)\n , meta = _dereq_(62).onFreeze;\n\n_dereq_(78)('freeze', function($freeze){\n return function freeze(it){\n return $freeze && isObject(it) ? $freeze(meta(it)) : it;\n };\n});\n},{\"49\":49,\"62\":62,\"78\":78}],184:[function(_dereq_,module,exports){\n// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\nvar toIObject = _dereq_(107)\n , $getOwnPropertyDescriptor = _dereq_(70).f;\n\n_dereq_(78)('getOwnPropertyDescriptor', function(){\n return function getOwnPropertyDescriptor(it, key){\n return $getOwnPropertyDescriptor(toIObject(it), key);\n };\n});\n},{\"107\":107,\"70\":70,\"78\":78}],185:[function(_dereq_,module,exports){\n// 19.1.2.7 Object.getOwnPropertyNames(O)\n_dereq_(78)('getOwnPropertyNames', function(){\n return _dereq_(71).f;\n});\n},{\"71\":71,\"78\":78}],186:[function(_dereq_,module,exports){\n// 19.1.2.9 Object.getPrototypeOf(O)\nvar toObject = _dereq_(109)\n , $getPrototypeOf = _dereq_(74);\n\n_dereq_(78)('getPrototypeOf', function(){\n return function getPrototypeOf(it){\n return $getPrototypeOf(toObject(it));\n };\n});\n},{\"109\":109,\"74\":74,\"78\":78}],187:[function(_dereq_,module,exports){\n// 19.1.2.11 Object.isExtensible(O)\nvar isObject = _dereq_(49);\n\n_dereq_(78)('isExtensible', function($isExtensible){\n return function isExtensible(it){\n return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false;\n };\n});\n},{\"49\":49,\"78\":78}],188:[function(_dereq_,module,exports){\n// 19.1.2.12 Object.isFrozen(O)\nvar isObject = _dereq_(49);\n\n_dereq_(78)('isFrozen', function($isFrozen){\n return function isFrozen(it){\n return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true;\n };\n});\n},{\"49\":49,\"78\":78}],189:[function(_dereq_,module,exports){\n// 19.1.2.13 Object.isSealed(O)\nvar isObject = _dereq_(49);\n\n_dereq_(78)('isSealed', function($isSealed){\n return function isSealed(it){\n return isObject(it) ? $isSealed ? $isSealed(it) : false : true;\n };\n});\n},{\"49\":49,\"78\":78}],190:[function(_dereq_,module,exports){\n// 19.1.3.10 Object.is(value1, value2)\nvar $export = _dereq_(32);\n$export($export.S, 'Object', {is: _dereq_(89)});\n},{\"32\":32,\"89\":89}],191:[function(_dereq_,module,exports){\n// 19.1.2.14 Object.keys(O)\nvar toObject = _dereq_(109)\n , $keys = _dereq_(76);\n\n_dereq_(78)('keys', function(){\n return function keys(it){\n return $keys(toObject(it));\n };\n});\n},{\"109\":109,\"76\":76,\"78\":78}],192:[function(_dereq_,module,exports){\n// 19.1.2.15 Object.preventExtensions(O)\nvar isObject = _dereq_(49)\n , meta = _dereq_(62).onFreeze;\n\n_dereq_(78)('preventExtensions', function($preventExtensions){\n return function preventExtensions(it){\n return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it;\n };\n});\n},{\"49\":49,\"62\":62,\"78\":78}],193:[function(_dereq_,module,exports){\n// 19.1.2.17 Object.seal(O)\nvar isObject = _dereq_(49)\n , meta = _dereq_(62).onFreeze;\n\n_dereq_(78)('seal', function($seal){\n return function seal(it){\n return $seal && isObject(it) ? $seal(meta(it)) : it;\n };\n});\n},{\"49\":49,\"62\":62,\"78\":78}],194:[function(_dereq_,module,exports){\n// 19.1.3.19 Object.setPrototypeOf(O, proto)\nvar $export = _dereq_(32);\n$export($export.S, 'Object', {setPrototypeOf: _dereq_(90).set});\n},{\"32\":32,\"90\":90}],195:[function(_dereq_,module,exports){\n'use strict';\n// 19.1.3.6 Object.prototype.toString()\nvar classof = _dereq_(17)\n , test = {};\ntest[_dereq_(117)('toStringTag')] = 'z';\nif(test + '' != '[object z]'){\n _dereq_(87)(Object.prototype, 'toString', function toString(){\n return '[object ' + classof(this) + ']';\n }, true);\n}\n},{\"117\":117,\"17\":17,\"87\":87}],196:[function(_dereq_,module,exports){\nvar $export = _dereq_(32)\n , $parseFloat = _dereq_(81);\n// 18.2.4 parseFloat(string)\n$export($export.G + $export.F * (parseFloat != $parseFloat), {parseFloat: $parseFloat});\n},{\"32\":32,\"81\":81}],197:[function(_dereq_,module,exports){\nvar $export = _dereq_(32)\n , $parseInt = _dereq_(82);\n// 18.2.5 parseInt(string, radix)\n$export($export.G + $export.F * (parseInt != $parseInt), {parseInt: $parseInt});\n},{\"32\":32,\"82\":82}],198:[function(_dereq_,module,exports){\n'use strict';\nvar LIBRARY = _dereq_(58)\n , global = _dereq_(38)\n , ctx = _dereq_(25)\n , classof = _dereq_(17)\n , $export = _dereq_(32)\n , isObject = _dereq_(49)\n , aFunction = _dereq_(3)\n , anInstance = _dereq_(6)\n , forOf = _dereq_(37)\n , speciesConstructor = _dereq_(95)\n , task = _dereq_(104).set\n , microtask = _dereq_(64)()\n , PROMISE = 'Promise'\n , TypeError = global.TypeError\n , process = global.process\n , $Promise = global[PROMISE]\n , process = global.process\n , isNode = classof(process) == 'process'\n , empty = function(){ /* empty */ }\n , Internal, GenericPromiseCapability, Wrapper;\n\nvar USE_NATIVE = !!function(){\n try {\n // correct subclassing with @@species support\n var promise = $Promise.resolve(1)\n , FakePromise = (promise.constructor = {})[_dereq_(117)('species')] = function(exec){ exec(empty, empty); };\n // unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n return (isNode || typeof PromiseRejectionEvent == 'function') && promise.then(empty) instanceof FakePromise;\n } catch(e){ /* empty */ }\n}();\n\n// helpers\nvar sameConstructor = function(a, b){\n // with library wrapper special case\n return a === b || a === $Promise && b === Wrapper;\n};\nvar isThenable = function(it){\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\nvar newPromiseCapability = function(C){\n return sameConstructor($Promise, C)\n ? new PromiseCapability(C)\n : new GenericPromiseCapability(C);\n};\nvar PromiseCapability = GenericPromiseCapability = function(C){\n var resolve, reject;\n this.promise = new C(function($$resolve, $$reject){\n if(resolve !== undefined || reject !== undefined)throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n};\nvar perform = function(exec){\n try {\n exec();\n } catch(e){\n return {error: e};\n }\n};\nvar notify = function(promise, isReject){\n if(promise._n)return;\n promise._n = true;\n var chain = promise._c;\n microtask(function(){\n var value = promise._v\n , ok = promise._s == 1\n , i = 0;\n var run = function(reaction){\n var handler = ok ? reaction.ok : reaction.fail\n , resolve = reaction.resolve\n , reject = reaction.reject\n , domain = reaction.domain\n , result, then;\n try {\n if(handler){\n if(!ok){\n if(promise._h == 2)onHandleUnhandled(promise);\n promise._h = 1;\n }\n if(handler === true)result = value;\n else {\n if(domain)domain.enter();\n result = handler(value);\n if(domain)domain.exit();\n }\n if(result === reaction.promise){\n reject(TypeError('Promise-chain cycle'));\n } else if(then = isThenable(result)){\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch(e){\n reject(e);\n }\n };\n while(chain.length > i)run(chain[i++]); // variable length - can't use forEach\n promise._c = [];\n promise._n = false;\n if(isReject && !promise._h)onUnhandled(promise);\n });\n};\nvar onUnhandled = function(promise){\n task.call(global, function(){\n var value = promise._v\n , abrupt, handler, console;\n if(isUnhandled(promise)){\n abrupt = perform(function(){\n if(isNode){\n process.emit('unhandledRejection', value, promise);\n } else if(handler = global.onunhandledrejection){\n handler({promise: promise, reason: value});\n } else if((console = global.console) && console.error){\n console.error('Unhandled promise rejection', value);\n }\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n promise._h = isNode || isUnhandled(promise) ? 2 : 1;\n } promise._a = undefined;\n if(abrupt)throw abrupt.error;\n });\n};\nvar isUnhandled = function(promise){\n if(promise._h == 1)return false;\n var chain = promise._a || promise._c\n , i = 0\n , reaction;\n while(chain.length > i){\n reaction = chain[i++];\n if(reaction.fail || !isUnhandled(reaction.promise))return false;\n } return true;\n};\nvar onHandleUnhandled = function(promise){\n task.call(global, function(){\n var handler;\n if(isNode){\n process.emit('rejectionHandled', promise);\n } else if(handler = global.onrejectionhandled){\n handler({promise: promise, reason: promise._v});\n }\n });\n};\nvar $reject = function(value){\n var promise = this;\n if(promise._d)return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n promise._v = value;\n promise._s = 2;\n if(!promise._a)promise._a = promise._c.slice();\n notify(promise, true);\n};\nvar $resolve = function(value){\n var promise = this\n , then;\n if(promise._d)return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n try {\n if(promise === value)throw TypeError(\"Promise can't be resolved itself\");\n if(then = isThenable(value)){\n microtask(function(){\n var wrapper = {_w: promise, _d: false}; // wrap\n try {\n then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));\n } catch(e){\n $reject.call(wrapper, e);\n }\n });\n } else {\n promise._v = value;\n promise._s = 1;\n notify(promise, false);\n }\n } catch(e){\n $reject.call({_w: promise, _d: false}, e); // wrap\n }\n};\n\n// constructor polyfill\nif(!USE_NATIVE){\n // 25.4.3.1 Promise(executor)\n $Promise = function Promise(executor){\n anInstance(this, $Promise, PROMISE, '_h');\n aFunction(executor);\n Internal.call(this);\n try {\n executor(ctx($resolve, this, 1), ctx($reject, this, 1));\n } catch(err){\n $reject.call(this, err);\n }\n };\n Internal = function Promise(executor){\n this._c = []; // <- awaiting reactions\n this._a = undefined; // <- checked in isUnhandled reactions\n this._s = 0; // <- state\n this._d = false; // <- done\n this._v = undefined; // <- value\n this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled\n this._n = false; // <- notify\n };\n Internal.prototype = _dereq_(86)($Promise.prototype, {\n // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)\n then: function then(onFulfilled, onRejected){\n var reaction = newPromiseCapability(speciesConstructor(this, $Promise));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = isNode ? process.domain : undefined;\n this._c.push(reaction);\n if(this._a)this._a.push(reaction);\n if(this._s)notify(this, false);\n return reaction.promise;\n },\n // 25.4.5.1 Promise.prototype.catch(onRejected)\n 'catch': function(onRejected){\n return this.then(undefined, onRejected);\n }\n });\n PromiseCapability = function(){\n var promise = new Internal;\n this.promise = promise;\n this.resolve = ctx($resolve, promise, 1);\n this.reject = ctx($reject, promise, 1);\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, {Promise: $Promise});\n_dereq_(92)($Promise, PROMISE);\n_dereq_(91)(PROMISE);\nWrapper = _dereq_(23)[PROMISE];\n\n// statics\n$export($export.S + $export.F * !USE_NATIVE, PROMISE, {\n // 25.4.4.5 Promise.reject(r)\n reject: function reject(r){\n var capability = newPromiseCapability(this)\n , $$reject = capability.reject;\n $$reject(r);\n return capability.promise;\n }\n});\n$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {\n // 25.4.4.6 Promise.resolve(x)\n resolve: function resolve(x){\n // instanceof instead of internal slot check because we should fix it without replacement native Promise core\n if(x instanceof $Promise && sameConstructor(x.constructor, this))return x;\n var capability = newPromiseCapability(this)\n , $$resolve = capability.resolve;\n $$resolve(x);\n return capability.promise;\n }\n});\n$export($export.S + $export.F * !(USE_NATIVE && _dereq_(54)(function(iter){\n $Promise.all(iter)['catch'](empty);\n})), PROMISE, {\n // 25.4.4.1 Promise.all(iterable)\n all: function all(iterable){\n var C = this\n , capability = newPromiseCapability(C)\n , resolve = capability.resolve\n , reject = capability.reject;\n var abrupt = perform(function(){\n var values = []\n , index = 0\n , remaining = 1;\n forOf(iterable, false, function(promise){\n var $index = index++\n , alreadyCalled = false;\n values.push(undefined);\n remaining++;\n C.resolve(promise).then(function(value){\n if(alreadyCalled)return;\n alreadyCalled = true;\n values[$index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if(abrupt)reject(abrupt.error);\n return capability.promise;\n },\n // 25.4.4.4 Promise.race(iterable)\n race: function race(iterable){\n var C = this\n , capability = newPromiseCapability(C)\n , reject = capability.reject;\n var abrupt = perform(function(){\n forOf(iterable, false, function(promise){\n C.resolve(promise).then(capability.resolve, reject);\n });\n });\n if(abrupt)reject(abrupt.error);\n return capability.promise;\n }\n});\n},{\"104\":104,\"117\":117,\"17\":17,\"23\":23,\"25\":25,\"3\":3,\"32\":32,\"37\":37,\"38\":38,\"49\":49,\"54\":54,\"58\":58,\"6\":6,\"64\":64,\"86\":86,\"91\":91,\"92\":92,\"95\":95}],199:[function(_dereq_,module,exports){\n// 26.1.1 Reflect.apply(target, thisArgument, argumentsList)\nvar $export = _dereq_(32)\n , aFunction = _dereq_(3)\n , anObject = _dereq_(7)\n , rApply = (_dereq_(38).Reflect || {}).apply\n , fApply = Function.apply;\n// MS Edge argumentsList argument is optional\n$export($export.S + $export.F * !_dereq_(34)(function(){\n rApply(function(){});\n}), 'Reflect', {\n apply: function apply(target, thisArgument, argumentsList){\n var T = aFunction(target)\n , L = anObject(argumentsList);\n return rApply ? rApply(T, thisArgument, L) : fApply.call(T, thisArgument, L);\n }\n});\n},{\"3\":3,\"32\":32,\"34\":34,\"38\":38,\"7\":7}],200:[function(_dereq_,module,exports){\n// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])\nvar $export = _dereq_(32)\n , create = _dereq_(66)\n , aFunction = _dereq_(3)\n , anObject = _dereq_(7)\n , isObject = _dereq_(49)\n , fails = _dereq_(34)\n , bind = _dereq_(16)\n , rConstruct = (_dereq_(38).Reflect || {}).construct;\n\n// MS Edge supports only 2 arguments and argumentsList argument is optional\n// FF Nightly sets third argument as `new.target`, but does not create `this` from it\nvar NEW_TARGET_BUG = fails(function(){\n function F(){}\n return !(rConstruct(function(){}, [], F) instanceof F);\n});\nvar ARGS_BUG = !fails(function(){\n rConstruct(function(){});\n});\n\n$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {\n construct: function construct(Target, args /*, newTarget*/){\n aFunction(Target);\n anObject(args);\n var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);\n if(ARGS_BUG && !NEW_TARGET_BUG)return rConstruct(Target, args, newTarget);\n if(Target == newTarget){\n // w/o altered newTarget, optimization for 0-4 arguments\n switch(args.length){\n case 0: return new Target;\n case 1: return new Target(args[0]);\n case 2: return new Target(args[0], args[1]);\n case 3: return new Target(args[0], args[1], args[2]);\n case 4: return new Target(args[0], args[1], args[2], args[3]);\n }\n // w/o altered newTarget, lot of arguments case\n var $args = [null];\n $args.push.apply($args, args);\n return new (bind.apply(Target, $args));\n }\n // with altered newTarget, not support built-in constructors\n var proto = newTarget.prototype\n , instance = create(isObject(proto) ? proto : Object.prototype)\n , result = Function.apply.call(Target, instance, args);\n return isObject(result) ? result : instance;\n }\n});\n},{\"16\":16,\"3\":3,\"32\":32,\"34\":34,\"38\":38,\"49\":49,\"66\":66,\"7\":7}],201:[function(_dereq_,module,exports){\n// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)\nvar dP = _dereq_(67)\n , $export = _dereq_(32)\n , anObject = _dereq_(7)\n , toPrimitive = _dereq_(110);\n\n// MS Edge has broken Reflect.defineProperty - throwing instead of returning false\n$export($export.S + $export.F * _dereq_(34)(function(){\n Reflect.defineProperty(dP.f({}, 1, {value: 1}), 1, {value: 2});\n}), 'Reflect', {\n defineProperty: function defineProperty(target, propertyKey, attributes){\n anObject(target);\n propertyKey = toPrimitive(propertyKey, true);\n anObject(attributes);\n try {\n dP.f(target, propertyKey, attributes);\n return true;\n } catch(e){\n return false;\n }\n }\n});\n},{\"110\":110,\"32\":32,\"34\":34,\"67\":67,\"7\":7}],202:[function(_dereq_,module,exports){\n// 26.1.4 Reflect.deleteProperty(target, propertyKey)\nvar $export = _dereq_(32)\n , gOPD = _dereq_(70).f\n , anObject = _dereq_(7);\n\n$export($export.S, 'Reflect', {\n deleteProperty: function deleteProperty(target, propertyKey){\n var desc = gOPD(anObject(target), propertyKey);\n return desc && !desc.configurable ? false : delete target[propertyKey];\n }\n});\n},{\"32\":32,\"7\":7,\"70\":70}],203:[function(_dereq_,module,exports){\n'use strict';\n// 26.1.5 Reflect.enumerate(target)\nvar $export = _dereq_(32)\n , anObject = _dereq_(7);\nvar Enumerate = function(iterated){\n this._t = anObject(iterated); // target\n this._i = 0; // next index\n var keys = this._k = [] // keys\n , key;\n for(key in iterated)keys.push(key);\n};\n_dereq_(52)(Enumerate, 'Object', function(){\n var that = this\n , keys = that._k\n , key;\n do {\n if(that._i >= keys.length)return {value: undefined, done: true};\n } while(!((key = keys[that._i++]) in that._t));\n return {value: key, done: false};\n});\n\n$export($export.S, 'Reflect', {\n enumerate: function enumerate(target){\n return new Enumerate(target);\n }\n});\n},{\"32\":32,\"52\":52,\"7\":7}],204:[function(_dereq_,module,exports){\n// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey)\nvar gOPD = _dereq_(70)\n , $export = _dereq_(32)\n , anObject = _dereq_(7);\n\n$export($export.S, 'Reflect', {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey){\n return gOPD.f(anObject(target), propertyKey);\n }\n});\n},{\"32\":32,\"7\":7,\"70\":70}],205:[function(_dereq_,module,exports){\n// 26.1.8 Reflect.getPrototypeOf(target)\nvar $export = _dereq_(32)\n , getProto = _dereq_(74)\n , anObject = _dereq_(7);\n\n$export($export.S, 'Reflect', {\n getPrototypeOf: function getPrototypeOf(target){\n return getProto(anObject(target));\n }\n});\n},{\"32\":32,\"7\":7,\"74\":74}],206:[function(_dereq_,module,exports){\n// 26.1.6 Reflect.get(target, propertyKey [, receiver])\nvar gOPD = _dereq_(70)\n , getPrototypeOf = _dereq_(74)\n , has = _dereq_(39)\n , $export = _dereq_(32)\n , isObject = _dereq_(49)\n , anObject = _dereq_(7);\n\nfunction get(target, propertyKey/*, receiver*/){\n var receiver = arguments.length < 3 ? target : arguments[2]\n , desc, proto;\n if(anObject(target) === receiver)return target[propertyKey];\n if(desc = gOPD.f(target, propertyKey))return has(desc, 'value')\n ? desc.value\n : desc.get !== undefined\n ? desc.get.call(receiver)\n : undefined;\n if(isObject(proto = getPrototypeOf(target)))return get(proto, propertyKey, receiver);\n}\n\n$export($export.S, 'Reflect', {get: get});\n},{\"32\":32,\"39\":39,\"49\":49,\"7\":7,\"70\":70,\"74\":74}],207:[function(_dereq_,module,exports){\n// 26.1.9 Reflect.has(target, propertyKey)\nvar $export = _dereq_(32);\n\n$export($export.S, 'Reflect', {\n has: function has(target, propertyKey){\n return propertyKey in target;\n }\n});\n},{\"32\":32}],208:[function(_dereq_,module,exports){\n// 26.1.10 Reflect.isExtensible(target)\nvar $export = _dereq_(32)\n , anObject = _dereq_(7)\n , $isExtensible = Object.isExtensible;\n\n$export($export.S, 'Reflect', {\n isExtensible: function isExtensible(target){\n anObject(target);\n return $isExtensible ? $isExtensible(target) : true;\n }\n});\n},{\"32\":32,\"7\":7}],209:[function(_dereq_,module,exports){\n// 26.1.11 Reflect.ownKeys(target)\nvar $export = _dereq_(32);\n\n$export($export.S, 'Reflect', {ownKeys: _dereq_(80)});\n},{\"32\":32,\"80\":80}],210:[function(_dereq_,module,exports){\n// 26.1.12 Reflect.preventExtensions(target)\nvar $export = _dereq_(32)\n , anObject = _dereq_(7)\n , $preventExtensions = Object.preventExtensions;\n\n$export($export.S, 'Reflect', {\n preventExtensions: function preventExtensions(target){\n anObject(target);\n try {\n if($preventExtensions)$preventExtensions(target);\n return true;\n } catch(e){\n return false;\n }\n }\n});\n},{\"32\":32,\"7\":7}],211:[function(_dereq_,module,exports){\n// 26.1.14 Reflect.setPrototypeOf(target, proto)\nvar $export = _dereq_(32)\n , setProto = _dereq_(90);\n\nif(setProto)$export($export.S, 'Reflect', {\n setPrototypeOf: function setPrototypeOf(target, proto){\n setProto.check(target, proto);\n try {\n setProto.set(target, proto);\n return true;\n } catch(e){\n return false;\n }\n }\n});\n},{\"32\":32,\"90\":90}],212:[function(_dereq_,module,exports){\n// 26.1.13 Reflect.set(target, propertyKey, V [, receiver])\nvar dP = _dereq_(67)\n , gOPD = _dereq_(70)\n , getPrototypeOf = _dereq_(74)\n , has = _dereq_(39)\n , $export = _dereq_(32)\n , createDesc = _dereq_(85)\n , anObject = _dereq_(7)\n , isObject = _dereq_(49);\n\nfunction set(target, propertyKey, V/*, receiver*/){\n var receiver = arguments.length < 4 ? target : arguments[3]\n , ownDesc = gOPD.f(anObject(target), propertyKey)\n , existingDescriptor, proto;\n if(!ownDesc){\n if(isObject(proto = getPrototypeOf(target))){\n return set(proto, propertyKey, V, receiver);\n }\n ownDesc = createDesc(0);\n }\n if(has(ownDesc, 'value')){\n if(ownDesc.writable === false || !isObject(receiver))return false;\n existingDescriptor = gOPD.f(receiver, propertyKey) || createDesc(0);\n existingDescriptor.value = V;\n dP.f(receiver, propertyKey, existingDescriptor);\n return true;\n }\n return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true);\n}\n\n$export($export.S, 'Reflect', {set: set});\n},{\"32\":32,\"39\":39,\"49\":49,\"67\":67,\"7\":7,\"70\":70,\"74\":74,\"85\":85}],213:[function(_dereq_,module,exports){\nvar global = _dereq_(38)\n , inheritIfRequired = _dereq_(43)\n , dP = _dereq_(67).f\n , gOPN = _dereq_(72).f\n , isRegExp = _dereq_(50)\n , $flags = _dereq_(36)\n , $RegExp = global.RegExp\n , Base = $RegExp\n , proto = $RegExp.prototype\n , re1 = /a/g\n , re2 = /a/g\n // \"new\" creates a new object, old webkit buggy here\n , CORRECT_NEW = new $RegExp(re1) !== re1;\n\nif(_dereq_(28) && (!CORRECT_NEW || _dereq_(34)(function(){\n re2[_dereq_(117)('match')] = false;\n // RegExp constructor can alter flags and IsRegExp works correct with @@match\n return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';\n}))){\n $RegExp = function RegExp(p, f){\n var tiRE = this instanceof $RegExp\n , piRE = isRegExp(p)\n , fiU = f === undefined;\n return !tiRE && piRE && p.constructor === $RegExp && fiU ? p\n : inheritIfRequired(CORRECT_NEW\n ? new Base(piRE && !fiU ? p.source : p, f)\n : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)\n , tiRE ? this : proto, $RegExp);\n };\n var proxy = function(key){\n key in $RegExp || dP($RegExp, key, {\n configurable: true,\n get: function(){ return Base[key]; },\n set: function(it){ Base[key] = it; }\n });\n };\n for(var keys = gOPN(Base), i = 0; keys.length > i; )proxy(keys[i++]);\n proto.constructor = $RegExp;\n $RegExp.prototype = proto;\n _dereq_(87)(global, 'RegExp', $RegExp);\n}\n\n_dereq_(91)('RegExp');\n},{\"117\":117,\"28\":28,\"34\":34,\"36\":36,\"38\":38,\"43\":43,\"50\":50,\"67\":67,\"72\":72,\"87\":87,\"91\":91}],214:[function(_dereq_,module,exports){\n// 21.2.5.3 get RegExp.prototype.flags()\nif(_dereq_(28) && /./g.flags != 'g')_dereq_(67).f(RegExp.prototype, 'flags', {\n configurable: true,\n get: _dereq_(36)\n});\n},{\"28\":28,\"36\":36,\"67\":67}],215:[function(_dereq_,module,exports){\n// @@match logic\n_dereq_(35)('match', 1, function(defined, MATCH, $match){\n // 21.1.3.11 String.prototype.match(regexp)\n return [function match(regexp){\n 'use strict';\n var O = defined(this)\n , fn = regexp == undefined ? undefined : regexp[MATCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n }, $match];\n});\n},{\"35\":35}],216:[function(_dereq_,module,exports){\n// @@replace logic\n_dereq_(35)('replace', 2, function(defined, REPLACE, $replace){\n // 21.1.3.14 String.prototype.replace(searchValue, replaceValue)\n return [function replace(searchValue, replaceValue){\n 'use strict';\n var O = defined(this)\n , fn = searchValue == undefined ? undefined : searchValue[REPLACE];\n return fn !== undefined\n ? fn.call(searchValue, O, replaceValue)\n : $replace.call(String(O), searchValue, replaceValue);\n }, $replace];\n});\n},{\"35\":35}],217:[function(_dereq_,module,exports){\n// @@search logic\n_dereq_(35)('search', 1, function(defined, SEARCH, $search){\n // 21.1.3.15 String.prototype.search(regexp)\n return [function search(regexp){\n 'use strict';\n var O = defined(this)\n , fn = regexp == undefined ? undefined : regexp[SEARCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));\n }, $search];\n});\n},{\"35\":35}],218:[function(_dereq_,module,exports){\n// @@split logic\n_dereq_(35)('split', 2, function(defined, SPLIT, $split){\n 'use strict';\n var isRegExp = _dereq_(50)\n , _split = $split\n , $push = [].push\n , $SPLIT = 'split'\n , LENGTH = 'length'\n , LAST_INDEX = 'lastIndex';\n if(\n 'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||\n 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||\n 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||\n '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||\n '.'[$SPLIT](/()()/)[LENGTH] > 1 ||\n ''[$SPLIT](/.?/)[LENGTH]\n ){\n var NPCG = /()??/.exec('')[1] === undefined; // nonparticipating capturing group\n // based on es5-shim implementation, need to rework it\n $split = function(separator, limit){\n var string = String(this);\n if(separator === undefined && limit === 0)return [];\n // If `separator` is not a regex, use native split\n if(!isRegExp(separator))return _split.call(string, separator, limit);\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n var splitLimit = limit === undefined ? 4294967295 : limit >>> 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var separator2, match, lastIndex, lastLength, i;\n // Doesn't need flags gy, but they don't hurt\n if(!NPCG)separator2 = new RegExp('^' + separatorCopy.source + '$(?!\\\\s)', flags);\n while(match = separatorCopy.exec(string)){\n // `separatorCopy.lastIndex` is not reliable cross-browser\n lastIndex = match.index + match[0][LENGTH];\n if(lastIndex > lastLastIndex){\n output.push(string.slice(lastLastIndex, match.index));\n // Fix browsers whose `exec` methods don't consistently return `undefined` for NPCG\n if(!NPCG && match[LENGTH] > 1)match[0].replace(separator2, function(){\n for(i = 1; i < arguments[LENGTH] - 2; i++)if(arguments[i] === undefined)match[i] = undefined;\n });\n if(match[LENGTH] > 1 && match.index < string[LENGTH])$push.apply(output, match.slice(1));\n lastLength = match[0][LENGTH];\n lastLastIndex = lastIndex;\n if(output[LENGTH] >= splitLimit)break;\n }\n if(separatorCopy[LAST_INDEX] === match.index)separatorCopy[LAST_INDEX]++; // Avoid an infinite loop\n }\n if(lastLastIndex === string[LENGTH]){\n if(lastLength || !separatorCopy.test(''))output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;\n };\n // Chakra, V8\n } else if('0'[$SPLIT](undefined, 0)[LENGTH]){\n $split = function(separator, limit){\n return separator === undefined && limit === 0 ? [] : _split.call(this, separator, limit);\n };\n }\n // 21.1.3.17 String.prototype.split(separator, limit)\n return [function split(separator, limit){\n var O = defined(this)\n , fn = separator == undefined ? undefined : separator[SPLIT];\n return fn !== undefined ? fn.call(separator, O, limit) : $split.call(String(O), separator, limit);\n }, $split];\n});\n},{\"35\":35,\"50\":50}],219:[function(_dereq_,module,exports){\n'use strict';\n_dereq_(214);\nvar anObject = _dereq_(7)\n , $flags = _dereq_(36)\n , DESCRIPTORS = _dereq_(28)\n , TO_STRING = 'toString'\n , $toString = /./[TO_STRING];\n\nvar define = function(fn){\n _dereq_(87)(RegExp.prototype, TO_STRING, fn, true);\n};\n\n// 21.2.5.14 RegExp.prototype.toString()\nif(_dereq_(34)(function(){ return $toString.call({source: 'a', flags: 'b'}) != '/a/b'; })){\n define(function toString(){\n var R = anObject(this);\n return '/'.concat(R.source, '/',\n 'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);\n });\n// FF44- RegExp#toString has a wrong name\n} else if($toString.name != TO_STRING){\n define(function toString(){\n return $toString.call(this);\n });\n}\n},{\"214\":214,\"28\":28,\"34\":34,\"36\":36,\"7\":7,\"87\":87}],220:[function(_dereq_,module,exports){\n'use strict';\nvar strong = _dereq_(19);\n\n// 23.2 Set Objects\nmodule.exports = _dereq_(22)('Set', function(get){\n return function Set(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.2.3.1 Set.prototype.add(value)\n add: function add(value){\n return strong.def(this, value = value === 0 ? 0 : value, value);\n }\n}, strong);\n},{\"19\":19,\"22\":22}],221:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.2 String.prototype.anchor(name)\n_dereq_(99)('anchor', function(createHTML){\n return function anchor(name){\n return createHTML(this, 'a', 'name', name);\n }\n});\n},{\"99\":99}],222:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.3 String.prototype.big()\n_dereq_(99)('big', function(createHTML){\n return function big(){\n return createHTML(this, 'big', '', '');\n }\n});\n},{\"99\":99}],223:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.4 String.prototype.blink()\n_dereq_(99)('blink', function(createHTML){\n return function blink(){\n return createHTML(this, 'blink', '', '');\n }\n});\n},{\"99\":99}],224:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.5 String.prototype.bold()\n_dereq_(99)('bold', function(createHTML){\n return function bold(){\n return createHTML(this, 'b', '', '');\n }\n});\n},{\"99\":99}],225:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , $at = _dereq_(97)(false);\n$export($export.P, 'String', {\n // 21.1.3.3 String.prototype.codePointAt(pos)\n codePointAt: function codePointAt(pos){\n return $at(this, pos);\n }\n});\n},{\"32\":32,\"97\":97}],226:[function(_dereq_,module,exports){\n// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])\n'use strict';\nvar $export = _dereq_(32)\n , toLength = _dereq_(108)\n , context = _dereq_(98)\n , ENDS_WITH = 'endsWith'\n , $endsWith = ''[ENDS_WITH];\n\n$export($export.P + $export.F * _dereq_(33)(ENDS_WITH), 'String', {\n endsWith: function endsWith(searchString /*, endPosition = @length */){\n var that = context(this, searchString, ENDS_WITH)\n , endPosition = arguments.length > 1 ? arguments[1] : undefined\n , len = toLength(that.length)\n , end = endPosition === undefined ? len : Math.min(toLength(endPosition), len)\n , search = String(searchString);\n return $endsWith\n ? $endsWith.call(that, search, end)\n : that.slice(end - search.length, end) === search;\n }\n});\n},{\"108\":108,\"32\":32,\"33\":33,\"98\":98}],227:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.6 String.prototype.fixed()\n_dereq_(99)('fixed', function(createHTML){\n return function fixed(){\n return createHTML(this, 'tt', '', '');\n }\n});\n},{\"99\":99}],228:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.7 String.prototype.fontcolor(color)\n_dereq_(99)('fontcolor', function(createHTML){\n return function fontcolor(color){\n return createHTML(this, 'font', 'color', color);\n }\n});\n},{\"99\":99}],229:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.8 String.prototype.fontsize(size)\n_dereq_(99)('fontsize', function(createHTML){\n return function fontsize(size){\n return createHTML(this, 'font', 'size', size);\n }\n});\n},{\"99\":99}],230:[function(_dereq_,module,exports){\nvar $export = _dereq_(32)\n , toIndex = _dereq_(105)\n , fromCharCode = String.fromCharCode\n , $fromCodePoint = String.fromCodePoint;\n\n// length should be 1, old FF problem\n$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {\n // 21.1.2.2 String.fromCodePoint(...codePoints)\n fromCodePoint: function fromCodePoint(x){ // eslint-disable-line no-unused-vars\n var res = []\n , aLen = arguments.length\n , i = 0\n , code;\n while(aLen > i){\n code = +arguments[i++];\n if(toIndex(code, 0x10ffff) !== code)throw RangeError(code + ' is not a valid code point');\n res.push(code < 0x10000\n ? fromCharCode(code)\n : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)\n );\n } return res.join('');\n }\n});\n},{\"105\":105,\"32\":32}],231:[function(_dereq_,module,exports){\n// 21.1.3.7 String.prototype.includes(searchString, position = 0)\n'use strict';\nvar $export = _dereq_(32)\n , context = _dereq_(98)\n , INCLUDES = 'includes';\n\n$export($export.P + $export.F * _dereq_(33)(INCLUDES), 'String', {\n includes: function includes(searchString /*, position = 0 */){\n return !!~context(this, searchString, INCLUDES)\n .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n},{\"32\":32,\"33\":33,\"98\":98}],232:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.9 String.prototype.italics()\n_dereq_(99)('italics', function(createHTML){\n return function italics(){\n return createHTML(this, 'i', '', '');\n }\n});\n},{\"99\":99}],233:[function(_dereq_,module,exports){\n'use strict';\nvar $at = _dereq_(97)(true);\n\n// 21.1.3.27 String.prototype[@@iterator]()\n_dereq_(53)(String, 'String', function(iterated){\n this._t = String(iterated); // target\n this._i = 0; // next index\n// 21.1.5.2.1 %StringIteratorPrototype%.next()\n}, function(){\n var O = this._t\n , index = this._i\n , point;\n if(index >= O.length)return {value: undefined, done: true};\n point = $at(O, index);\n this._i += point.length;\n return {value: point, done: false};\n});\n},{\"53\":53,\"97\":97}],234:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.10 String.prototype.link(url)\n_dereq_(99)('link', function(createHTML){\n return function link(url){\n return createHTML(this, 'a', 'href', url);\n }\n});\n},{\"99\":99}],235:[function(_dereq_,module,exports){\nvar $export = _dereq_(32)\n , toIObject = _dereq_(107)\n , toLength = _dereq_(108);\n\n$export($export.S, 'String', {\n // 21.1.2.4 String.raw(callSite, ...substitutions)\n raw: function raw(callSite){\n var tpl = toIObject(callSite.raw)\n , len = toLength(tpl.length)\n , aLen = arguments.length\n , res = []\n , i = 0;\n while(len > i){\n res.push(String(tpl[i++]));\n if(i < aLen)res.push(String(arguments[i]));\n } return res.join('');\n }\n});\n},{\"107\":107,\"108\":108,\"32\":32}],236:[function(_dereq_,module,exports){\nvar $export = _dereq_(32);\n\n$export($export.P, 'String', {\n // 21.1.3.13 String.prototype.repeat(count)\n repeat: _dereq_(101)\n});\n},{\"101\":101,\"32\":32}],237:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.11 String.prototype.small()\n_dereq_(99)('small', function(createHTML){\n return function small(){\n return createHTML(this, 'small', '', '');\n }\n});\n},{\"99\":99}],238:[function(_dereq_,module,exports){\n// 21.1.3.18 String.prototype.startsWith(searchString [, position ])\n'use strict';\nvar $export = _dereq_(32)\n , toLength = _dereq_(108)\n , context = _dereq_(98)\n , STARTS_WITH = 'startsWith'\n , $startsWith = ''[STARTS_WITH];\n\n$export($export.P + $export.F * _dereq_(33)(STARTS_WITH), 'String', {\n startsWith: function startsWith(searchString /*, position = 0 */){\n var that = context(this, searchString, STARTS_WITH)\n , index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length))\n , search = String(searchString);\n return $startsWith\n ? $startsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n},{\"108\":108,\"32\":32,\"33\":33,\"98\":98}],239:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.12 String.prototype.strike()\n_dereq_(99)('strike', function(createHTML){\n return function strike(){\n return createHTML(this, 'strike', '', '');\n }\n});\n},{\"99\":99}],240:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.13 String.prototype.sub()\n_dereq_(99)('sub', function(createHTML){\n return function sub(){\n return createHTML(this, 'sub', '', '');\n }\n});\n},{\"99\":99}],241:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.14 String.prototype.sup()\n_dereq_(99)('sup', function(createHTML){\n return function sup(){\n return createHTML(this, 'sup', '', '');\n }\n});\n},{\"99\":99}],242:[function(_dereq_,module,exports){\n'use strict';\n// 21.1.3.25 String.prototype.trim()\n_dereq_(102)('trim', function($trim){\n return function trim(){\n return $trim(this, 3);\n };\n});\n},{\"102\":102}],243:[function(_dereq_,module,exports){\n'use strict';\n// ECMAScript 6 symbols shim\nvar global = _dereq_(38)\n , has = _dereq_(39)\n , DESCRIPTORS = _dereq_(28)\n , $export = _dereq_(32)\n , redefine = _dereq_(87)\n , META = _dereq_(62).KEY\n , $fails = _dereq_(34)\n , shared = _dereq_(94)\n , setToStringTag = _dereq_(92)\n , uid = _dereq_(114)\n , wks = _dereq_(117)\n , wksExt = _dereq_(116)\n , wksDefine = _dereq_(115)\n , keyOf = _dereq_(57)\n , enumKeys = _dereq_(31)\n , isArray = _dereq_(47)\n , anObject = _dereq_(7)\n , toIObject = _dereq_(107)\n , toPrimitive = _dereq_(110)\n , createDesc = _dereq_(85)\n , _create = _dereq_(66)\n , gOPNExt = _dereq_(71)\n , $GOPD = _dereq_(70)\n , $DP = _dereq_(67)\n , $keys = _dereq_(76)\n , gOPD = $GOPD.f\n , dP = $DP.f\n , gOPN = gOPNExt.f\n , $Symbol = global.Symbol\n , $JSON = global.JSON\n , _stringify = $JSON && $JSON.stringify\n , PROTOTYPE = 'prototype'\n , HIDDEN = wks('_hidden')\n , TO_PRIMITIVE = wks('toPrimitive')\n , isEnum = {}.propertyIsEnumerable\n , SymbolRegistry = shared('symbol-registry')\n , AllSymbols = shared('symbols')\n , OPSymbols = shared('op-symbols')\n , ObjectProto = Object[PROTOTYPE]\n , USE_NATIVE = typeof $Symbol == 'function'\n , QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDesc = DESCRIPTORS && $fails(function(){\n return _create(dP({}, 'a', {\n get: function(){ return dP(this, 'a', {value: 7}).a; }\n })).a != 7;\n}) ? function(it, key, D){\n var protoDesc = gOPD(ObjectProto, key);\n if(protoDesc)delete ObjectProto[key];\n dP(it, key, D);\n if(protoDesc && it !== ObjectProto)dP(ObjectProto, key, protoDesc);\n} : dP;\n\nvar wrap = function(tag){\n var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);\n sym._k = tag;\n return sym;\n};\n\nvar isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function(it){\n return typeof it == 'symbol';\n} : function(it){\n return it instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(it, key, D){\n if(it === ObjectProto)$defineProperty(OPSymbols, key, D);\n anObject(it);\n key = toPrimitive(key, true);\n anObject(D);\n if(has(AllSymbols, key)){\n if(!D.enumerable){\n if(!has(it, HIDDEN))dP(it, HIDDEN, createDesc(1, {}));\n it[HIDDEN][key] = true;\n } else {\n if(has(it, HIDDEN) && it[HIDDEN][key])it[HIDDEN][key] = false;\n D = _create(D, {enumerable: createDesc(0, false)});\n } return setSymbolDesc(it, key, D);\n } return dP(it, key, D);\n};\nvar $defineProperties = function defineProperties(it, P){\n anObject(it);\n var keys = enumKeys(P = toIObject(P))\n , i = 0\n , l = keys.length\n , key;\n while(l > i)$defineProperty(it, key = keys[i++], P[key]);\n return it;\n};\nvar $create = function create(it, P){\n return P === undefined ? _create(it) : $defineProperties(_create(it), P);\n};\nvar $propertyIsEnumerable = function propertyIsEnumerable(key){\n var E = isEnum.call(this, key = toPrimitive(key, true));\n if(this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return false;\n return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;\n};\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key){\n it = toIObject(it);\n key = toPrimitive(key, true);\n if(it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return;\n var D = gOPD(it, key);\n if(D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key]))D.enumerable = true;\n return D;\n};\nvar $getOwnPropertyNames = function getOwnPropertyNames(it){\n var names = gOPN(toIObject(it))\n , result = []\n , i = 0\n , key;\n while(names.length > i){\n if(!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META)result.push(key);\n } return result;\n};\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(it){\n var IS_OP = it === ObjectProto\n , names = gOPN(IS_OP ? OPSymbols : toIObject(it))\n , result = []\n , i = 0\n , key;\n while(names.length > i){\n if(has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true))result.push(AllSymbols[key]);\n } return result;\n};\n\n// 19.4.1.1 Symbol([description])\nif(!USE_NATIVE){\n $Symbol = function Symbol(){\n if(this instanceof $Symbol)throw TypeError('Symbol is not a constructor!');\n var tag = uid(arguments.length > 0 ? arguments[0] : undefined);\n var $set = function(value){\n if(this === ObjectProto)$set.call(OPSymbols, value);\n if(has(this, HIDDEN) && has(this[HIDDEN], tag))this[HIDDEN][tag] = false;\n setSymbolDesc(this, tag, createDesc(1, value));\n };\n if(DESCRIPTORS && setter)setSymbolDesc(ObjectProto, tag, {configurable: true, set: $set});\n return wrap(tag);\n };\n redefine($Symbol[PROTOTYPE], 'toString', function toString(){\n return this._k;\n });\n\n $GOPD.f = $getOwnPropertyDescriptor;\n $DP.f = $defineProperty;\n _dereq_(72).f = gOPNExt.f = $getOwnPropertyNames;\n _dereq_(77).f = $propertyIsEnumerable;\n _dereq_(73).f = $getOwnPropertySymbols;\n\n if(DESCRIPTORS && !_dereq_(58)){\n redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);\n }\n\n wksExt.f = function(name){\n return wrap(wks(name));\n }\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, {Symbol: $Symbol});\n\nfor(var symbols = (\n // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14\n 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'\n).split(','), i = 0; symbols.length > i; )wks(symbols[i++]);\n\nfor(var symbols = $keys(wks.store), i = 0; symbols.length > i; )wksDefine(symbols[i++]);\n\n$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {\n // 19.4.2.1 Symbol.for(key)\n 'for': function(key){\n return has(SymbolRegistry, key += '')\n ? SymbolRegistry[key]\n : SymbolRegistry[key] = $Symbol(key);\n },\n // 19.4.2.5 Symbol.keyFor(sym)\n keyFor: function keyFor(key){\n if(isSymbol(key))return keyOf(SymbolRegistry, key);\n throw TypeError(key + ' is not a symbol!');\n },\n useSetter: function(){ setter = true; },\n useSimple: function(){ setter = false; }\n});\n\n$export($export.S + $export.F * !USE_NATIVE, 'Object', {\n // 19.1.2.2 Object.create(O [, Properties])\n create: $create,\n // 19.1.2.4 Object.defineProperty(O, P, Attributes)\n defineProperty: $defineProperty,\n // 19.1.2.3 Object.defineProperties(O, Properties)\n defineProperties: $defineProperties,\n // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor,\n // 19.1.2.7 Object.getOwnPropertyNames(O)\n getOwnPropertyNames: $getOwnPropertyNames,\n // 19.1.2.8 Object.getOwnPropertySymbols(O)\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// 24.3.2 JSON.stringify(value [, replacer [, space]])\n$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function(){\n var S = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n // WebKit converts symbol values to JSON as null\n // V8 throws on boxed symbols\n return _stringify([S]) != '[null]' || _stringify({a: S}) != '{}' || _stringify(Object(S)) != '{}';\n})), 'JSON', {\n stringify: function stringify(it){\n if(it === undefined || isSymbol(it))return; // IE8 returns string on undefined\n var args = [it]\n , i = 1\n , replacer, $replacer;\n while(arguments.length > i)args.push(arguments[i++]);\n replacer = args[1];\n if(typeof replacer == 'function')$replacer = replacer;\n if($replacer || !isArray(replacer))replacer = function(key, value){\n if($replacer)value = $replacer.call(this, key, value);\n if(!isSymbol(value))return value;\n };\n args[1] = replacer;\n return _stringify.apply($JSON, args);\n }\n});\n\n// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)\n$Symbol[PROTOTYPE][TO_PRIMITIVE] || _dereq_(40)($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n// 19.4.3.5 Symbol.prototype[@@toStringTag]\nsetToStringTag($Symbol, 'Symbol');\n// 20.2.1.9 Math[@@toStringTag]\nsetToStringTag(Math, 'Math', true);\n// 24.3.3 JSON[@@toStringTag]\nsetToStringTag(global.JSON, 'JSON', true);\n},{\"107\":107,\"110\":110,\"114\":114,\"115\":115,\"116\":116,\"117\":117,\"28\":28,\"31\":31,\"32\":32,\"34\":34,\"38\":38,\"39\":39,\"40\":40,\"47\":47,\"57\":57,\"58\":58,\"62\":62,\"66\":66,\"67\":67,\"7\":7,\"70\":70,\"71\":71,\"72\":72,\"73\":73,\"76\":76,\"77\":77,\"85\":85,\"87\":87,\"92\":92,\"94\":94}],244:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , $typed = _dereq_(113)\n , buffer = _dereq_(112)\n , anObject = _dereq_(7)\n , toIndex = _dereq_(105)\n , toLength = _dereq_(108)\n , isObject = _dereq_(49)\n , ArrayBuffer = _dereq_(38).ArrayBuffer\n , speciesConstructor = _dereq_(95)\n , $ArrayBuffer = buffer.ArrayBuffer\n , $DataView = buffer.DataView\n , $isView = $typed.ABV && ArrayBuffer.isView\n , $slice = $ArrayBuffer.prototype.slice\n , VIEW = $typed.VIEW\n , ARRAY_BUFFER = 'ArrayBuffer';\n\n$export($export.G + $export.W + $export.F * (ArrayBuffer !== $ArrayBuffer), {ArrayBuffer: $ArrayBuffer});\n\n$export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, {\n // 24.1.3.1 ArrayBuffer.isView(arg)\n isView: function isView(it){\n return $isView && $isView(it) || isObject(it) && VIEW in it;\n }\n});\n\n$export($export.P + $export.U + $export.F * _dereq_(34)(function(){\n return !new $ArrayBuffer(2).slice(1, undefined).byteLength;\n}), ARRAY_BUFFER, {\n // 24.1.4.3 ArrayBuffer.prototype.slice(start, end)\n slice: function slice(start, end){\n if($slice !== undefined && end === undefined)return $slice.call(anObject(this), start); // FF fix\n var len = anObject(this).byteLength\n , first = toIndex(start, len)\n , final = toIndex(end === undefined ? len : end, len)\n , result = new (speciesConstructor(this, $ArrayBuffer))(toLength(final - first))\n , viewS = new $DataView(this)\n , viewT = new $DataView(result)\n , index = 0;\n while(first < final){\n viewT.setUint8(index++, viewS.getUint8(first++));\n } return result;\n }\n});\n\n_dereq_(91)(ARRAY_BUFFER);\n},{\"105\":105,\"108\":108,\"112\":112,\"113\":113,\"32\":32,\"34\":34,\"38\":38,\"49\":49,\"7\":7,\"91\":91,\"95\":95}],245:[function(_dereq_,module,exports){\nvar $export = _dereq_(32);\n$export($export.G + $export.W + $export.F * !_dereq_(113).ABV, {\n DataView: _dereq_(112).DataView\n});\n},{\"112\":112,\"113\":113,\"32\":32}],246:[function(_dereq_,module,exports){\n_dereq_(111)('Float32', 4, function(init){\n return function Float32Array(data, byteOffset, length){\n return init(this, data, byteOffset, length);\n };\n});\n},{\"111\":111}],247:[function(_dereq_,module,exports){\n_dereq_(111)('Float64', 8, function(init){\n return function Float64Array(data, byteOffset, length){\n return init(this, data, byteOffset, length);\n };\n});\n},{\"111\":111}],248:[function(_dereq_,module,exports){\n_dereq_(111)('Int16', 2, function(init){\n return function Int16Array(data, byteOffset, length){\n return init(this, data, byteOffset, length);\n };\n});\n},{\"111\":111}],249:[function(_dereq_,module,exports){\n_dereq_(111)('Int32', 4, function(init){\n return function Int32Array(data, byteOffset, length){\n return init(this, data, byteOffset, length);\n };\n});\n},{\"111\":111}],250:[function(_dereq_,module,exports){\n_dereq_(111)('Int8', 1, function(init){\n return function Int8Array(data, byteOffset, length){\n return init(this, data, byteOffset, length);\n };\n});\n},{\"111\":111}],251:[function(_dereq_,module,exports){\n_dereq_(111)('Uint16', 2, function(init){\n return function Uint16Array(data, byteOffset, length){\n return init(this, data, byteOffset, length);\n };\n});\n},{\"111\":111}],252:[function(_dereq_,module,exports){\n_dereq_(111)('Uint32', 4, function(init){\n return function Uint32Array(data, byteOffset, length){\n return init(this, data, byteOffset, length);\n };\n});\n},{\"111\":111}],253:[function(_dereq_,module,exports){\n_dereq_(111)('Uint8', 1, function(init){\n return function Uint8Array(data, byteOffset, length){\n return init(this, data, byteOffset, length);\n };\n});\n},{\"111\":111}],254:[function(_dereq_,module,exports){\n_dereq_(111)('Uint8', 1, function(init){\n return function Uint8ClampedArray(data, byteOffset, length){\n return init(this, data, byteOffset, length);\n };\n}, true);\n},{\"111\":111}],255:[function(_dereq_,module,exports){\n'use strict';\nvar each = _dereq_(12)(0)\n , redefine = _dereq_(87)\n , meta = _dereq_(62)\n , assign = _dereq_(65)\n , weak = _dereq_(21)\n , isObject = _dereq_(49)\n , getWeak = meta.getWeak\n , isExtensible = Object.isExtensible\n , uncaughtFrozenStore = weak.ufstore\n , tmp = {}\n , InternalMap;\n\nvar wrapper = function(get){\n return function WeakMap(){\n return get(this, arguments.length > 0 ? arguments[0] : undefined);\n };\n};\n\nvar methods = {\n // 23.3.3.3 WeakMap.prototype.get(key)\n get: function get(key){\n if(isObject(key)){\n var data = getWeak(key);\n if(data === true)return uncaughtFrozenStore(this).get(key);\n return data ? data[this._i] : undefined;\n }\n },\n // 23.3.3.5 WeakMap.prototype.set(key, value)\n set: function set(key, value){\n return weak.def(this, key, value);\n }\n};\n\n// 23.3 WeakMap Objects\nvar $WeakMap = module.exports = _dereq_(22)('WeakMap', wrapper, methods, weak, true, true);\n\n// IE11 WeakMap frozen keys fix\nif(new $WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7){\n InternalMap = weak.getConstructor(wrapper);\n assign(InternalMap.prototype, methods);\n meta.NEED = true;\n each(['delete', 'has', 'get', 'set'], function(key){\n var proto = $WeakMap.prototype\n , method = proto[key];\n redefine(proto, key, function(a, b){\n // store frozen objects on internal weakmap shim\n if(isObject(a) && !isExtensible(a)){\n if(!this._f)this._f = new InternalMap;\n var result = this._f[key](a, b);\n return key == 'set' ? this : result;\n // store all the rest on native weakmap\n } return method.call(this, a, b);\n });\n });\n}\n},{\"12\":12,\"21\":21,\"22\":22,\"49\":49,\"62\":62,\"65\":65,\"87\":87}],256:[function(_dereq_,module,exports){\n'use strict';\nvar weak = _dereq_(21);\n\n// 23.4 WeakSet Objects\n_dereq_(22)('WeakSet', function(get){\n return function WeakSet(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.4.3.1 WeakSet.prototype.add(value)\n add: function add(value){\n return weak.def(this, value, true);\n }\n}, weak, false, true);\n},{\"21\":21,\"22\":22}],257:[function(_dereq_,module,exports){\n'use strict';\n// https://github.com/tc39/Array.prototype.includes\nvar $export = _dereq_(32)\n , $includes = _dereq_(11)(true);\n\n$export($export.P, 'Array', {\n includes: function includes(el /*, fromIndex = 0 */){\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n_dereq_(5)('includes');\n},{\"11\":11,\"32\":32,\"5\":5}],258:[function(_dereq_,module,exports){\n// https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-09/sept-25.md#510-globalasap-for-enqueuing-a-microtask\nvar $export = _dereq_(32)\n , microtask = _dereq_(64)()\n , process = _dereq_(38).process\n , isNode = _dereq_(18)(process) == 'process';\n\n$export($export.G, {\n asap: function asap(fn){\n var domain = isNode && process.domain;\n microtask(domain ? domain.bind(fn) : fn);\n }\n});\n},{\"18\":18,\"32\":32,\"38\":38,\"64\":64}],259:[function(_dereq_,module,exports){\n// https://github.com/ljharb/proposal-is-error\nvar $export = _dereq_(32)\n , cof = _dereq_(18);\n\n$export($export.S, 'Error', {\n isError: function isError(it){\n return cof(it) === 'Error';\n }\n});\n},{\"18\":18,\"32\":32}],260:[function(_dereq_,module,exports){\n// https://github.com/DavidBruant/Map-Set.prototype.toJSON\nvar $export = _dereq_(32);\n\n$export($export.P + $export.R, 'Map', {toJSON: _dereq_(20)('Map')});\n},{\"20\":20,\"32\":32}],261:[function(_dereq_,module,exports){\n// https://gist.github.com/BrendanEich/4294d5c212a6d2254703\nvar $export = _dereq_(32);\n\n$export($export.S, 'Math', {\n iaddh: function iaddh(x0, x1, y0, y1){\n var $x0 = x0 >>> 0\n , $x1 = x1 >>> 0\n , $y0 = y0 >>> 0;\n return $x1 + (y1 >>> 0) + (($x0 & $y0 | ($x0 | $y0) & ~($x0 + $y0 >>> 0)) >>> 31) | 0;\n }\n});\n},{\"32\":32}],262:[function(_dereq_,module,exports){\n// https://gist.github.com/BrendanEich/4294d5c212a6d2254703\nvar $export = _dereq_(32);\n\n$export($export.S, 'Math', {\n imulh: function imulh(u, v){\n var UINT16 = 0xffff\n , $u = +u\n , $v = +v\n , u0 = $u & UINT16\n , v0 = $v & UINT16\n , u1 = $u >> 16\n , v1 = $v >> 16\n , t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16);\n return u1 * v1 + (t >> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >> 16);\n }\n});\n},{\"32\":32}],263:[function(_dereq_,module,exports){\n// https://gist.github.com/BrendanEich/4294d5c212a6d2254703\nvar $export = _dereq_(32);\n\n$export($export.S, 'Math', {\n isubh: function isubh(x0, x1, y0, y1){\n var $x0 = x0 >>> 0\n , $x1 = x1 >>> 0\n , $y0 = y0 >>> 0;\n return $x1 - (y1 >>> 0) - ((~$x0 & $y0 | ~($x0 ^ $y0) & $x0 - $y0 >>> 0) >>> 31) | 0;\n }\n});\n},{\"32\":32}],264:[function(_dereq_,module,exports){\n// https://gist.github.com/BrendanEich/4294d5c212a6d2254703\nvar $export = _dereq_(32);\n\n$export($export.S, 'Math', {\n umulh: function umulh(u, v){\n var UINT16 = 0xffff\n , $u = +u\n , $v = +v\n , u0 = $u & UINT16\n , v0 = $v & UINT16\n , u1 = $u >>> 16\n , v1 = $v >>> 16\n , t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16);\n return u1 * v1 + (t >>> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >>> 16);\n }\n});\n},{\"32\":32}],265:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , toObject = _dereq_(109)\n , aFunction = _dereq_(3)\n , $defineProperty = _dereq_(67);\n\n// B.2.2.2 Object.prototype.__defineGetter__(P, getter)\n_dereq_(28) && $export($export.P + _dereq_(69), 'Object', {\n __defineGetter__: function __defineGetter__(P, getter){\n $defineProperty.f(toObject(this), P, {get: aFunction(getter), enumerable: true, configurable: true});\n }\n});\n},{\"109\":109,\"28\":28,\"3\":3,\"32\":32,\"67\":67,\"69\":69}],266:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , toObject = _dereq_(109)\n , aFunction = _dereq_(3)\n , $defineProperty = _dereq_(67);\n\n// B.2.2.3 Object.prototype.__defineSetter__(P, setter)\n_dereq_(28) && $export($export.P + _dereq_(69), 'Object', {\n __defineSetter__: function __defineSetter__(P, setter){\n $defineProperty.f(toObject(this), P, {set: aFunction(setter), enumerable: true, configurable: true});\n }\n});\n},{\"109\":109,\"28\":28,\"3\":3,\"32\":32,\"67\":67,\"69\":69}],267:[function(_dereq_,module,exports){\n// https://github.com/tc39/proposal-object-values-entries\nvar $export = _dereq_(32)\n , $entries = _dereq_(79)(true);\n\n$export($export.S, 'Object', {\n entries: function entries(it){\n return $entries(it);\n }\n});\n},{\"32\":32,\"79\":79}],268:[function(_dereq_,module,exports){\n// https://github.com/tc39/proposal-object-getownpropertydescriptors\nvar $export = _dereq_(32)\n , ownKeys = _dereq_(80)\n , toIObject = _dereq_(107)\n , gOPD = _dereq_(70)\n , createProperty = _dereq_(24);\n\n$export($export.S, 'Object', {\n getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object){\n var O = toIObject(object)\n , getDesc = gOPD.f\n , keys = ownKeys(O)\n , result = {}\n , i = 0\n , key;\n while(keys.length > i)createProperty(result, key = keys[i++], getDesc(O, key));\n return result;\n }\n});\n},{\"107\":107,\"24\":24,\"32\":32,\"70\":70,\"80\":80}],269:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , toObject = _dereq_(109)\n , toPrimitive = _dereq_(110)\n , getPrototypeOf = _dereq_(74)\n , getOwnPropertyDescriptor = _dereq_(70).f;\n\n// B.2.2.4 Object.prototype.__lookupGetter__(P)\n_dereq_(28) && $export($export.P + _dereq_(69), 'Object', {\n __lookupGetter__: function __lookupGetter__(P){\n var O = toObject(this)\n , K = toPrimitive(P, true)\n , D;\n do {\n if(D = getOwnPropertyDescriptor(O, K))return D.get;\n } while(O = getPrototypeOf(O));\n }\n});\n},{\"109\":109,\"110\":110,\"28\":28,\"32\":32,\"69\":69,\"70\":70,\"74\":74}],270:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(32)\n , toObject = _dereq_(109)\n , toPrimitive = _dereq_(110)\n , getPrototypeOf = _dereq_(74)\n , getOwnPropertyDescriptor = _dereq_(70).f;\n\n// B.2.2.5 Object.prototype.__lookupSetter__(P)\n_dereq_(28) && $export($export.P + _dereq_(69), 'Object', {\n __lookupSetter__: function __lookupSetter__(P){\n var O = toObject(this)\n , K = toPrimitive(P, true)\n , D;\n do {\n if(D = getOwnPropertyDescriptor(O, K))return D.set;\n } while(O = getPrototypeOf(O));\n }\n});\n},{\"109\":109,\"110\":110,\"28\":28,\"32\":32,\"69\":69,\"70\":70,\"74\":74}],271:[function(_dereq_,module,exports){\n// https://github.com/tc39/proposal-object-values-entries\nvar $export = _dereq_(32)\n , $values = _dereq_(79)(false);\n\n$export($export.S, 'Object', {\n values: function values(it){\n return $values(it);\n }\n});\n},{\"32\":32,\"79\":79}],272:[function(_dereq_,module,exports){\n'use strict';\n// https://github.com/zenparsing/es-observable\nvar $export = _dereq_(32)\n , global = _dereq_(38)\n , core = _dereq_(23)\n , microtask = _dereq_(64)()\n , OBSERVABLE = _dereq_(117)('observable')\n , aFunction = _dereq_(3)\n , anObject = _dereq_(7)\n , anInstance = _dereq_(6)\n , redefineAll = _dereq_(86)\n , hide = _dereq_(40)\n , forOf = _dereq_(37)\n , RETURN = forOf.RETURN;\n\nvar getMethod = function(fn){\n return fn == null ? undefined : aFunction(fn);\n};\n\nvar cleanupSubscription = function(subscription){\n var cleanup = subscription._c;\n if(cleanup){\n subscription._c = undefined;\n cleanup();\n }\n};\n\nvar subscriptionClosed = function(subscription){\n return subscription._o === undefined;\n};\n\nvar closeSubscription = function(subscription){\n if(!subscriptionClosed(subscription)){\n subscription._o = undefined;\n cleanupSubscription(subscription);\n }\n};\n\nvar Subscription = function(observer, subscriber){\n anObject(observer);\n this._c = undefined;\n this._o = observer;\n observer = new SubscriptionObserver(this);\n try {\n var cleanup = subscriber(observer)\n , subscription = cleanup;\n if(cleanup != null){\n if(typeof cleanup.unsubscribe === 'function')cleanup = function(){ subscription.unsubscribe(); };\n else aFunction(cleanup);\n this._c = cleanup;\n }\n } catch(e){\n observer.error(e);\n return;\n } if(subscriptionClosed(this))cleanupSubscription(this);\n};\n\nSubscription.prototype = redefineAll({}, {\n unsubscribe: function unsubscribe(){ closeSubscription(this); }\n});\n\nvar SubscriptionObserver = function(subscription){\n this._s = subscription;\n};\n\nSubscriptionObserver.prototype = redefineAll({}, {\n next: function next(value){\n var subscription = this._s;\n if(!subscriptionClosed(subscription)){\n var observer = subscription._o;\n try {\n var m = getMethod(observer.next);\n if(m)return m.call(observer, value);\n } catch(e){\n try {\n closeSubscription(subscription);\n } finally {\n throw e;\n }\n }\n }\n },\n error: function error(value){\n var subscription = this._s;\n if(subscriptionClosed(subscription))throw value;\n var observer = subscription._o;\n subscription._o = undefined;\n try {\n var m = getMethod(observer.error);\n if(!m)throw value;\n value = m.call(observer, value);\n } catch(e){\n try {\n cleanupSubscription(subscription);\n } finally {\n throw e;\n }\n } cleanupSubscription(subscription);\n return value;\n },\n complete: function complete(value){\n var subscription = this._s;\n if(!subscriptionClosed(subscription)){\n var observer = subscription._o;\n subscription._o = undefined;\n try {\n var m = getMethod(observer.complete);\n value = m ? m.call(observer, value) : undefined;\n } catch(e){\n try {\n cleanupSubscription(subscription);\n } finally {\n throw e;\n }\n } cleanupSubscription(subscription);\n return value;\n }\n }\n});\n\nvar $Observable = function Observable(subscriber){\n anInstance(this, $Observable, 'Observable', '_f')._f = aFunction(subscriber);\n};\n\nredefineAll($Observable.prototype, {\n subscribe: function subscribe(observer){\n return new Subscription(observer, this._f);\n },\n forEach: function forEach(fn){\n var that = this;\n return new (core.Promise || global.Promise)(function(resolve, reject){\n aFunction(fn);\n var subscription = that.subscribe({\n next : function(value){\n try {\n return fn(value);\n } catch(e){\n reject(e);\n subscription.unsubscribe();\n }\n },\n error: reject,\n complete: resolve\n });\n });\n }\n});\n\nredefineAll($Observable, {\n from: function from(x){\n var C = typeof this === 'function' ? this : $Observable;\n var method = getMethod(anObject(x)[OBSERVABLE]);\n if(method){\n var observable = anObject(method.call(x));\n return observable.constructor === C ? observable : new C(function(observer){\n return observable.subscribe(observer);\n });\n }\n return new C(function(observer){\n var done = false;\n microtask(function(){\n if(!done){\n try {\n if(forOf(x, false, function(it){\n observer.next(it);\n if(done)return RETURN;\n }) === RETURN)return;\n } catch(e){\n if(done)throw e;\n observer.error(e);\n return;\n } observer.complete();\n }\n });\n return function(){ done = true; };\n });\n },\n of: function of(){\n for(var i = 0, l = arguments.length, items = Array(l); i < l;)items[i] = arguments[i++];\n return new (typeof this === 'function' ? this : $Observable)(function(observer){\n var done = false;\n microtask(function(){\n if(!done){\n for(var i = 0; i < items.length; ++i){\n observer.next(items[i]);\n if(done)return;\n } observer.complete();\n }\n });\n return function(){ done = true; };\n });\n }\n});\n\nhide($Observable.prototype, OBSERVABLE, function(){ return this; });\n\n$export($export.G, {Observable: $Observable});\n\n_dereq_(91)('Observable');\n},{\"117\":117,\"23\":23,\"3\":3,\"32\":32,\"37\":37,\"38\":38,\"40\":40,\"6\":6,\"64\":64,\"7\":7,\"86\":86,\"91\":91}],273:[function(_dereq_,module,exports){\nvar metadata = _dereq_(63)\n , anObject = _dereq_(7)\n , toMetaKey = metadata.key\n , ordinaryDefineOwnMetadata = metadata.set;\n\nmetadata.exp({defineMetadata: function defineMetadata(metadataKey, metadataValue, target, targetKey){\n ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), toMetaKey(targetKey));\n}});\n},{\"63\":63,\"7\":7}],274:[function(_dereq_,module,exports){\nvar metadata = _dereq_(63)\n , anObject = _dereq_(7)\n , toMetaKey = metadata.key\n , getOrCreateMetadataMap = metadata.map\n , store = metadata.store;\n\nmetadata.exp({deleteMetadata: function deleteMetadata(metadataKey, target /*, targetKey */){\n var targetKey = arguments.length < 3 ? undefined : toMetaKey(arguments[2])\n , metadataMap = getOrCreateMetadataMap(anObject(target), targetKey, false);\n if(metadataMap === undefined || !metadataMap['delete'](metadataKey))return false;\n if(metadataMap.size)return true;\n var targetMetadata = store.get(target);\n targetMetadata['delete'](targetKey);\n return !!targetMetadata.size || store['delete'](target);\n}});\n},{\"63\":63,\"7\":7}],275:[function(_dereq_,module,exports){\nvar Set = _dereq_(220)\n , from = _dereq_(10)\n , metadata = _dereq_(63)\n , anObject = _dereq_(7)\n , getPrototypeOf = _dereq_(74)\n , ordinaryOwnMetadataKeys = metadata.keys\n , toMetaKey = metadata.key;\n\nvar ordinaryMetadataKeys = function(O, P){\n var oKeys = ordinaryOwnMetadataKeys(O, P)\n , parent = getPrototypeOf(O);\n if(parent === null)return oKeys;\n var pKeys = ordinaryMetadataKeys(parent, P);\n return pKeys.length ? oKeys.length ? from(new Set(oKeys.concat(pKeys))) : pKeys : oKeys;\n};\n\nmetadata.exp({getMetadataKeys: function getMetadataKeys(target /*, targetKey */){\n return ordinaryMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1]));\n}});\n},{\"10\":10,\"220\":220,\"63\":63,\"7\":7,\"74\":74}],276:[function(_dereq_,module,exports){\nvar metadata = _dereq_(63)\n , anObject = _dereq_(7)\n , getPrototypeOf = _dereq_(74)\n , ordinaryHasOwnMetadata = metadata.has\n , ordinaryGetOwnMetadata = metadata.get\n , toMetaKey = metadata.key;\n\nvar ordinaryGetMetadata = function(MetadataKey, O, P){\n var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P);\n if(hasOwn)return ordinaryGetOwnMetadata(MetadataKey, O, P);\n var parent = getPrototypeOf(O);\n return parent !== null ? ordinaryGetMetadata(MetadataKey, parent, P) : undefined;\n};\n\nmetadata.exp({getMetadata: function getMetadata(metadataKey, target /*, targetKey */){\n return ordinaryGetMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n}});\n},{\"63\":63,\"7\":7,\"74\":74}],277:[function(_dereq_,module,exports){\nvar metadata = _dereq_(63)\n , anObject = _dereq_(7)\n , ordinaryOwnMetadataKeys = metadata.keys\n , toMetaKey = metadata.key;\n\nmetadata.exp({getOwnMetadataKeys: function getOwnMetadataKeys(target /*, targetKey */){\n return ordinaryOwnMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1]));\n}});\n},{\"63\":63,\"7\":7}],278:[function(_dereq_,module,exports){\nvar metadata = _dereq_(63)\n , anObject = _dereq_(7)\n , ordinaryGetOwnMetadata = metadata.get\n , toMetaKey = metadata.key;\n\nmetadata.exp({getOwnMetadata: function getOwnMetadata(metadataKey, target /*, targetKey */){\n return ordinaryGetOwnMetadata(metadataKey, anObject(target)\n , arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n}});\n},{\"63\":63,\"7\":7}],279:[function(_dereq_,module,exports){\nvar metadata = _dereq_(63)\n , anObject = _dereq_(7)\n , getPrototypeOf = _dereq_(74)\n , ordinaryHasOwnMetadata = metadata.has\n , toMetaKey = metadata.key;\n\nvar ordinaryHasMetadata = function(MetadataKey, O, P){\n var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P);\n if(hasOwn)return true;\n var parent = getPrototypeOf(O);\n return parent !== null ? ordinaryHasMetadata(MetadataKey, parent, P) : false;\n};\n\nmetadata.exp({hasMetadata: function hasMetadata(metadataKey, target /*, targetKey */){\n return ordinaryHasMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n}});\n},{\"63\":63,\"7\":7,\"74\":74}],280:[function(_dereq_,module,exports){\nvar metadata = _dereq_(63)\n , anObject = _dereq_(7)\n , ordinaryHasOwnMetadata = metadata.has\n , toMetaKey = metadata.key;\n\nmetadata.exp({hasOwnMetadata: function hasOwnMetadata(metadataKey, target /*, targetKey */){\n return ordinaryHasOwnMetadata(metadataKey, anObject(target)\n , arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n}});\n},{\"63\":63,\"7\":7}],281:[function(_dereq_,module,exports){\nvar metadata = _dereq_(63)\n , anObject = _dereq_(7)\n , aFunction = _dereq_(3)\n , toMetaKey = metadata.key\n , ordinaryDefineOwnMetadata = metadata.set;\n\nmetadata.exp({metadata: function metadata(metadataKey, metadataValue){\n return function decorator(target, targetKey){\n ordinaryDefineOwnMetadata(\n metadataKey, metadataValue,\n (targetKey !== undefined ? anObject : aFunction)(target),\n toMetaKey(targetKey)\n );\n };\n}});\n},{\"3\":3,\"63\":63,\"7\":7}],282:[function(_dereq_,module,exports){\n// https://github.com/DavidBruant/Map-Set.prototype.toJSON\nvar $export = _dereq_(32);\n\n$export($export.P + $export.R, 'Set', {toJSON: _dereq_(20)('Set')});\n},{\"20\":20,\"32\":32}],283:[function(_dereq_,module,exports){\n'use strict';\n// https://github.com/mathiasbynens/String.prototype.at\nvar $export = _dereq_(32)\n , $at = _dereq_(97)(true);\n\n$export($export.P, 'String', {\n at: function at(pos){\n return $at(this, pos);\n }\n});\n},{\"32\":32,\"97\":97}],284:[function(_dereq_,module,exports){\n'use strict';\n// https://tc39.github.io/String.prototype.matchAll/\nvar $export = _dereq_(32)\n , defined = _dereq_(27)\n , toLength = _dereq_(108)\n , isRegExp = _dereq_(50)\n , getFlags = _dereq_(36)\n , RegExpProto = RegExp.prototype;\n\nvar $RegExpStringIterator = function(regexp, string){\n this._r = regexp;\n this._s = string;\n};\n\n_dereq_(52)($RegExpStringIterator, 'RegExp String', function next(){\n var match = this._r.exec(this._s);\n return {value: match, done: match === null};\n});\n\n$export($export.P, 'String', {\n matchAll: function matchAll(regexp){\n defined(this);\n if(!isRegExp(regexp))throw TypeError(regexp + ' is not a regexp!');\n var S = String(this)\n , flags = 'flags' in RegExpProto ? String(regexp.flags) : getFlags.call(regexp)\n , rx = new RegExp(regexp.source, ~flags.indexOf('g') ? flags : 'g' + flags);\n rx.lastIndex = toLength(regexp.lastIndex);\n return new $RegExpStringIterator(rx, S);\n }\n});\n},{\"108\":108,\"27\":27,\"32\":32,\"36\":36,\"50\":50,\"52\":52}],285:[function(_dereq_,module,exports){\n'use strict';\n// https://github.com/tc39/proposal-string-pad-start-end\nvar $export = _dereq_(32)\n , $pad = _dereq_(100);\n\n$export($export.P, 'String', {\n padEnd: function padEnd(maxLength /*, fillString = ' ' */){\n return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false);\n }\n});\n},{\"100\":100,\"32\":32}],286:[function(_dereq_,module,exports){\n'use strict';\n// https://github.com/tc39/proposal-string-pad-start-end\nvar $export = _dereq_(32)\n , $pad = _dereq_(100);\n\n$export($export.P, 'String', {\n padStart: function padStart(maxLength /*, fillString = ' ' */){\n return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true);\n }\n});\n},{\"100\":100,\"32\":32}],287:[function(_dereq_,module,exports){\n'use strict';\n// https://github.com/sebmarkbage/ecmascript-string-left-right-trim\n_dereq_(102)('trimLeft', function($trim){\n return function trimLeft(){\n return $trim(this, 1);\n };\n}, 'trimStart');\n},{\"102\":102}],288:[function(_dereq_,module,exports){\n'use strict';\n// https://github.com/sebmarkbage/ecmascript-string-left-right-trim\n_dereq_(102)('trimRight', function($trim){\n return function trimRight(){\n return $trim(this, 2);\n };\n}, 'trimEnd');\n},{\"102\":102}],289:[function(_dereq_,module,exports){\n_dereq_(115)('asyncIterator');\n},{\"115\":115}],290:[function(_dereq_,module,exports){\n_dereq_(115)('observable');\n},{\"115\":115}],291:[function(_dereq_,module,exports){\n// https://github.com/ljharb/proposal-global\nvar $export = _dereq_(32);\n\n$export($export.S, 'System', {global: _dereq_(38)});\n},{\"32\":32,\"38\":38}],292:[function(_dereq_,module,exports){\nvar $iterators = _dereq_(130)\n , redefine = _dereq_(87)\n , global = _dereq_(38)\n , hide = _dereq_(40)\n , Iterators = _dereq_(56)\n , wks = _dereq_(117)\n , ITERATOR = wks('iterator')\n , TO_STRING_TAG = wks('toStringTag')\n , ArrayValues = Iterators.Array;\n\nfor(var collections = ['NodeList', 'DOMTokenList', 'MediaList', 'StyleSheetList', 'CSSRuleList'], i = 0; i < 5; i++){\n var NAME = collections[i]\n , Collection = global[NAME]\n , proto = Collection && Collection.prototype\n , key;\n if(proto){\n if(!proto[ITERATOR])hide(proto, ITERATOR, ArrayValues);\n if(!proto[TO_STRING_TAG])hide(proto, TO_STRING_TAG, NAME);\n Iterators[NAME] = ArrayValues;\n for(key in $iterators)if(!proto[key])redefine(proto, key, $iterators[key], true);\n }\n}\n},{\"117\":117,\"130\":130,\"38\":38,\"40\":40,\"56\":56,\"87\":87}],293:[function(_dereq_,module,exports){\nvar $export = _dereq_(32)\n , $task = _dereq_(104);\n$export($export.G + $export.B, {\n setImmediate: $task.set,\n clearImmediate: $task.clear\n});\n},{\"104\":104,\"32\":32}],294:[function(_dereq_,module,exports){\n// ie9- setTimeout & setInterval additional parameters fix\nvar global = _dereq_(38)\n , $export = _dereq_(32)\n , invoke = _dereq_(44)\n , partial = _dereq_(83)\n , navigator = global.navigator\n , MSIE = !!navigator && /MSIE .\\./.test(navigator.userAgent); // <- dirty ie9- check\nvar wrap = function(set){\n return MSIE ? function(fn, time /*, ...args */){\n return set(invoke(\n partial,\n [].slice.call(arguments, 2),\n typeof fn == 'function' ? fn : Function(fn)\n ), time);\n } : set;\n};\n$export($export.G + $export.B + $export.F * MSIE, {\n setTimeout: wrap(global.setTimeout),\n setInterval: wrap(global.setInterval)\n});\n},{\"32\":32,\"38\":38,\"44\":44,\"83\":83}],295:[function(_dereq_,module,exports){\n_dereq_(243);\n_dereq_(180);\n_dereq_(182);\n_dereq_(181);\n_dereq_(184);\n_dereq_(186);\n_dereq_(191);\n_dereq_(185);\n_dereq_(183);\n_dereq_(193);\n_dereq_(192);\n_dereq_(188);\n_dereq_(189);\n_dereq_(187);\n_dereq_(179);\n_dereq_(190);\n_dereq_(194);\n_dereq_(195);\n_dereq_(146);\n_dereq_(148);\n_dereq_(147);\n_dereq_(197);\n_dereq_(196);\n_dereq_(167);\n_dereq_(177);\n_dereq_(178);\n_dereq_(168);\n_dereq_(169);\n_dereq_(170);\n_dereq_(171);\n_dereq_(172);\n_dereq_(173);\n_dereq_(174);\n_dereq_(175);\n_dereq_(176);\n_dereq_(150);\n_dereq_(151);\n_dereq_(152);\n_dereq_(153);\n_dereq_(154);\n_dereq_(155);\n_dereq_(156);\n_dereq_(157);\n_dereq_(158);\n_dereq_(159);\n_dereq_(160);\n_dereq_(161);\n_dereq_(162);\n_dereq_(163);\n_dereq_(164);\n_dereq_(165);\n_dereq_(166);\n_dereq_(230);\n_dereq_(235);\n_dereq_(242);\n_dereq_(233);\n_dereq_(225);\n_dereq_(226);\n_dereq_(231);\n_dereq_(236);\n_dereq_(238);\n_dereq_(221);\n_dereq_(222);\n_dereq_(223);\n_dereq_(224);\n_dereq_(227);\n_dereq_(228);\n_dereq_(229);\n_dereq_(232);\n_dereq_(234);\n_dereq_(237);\n_dereq_(239);\n_dereq_(240);\n_dereq_(241);\n_dereq_(141);\n_dereq_(143);\n_dereq_(142);\n_dereq_(145);\n_dereq_(144);\n_dereq_(129);\n_dereq_(127);\n_dereq_(134);\n_dereq_(131);\n_dereq_(137);\n_dereq_(139);\n_dereq_(126);\n_dereq_(133);\n_dereq_(123);\n_dereq_(138);\n_dereq_(121);\n_dereq_(136);\n_dereq_(135);\n_dereq_(128);\n_dereq_(132);\n_dereq_(120);\n_dereq_(122);\n_dereq_(125);\n_dereq_(124);\n_dereq_(140);\n_dereq_(130);\n_dereq_(213);\n_dereq_(219);\n_dereq_(214);\n_dereq_(215);\n_dereq_(216);\n_dereq_(217);\n_dereq_(218);\n_dereq_(198);\n_dereq_(149);\n_dereq_(220);\n_dereq_(255);\n_dereq_(256);\n_dereq_(244);\n_dereq_(245);\n_dereq_(250);\n_dereq_(253);\n_dereq_(254);\n_dereq_(248);\n_dereq_(251);\n_dereq_(249);\n_dereq_(252);\n_dereq_(246);\n_dereq_(247);\n_dereq_(199);\n_dereq_(200);\n_dereq_(201);\n_dereq_(202);\n_dereq_(203);\n_dereq_(206);\n_dereq_(204);\n_dereq_(205);\n_dereq_(207);\n_dereq_(208);\n_dereq_(209);\n_dereq_(210);\n_dereq_(212);\n_dereq_(211);\n_dereq_(257);\n_dereq_(283);\n_dereq_(286);\n_dereq_(285);\n_dereq_(287);\n_dereq_(288);\n_dereq_(284);\n_dereq_(289);\n_dereq_(290);\n_dereq_(268);\n_dereq_(271);\n_dereq_(267);\n_dereq_(265);\n_dereq_(266);\n_dereq_(269);\n_dereq_(270);\n_dereq_(260);\n_dereq_(282);\n_dereq_(291);\n_dereq_(259);\n_dereq_(261);\n_dereq_(263);\n_dereq_(262);\n_dereq_(264);\n_dereq_(273);\n_dereq_(274);\n_dereq_(276);\n_dereq_(275);\n_dereq_(278);\n_dereq_(277);\n_dereq_(279);\n_dereq_(280);\n_dereq_(281);\n_dereq_(258);\n_dereq_(272);\n_dereq_(294);\n_dereq_(293);\n_dereq_(292);\nmodule.exports = _dereq_(23);\n},{\"120\":120,\"121\":121,\"122\":122,\"123\":123,\"124\":124,\"125\":125,\"126\":126,\"127\":127,\"128\":128,\"129\":129,\"130\":130,\"131\":131,\"132\":132,\"133\":133,\"134\":134,\"135\":135,\"136\":136,\"137\":137,\"138\":138,\"139\":139,\"140\":140,\"141\":141,\"142\":142,\"143\":143,\"144\":144,\"145\":145,\"146\":146,\"147\":147,\"148\":148,\"149\":149,\"150\":150,\"151\":151,\"152\":152,\"153\":153,\"154\":154,\"155\":155,\"156\":156,\"157\":157,\"158\":158,\"159\":159,\"160\":160,\"161\":161,\"162\":162,\"163\":163,\"164\":164,\"165\":165,\"166\":166,\"167\":167,\"168\":168,\"169\":169,\"170\":170,\"171\":171,\"172\":172,\"173\":173,\"174\":174,\"175\":175,\"176\":176,\"177\":177,\"178\":178,\"179\":179,\"180\":180,\"181\":181,\"182\":182,\"183\":183,\"184\":184,\"185\":185,\"186\":186,\"187\":187,\"188\":188,\"189\":189,\"190\":190,\"191\":191,\"192\":192,\"193\":193,\"194\":194,\"195\":195,\"196\":196,\"197\":197,\"198\":198,\"199\":199,\"200\":200,\"201\":201,\"202\":202,\"203\":203,\"204\":204,\"205\":205,\"206\":206,\"207\":207,\"208\":208,\"209\":209,\"210\":210,\"211\":211,\"212\":212,\"213\":213,\"214\":214,\"215\":215,\"216\":216,\"217\":217,\"218\":218,\"219\":219,\"220\":220,\"221\":221,\"222\":222,\"223\":223,\"224\":224,\"225\":225,\"226\":226,\"227\":227,\"228\":228,\"229\":229,\"23\":23,\"230\":230,\"231\":231,\"232\":232,\"233\":233,\"234\":234,\"235\":235,\"236\":236,\"237\":237,\"238\":238,\"239\":239,\"240\":240,\"241\":241,\"242\":242,\"243\":243,\"244\":244,\"245\":245,\"246\":246,\"247\":247,\"248\":248,\"249\":249,\"250\":250,\"251\":251,\"252\":252,\"253\":253,\"254\":254,\"255\":255,\"256\":256,\"257\":257,\"258\":258,\"259\":259,\"260\":260,\"261\":261,\"262\":262,\"263\":263,\"264\":264,\"265\":265,\"266\":266,\"267\":267,\"268\":268,\"269\":269,\"270\":270,\"271\":271,\"272\":272,\"273\":273,\"274\":274,\"275\":275,\"276\":276,\"277\":277,\"278\":278,\"279\":279,\"280\":280,\"281\":281,\"282\":282,\"283\":283,\"284\":284,\"285\":285,\"286\":286,\"287\":287,\"288\":288,\"289\":289,\"290\":290,\"291\":291,\"292\":292,\"293\":293,\"294\":294}],296:[function(_dereq_,module,exports){\n(function (global){\n/**\n * Copyright (c) 2014, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * https://raw.github.com/facebook/regenerator/master/LICENSE file. An\n * additional grant of patent rights can be found in the PATENTS file in\n * the same directory.\n */\n\n!(function(global) {\n \"use strict\";\n\n var hasOwn = Object.prototype.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n var inModule = typeof module === \"object\";\n var runtime = global.regeneratorRuntime;\n if (runtime) {\n if (inModule) {\n // If regeneratorRuntime is defined globally and we're in a module,\n // make the exports object identical to regeneratorRuntime.\n module.exports = runtime;\n }\n // Don't bother evaluating the rest of this file if the runtime was\n // already defined globally.\n return;\n }\n\n // Define the runtime globally (as expected by generated code) as either\n // module.exports (if we're in a module) or a new, empty object.\n runtime = global.regeneratorRuntime = inModule ? module.exports : {};\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n runtime.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype;\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunctionPrototype[toStringTagSymbol] = GeneratorFunction.displayName = \"GeneratorFunction\";\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n prototype[method] = function(arg) {\n return this._invoke(method, arg);\n };\n });\n }\n\n runtime.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n runtime.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n if (!(toStringTagSymbol in genFun)) {\n genFun[toStringTagSymbol] = \"GeneratorFunction\";\n }\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `value instanceof AwaitArgument` to determine if the yielded value is\n // meant to be awaited. Some may consider the name of this method too\n // cutesy, but they are curmudgeons.\n runtime.awrap = function(arg) {\n return new AwaitArgument(arg);\n };\n\n function AwaitArgument(arg) {\n this.arg = arg;\n }\n\n function AsyncIterator(generator) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value instanceof AwaitArgument) {\n return Promise.resolve(value.arg).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return Promise.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration. If the Promise is rejected, however, the\n // result for this iteration will be rejected with the same\n // reason. Note that rejections of yielded Promises are not\n // thrown back into the generator function, as is the case\n // when an awaited Promise is rejected. This difference in\n // behavior between yield and await is important, because it\n // allows the consumer to decide what to do with the yielded\n // rejection (swallow it and continue, manually .throw it back\n // into the generator, abandon iteration, whatever). With\n // await, by contrast, there is no opportunity to examine the\n // rejection reason outside the generator function, so the\n // only option is to throw it from the await expression, and\n // let the generator function handle the exception.\n result.value = unwrapped;\n resolve(result);\n }, reject);\n }\n }\n\n if (typeof process === \"object\" && process.domain) {\n invoke = process.domain.bind(invoke);\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new Promise(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n runtime.async = function(innerFn, outerFn, self, tryLocsList) {\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList)\n );\n\n return runtime.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n if (method === \"return\" ||\n (method === \"throw\" && delegate.iterator[method] === undefined)) {\n // A return or throw (when the delegate iterator has no throw\n // method) always terminates the yield* loop.\n context.delegate = null;\n\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n var returnMethod = delegate.iterator[\"return\"];\n if (returnMethod) {\n var record = tryCatch(returnMethod, delegate.iterator, arg);\n if (record.type === \"throw\") {\n // If the return method threw an exception, let that\n // exception prevail over the original return or throw.\n method = \"throw\";\n arg = record.arg;\n continue;\n }\n }\n\n if (method === \"return\") {\n // Continue with the outer return, now that the delegate\n // iterator has been terminated.\n continue;\n }\n }\n\n var record = tryCatch(\n delegate.iterator[method],\n delegate.iterator,\n arg\n );\n\n if (record.type === \"throw\") {\n context.delegate = null;\n\n // Like returning generator.throw(uncaught), but without the\n // overhead of an extra function call.\n method = \"throw\";\n arg = record.arg;\n continue;\n }\n\n // Delegate generator ran and handled its own exceptions so\n // regardless of what the method was, we continue as if it is\n // \"next\" with an undefined arg.\n method = \"next\";\n arg = undefined;\n\n var info = record.arg;\n if (info.done) {\n context[delegate.resultName] = info.value;\n context.next = delegate.nextLoc;\n } else {\n state = GenStateSuspendedYield;\n return info;\n }\n\n context.delegate = null;\n }\n\n if (method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = arg;\n\n } else if (method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw arg;\n }\n\n if (context.dispatchException(arg)) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n method = \"next\";\n arg = undefined;\n }\n\n } else if (method === \"return\") {\n context.abrupt(\"return\", arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n var info = {\n value: record.arg,\n done: context.done\n };\n\n if (record.arg === ContinueSentinel) {\n if (context.delegate && method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n arg = undefined;\n }\n } else {\n return info;\n }\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(arg) call above.\n method = \"throw\";\n arg = record.arg;\n }\n }\n };\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp[toStringTagSymbol] = \"Generator\";\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n runtime.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n runtime.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n return !!caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.next = finallyEntry.finallyLoc;\n } else {\n this.complete(record);\n }\n\n return ContinueSentinel;\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = record.arg;\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n return ContinueSentinel;\n }\n };\n})(\n // Among the various tricks for obtaining a reference to the global\n // object, this seems to be the most reliable technique that does not\n // use indirect eval (which violates Content Security Policy).\n typeof global === \"object\" ? global :\n typeof window === \"object\" ? window :\n typeof self === \"object\" ? self : this\n);\n\n}).call(this,typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n},{}]},{},[1]);\n"]} \ No newline at end of file +{"version":3,"sources":["es2015.js"],"names":["e","t","n","r","s","o","u","a","require","i","f","Error","code","l","exports","call","length","1","_dereq_","module","global","define","O","key","value","Object","DEFINE_PROPERTY","writable","configurable","_babelPolyfill","String","prototype","padStart","padEnd","split","forEach","Array","Function","bind","this","self","window","2","327","328","RegExp","escape","130","23","3","it","TypeError","4","cof","msg","18","5","UNSCOPABLES","ArrayProto","undefined","128","42","6","Constructor","name","forbiddenField","7","isObject","51","8","toObject","toAbsoluteIndex","toLength","copyWithin","target","start","len","to","from","end","arguments","count","Math","min","inc","114","118","119","9","aLen","index","endPos","10","forOf","iter","ITERATOR","result","push","39","11","toIObject","IS_INCLUDES","$this","el","fromIndex","117","12","ctx","IObject","asc","TYPE","$create","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","create","callbackfn","that","val","res","15","25","47","13","aFunction","memo","isRight","14","isArray","SPECIES","original","C","constructor","49","speciesConstructor","16","invoke","arraySlice","slice","factories","construct","F","args","join","fn","partArgs","bound","concat","46","17","TAG","ARG","tryGet","T","B","callee","toString","19","dP","redefineAll","anInstance","$iterDefine","step","setSpecies","DESCRIPTORS","fastKey","validate","SIZE","getEntry","entry","_i","_f","k","getConstructor","wrapper","NAME","ADDER","iterable","_t","_l","clear","data","p","delete","next","prev","v","has","get","def","setStrong","iterated","kind","_k","100","125","29","55","57","66","71","72","93","20","classof","21","getWeak","anObject","createArrayMethod","$has","arrayFind","arrayFindIndex","id","uncaughtFrozenStore","UncaughtFrozenStore","findUncaughtFrozen","store","set","splice","ufstore","41","22","$export","redefine","meta","fails","$iterDetect","setToStringTag","inheritIfRequired","methods","common","IS_WEAK","Base","proto","fixMethod","KEY","b","entries","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","NEED","G","W","101","33","35","40","45","56","94","core","version","__e","24","$defineProperty","createDesc","object","92","c","apply","26","getTime","Date","$toISOString","toISOString","lz","num","NaN","isFinite","RangeError","d","y","getUTCFullYear","m","getUTCMilliseconds","abs","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","27","toPrimitive","NUMBER","hint","120","28","defineProperty","30","document","is","createElement","31","32","getKeys","gOPS","pIE","getSymbols","symbols","isEnum","78","81","82","hide","PROTOTYPE","type","source","own","out","exp","IS_FORCED","IS_GLOBAL","IS_STATIC","S","IS_PROTO","P","IS_BIND","expProto","U","R","34","MATCH","re","exec","36","defined","wks","SYMBOL","fns","strfn","rxfn","string","arg","37","ignoreCase","multiline","unicode","sticky","38","flattenIntoArray","sourceLen","depth","mapper","thisArg","element","spreadable","targetIndex","sourceIndex","mapFn","IS_CONCAT_SPREADABLE","isArrayIter","getIterFn","BREAK","RETURN","iterator","iterFn","done","129","48","53","__g","hasOwnProperty","43","documentElement","44","setPrototypeOf","99","un","propertyIsEnumerable","Iterators","58","50","floor","52","isRegExp","ret","54","descriptor","IteratorPrototype","LIBRARY","$iterCreate","getPrototypeOf","BUGGY","keys","FF_ITERATOR","KEYS","VALUES","returnThis","DEFAULT","IS_SET","FORCED","getMethod","DEF_VALUES","VALUES_BUG","$native","$default","$entries","$anyNative","values","60","79","SAFE_CLOSING","riter","skipClosing","safe","arr","59","61","$expm1","expm1","x","62","sign","pow","EPSILON","EPSILON32","MAX32","MIN32","roundTiesToEven","fround","$abs","$sign","Infinity","65","63","log1p","log","64","scale","inLow","inHigh","outLow","outHigh","META","setDesc","isExtensible","FREEZE","preventExtensions","setMeta","w","onFreeze","124","67","Map","shared","getOrCreateMetadataMap","targetKey","targetMetadata","keyMetadata","ordinaryHasOwnMetadata","MetadataKey","metadataMap","ordinaryGetOwnMetadata","ordinaryDefineOwnMetadata","MetadataValue","ordinaryOwnMetadataKeys","_","toMetaKey","map","103","160","266","68","macrotask","Observer","MutationObserver","WebKitMutationObserver","process","Promise","isNode","head","last","notify","flush","parent","domain","exit","enter","nextTick","toggle","node","createTextNode","observe","characterData","resolve","promise","then","task","113","69","PromiseCapability","reject","$$resolve","$$reject","70","$assign","assign","A","Symbol","K","j","dPs","enumBugKeys","IE_PROTO","Empty","createDict","iframeDocument","iframe","lt","gt","style","display","appendChild","src","contentWindow","open","write","close","Properties","102","73","IE8_DOM_DEFINE","Attributes","defineProperties","74","random","__defineSetter__","75","gOPD","getOwnPropertyDescriptor","76","gOPN","windowNames","getOwnPropertyNames","getWindowNames","77","$keys","hiddenKeys","80","getOwnPropertySymbols","ObjectProto","arrayIndexOf","names","83","84","isEntries","85","Reflect","ownKeys","86","$parseFloat","parseFloat","$trim","trim","str","charAt","111","112","87","$parseInt","parseInt","ws","hex","radix","test","88","path","pargs","holder","89","90","91","newPromiseCapability","promiseCapability","bitmap","enumerable","SRC","TO_STRING","$toString","TPL","inspectSource","isFunction","95","regExp","replace","replacer","part","96","97","COLLECTION","mapping","cb","nextItem","98","of","check","buggy","__proto__","tag","stat","uid","SHARED","104","D","105","method","106","toInteger","pos","charCodeAt","116","107","searchString","108","quot","createHTML","attribute","p1","toLowerCase","109","repeat","maxLength","fillString","left","stringLength","fillStr","intMaxLength","fillLen","stringFiller","ceil","110","spaces","space","non","ltrim","rtrim","exporter","ALIAS","FORCE","defer","channel","port","html","cel","setTask","setImmediate","clearTask","clearImmediate","MessageChannel","Dispatch","counter","queue","ONREADYSTATECHANGE","run","listener","event","now","port2","port1","onmessage","postMessage","addEventListener","importScripts","removeChild","setTimeout","max","115","number","isNaN","valueOf","121","$typed","$buffer","propertyDesc","toIndex","createArrayIncludes","ArrayIterators","arrayFill","arrayCopyWithin","$DP","$GOPD","Uint8Array","ARRAY_BUFFER","SHARED_BUFFER","BYTES_PER_ELEMENT","$ArrayBuffer","ArrayBuffer","$DataView","DataView","arrayForEach","arrayFilter","arraySome","arrayEvery","arrayIncludes","arrayValues","arrayKeys","arrayEntries","arrayLastIndexOf","lastIndexOf","arrayReduce","reduce","arrayReduceRight","reduceRight","arrayJoin","arraySort","sort","arrayToString","arrayToLocaleString","toLocaleString","TYPED_CONSTRUCTOR","DEF_CONSTRUCTOR","ALL_CONSTRUCTORS","CONSTR","TYPED_ARRAY","TYPED","VIEW","WRONG_LENGTH","$map","allocate","LITTLE_ENDIAN","Uint16Array","buffer","FORCED_SET","toOffset","BYTES","offset","speciesFromList","list","fromList","addGetter","internal","_d","$from","mapfn","$of","TO_LOCALE_BUG","$toLocaleString","every","fill","filter","find","predicate","findIndex","indexOf","searchElement","includes","separator","reverse","middle","some","comparefn","subarray","begin","$begin","byteOffset","$slice","$set","arrayLike","$iterators","isTAIndex","$getDesc","$setDesc","desc","$TypedArrayPrototype$","CLAMPED","GETTER","SETTER","TypedArray","TAC","ABV","TypedArrayPrototype","getter","setter","round","addElement","$offset","$length","byteLength","klass","$len","$nativeIterator","CORRECT_ITER_NAME","$iterator","122","123","141","packIEEE754","mLen","nBytes","eLen","eMax","eBias","rt","LN2","unpackIEEE754","nBits","unpackI32","bytes","packI8","packI16","packI32","packF64","packF32","view","isLittleEndian","numIndex","intIndex","$LENGTH","WRONG_INDEX","$BUFFER","_b","$OFFSET","pack","conversion","DATA_VIEW","BaseBuffer","BUFFER","BYTE_LENGTH","BYTE_OFFSET","ArrayBufferProto","$setInt8","setInt8","getInt8","setUint8","bufferLength","getUint8","getInt16","getUint16","getInt32","getUint32","getFloat32","getFloat64","setInt16","setUint16","setInt32","setUint32","setFloat32","setFloat64","Typed","TypedArrayConstructors","px","126","wksExt","$Symbol","127","USE_SYMBOL","$exports","getIteratorMethod","$re","131","132","$every","133","134","$filter","135","$find","forced","136","137","$forEach","STRICT","138","createProperty","139","$indexOf","NEGATIVE_ZERO","140","addToUnscopables","Arguments","142","143","144","145","146","$reduce","147","148","upTo","size","cloned","149","$some","150","$sort","151","152","153","154","toJSON","pv","155","TO_PRIMITIVE","156","DateProto","INVALID_DATE","157","158","HAS_INSTANCE","FunctionProto","159","FProto","nameRE","match","strong","MAP","161","sqrt","$acosh","acosh","Number","MAX_VALUE","162","asinh","$asinh","163","$atanh","atanh","164","cbrt","165","clz32","LOG2E","166","cosh","167","168","169","hypot","value1","value2","div","sum","larg","170","$imul","imul","UINT16","xn","yn","xl","yl","171","log10","LOG10E","172","173","log2","174","175","sinh","E","176","tanh","177","trunc","178","$Number","BROKEN_COF","TRIM","toNumber","argument","third","maxCode","first","digits","179","180","_isFinite","181","isInteger","182","183","isSafeInteger","184","MAX_SAFE_INTEGER","185","MIN_SAFE_INTEGER","186","187","188","aNumberValue","$toFixed","toFixed","ERROR","ZERO","multiply","c2","divide","numToString","acc","x2","fractionDigits","z","189","$fails","$toPrecision","toPrecision","precision","190","191","192","193","194","$freeze","195","$getOwnPropertyDescriptor","196","197","$getPrototypeOf","198","$isExtensible","199","$isFrozen","200","$isSealed","201","202","203","$preventExtensions","204","$seal","205","206","207","208","209","Internal","newGenericPromiseCapability","OwnPromiseCapability","Wrapper","microtask","newPromiseCapabilityModule","perform","promiseResolve","PROMISE","$Promise","empty","USE_NATIVE","FakePromise","PromiseRejectionEvent","sameConstructor","isThenable","isReject","_n","chain","_c","_v","ok","_s","reaction","handler","fail","_h","onHandleUnhandled","onUnhandled","console","unhandled","isUnhandled","emit","onunhandledrejection","reason","error","_a","onrejectionhandled","$reject","_w","$resolve","executor","err","onFulfilled","onRejected","catch","capability","all","remaining","$index","alreadyCalled","race","210","rApply","fApply","thisArgument","argumentsList","L","211","rConstruct","NEW_TARGET_BUG","ARGS_BUG","Target","newTarget","$args","212","propertyKey","attributes","213","deleteProperty","214","Enumerate","enumerate","215","216","getProto","217","receiver","218","219","220","221","222","setProto","223","V","existingDescriptor","ownDesc","224","$flags","$RegExp","re1","re2","CORRECT_NEW","tiRE","piRE","fiU","proxy","225","flags","226","$match","regexp","227","REPLACE","$replace","searchValue","replaceValue","228","SEARCH","$search","229","SPLIT","$split","_split","$push","$SPLIT","LENGTH","LAST_INDEX","NPCG","limit","separator2","lastIndex","lastLength","output","lastLastIndex","splitLimit","separatorCopy","230","231","SET","add","232","233","234","235","236","$at","codePointAt","237","context","ENDS_WITH","$endsWith","endsWith","endPosition","search","238","239","color","240","241","fromCharCode","$fromCodePoint","fromCodePoint","242","INCLUDES","243","244","point","245","url","246","raw","callSite","tpl","247","248","249","STARTS_WITH","$startsWith","startsWith","250","251","252","253","254","wksDefine","keyOf","enumKeys","_create","gOPNExt","$JSON","JSON","_stringify","stringify","HIDDEN","SymbolRegistry","AllSymbols","OPSymbols","QObject","findChild","setSymbolDesc","protoDesc","wrap","sym","isSymbol","$defineProperties","$propertyIsEnumerable","$getOwnPropertyNames","$getOwnPropertySymbols","IS_OP","es6Symbols","wellKnownSymbols","for","keyFor","useSetter","useSimple","$replacer","255","$isView","isView","final","viewS","viewT","256","257","init","258","259","260","261","262","263","264","265","InternalMap","each","weak","WEAK_MAP","tmp","$WeakMap","freeze","267","WEAK_SET","268","arraySpeciesCreate","flatMap","269","flatten","depthArg","270","$includes","271","asap","272","isError","273","274","275","276","277","clamp","lower","upper","278","DEG_PER_RAD","PI","279","RAD_PER_DEG","degrees","radians","280","fscale","281","iaddh","x0","x1","y0","y1","$x0","$x1","$y0","282","imulh","$u","$v","u0","v0","u1","v1","283","isubh","284","285","286","287","signbit","288","umulh","289","__defineGetter__","290","291","292","getOwnPropertyDescriptors","getDesc","293","__lookupGetter__","294","__lookupSetter__","295","$values","296","OBSERVABLE","cleanupSubscription","subscription","cleanup","subscriptionClosed","_o","closeSubscription","Subscription","observer","subscriber","SubscriptionObserver","unsubscribe","complete","$Observable","subscribe","observable","items","Observable","297","finally","onFinally","298","try","299","metadata","defineMetadata","metadataKey","metadataValue","300","deleteMetadata","301","Set","ordinaryMetadataKeys","oKeys","pKeys","getMetadataKeys","302","ordinaryGetMetadata","hasOwn","getMetadata","303","getOwnMetadataKeys","304","getOwnMetadata","305","ordinaryHasMetadata","hasMetadata","306","hasOwnMetadata","307","$metadata","308","309","310","311","at","312","getFlags","RegExpProto","$RegExpStringIterator","_r","matchAll","rx","313","$pad","314","315","316","317","318","319","320","321","322","323","324","TO_STRING_TAG","ArrayValues","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","collections","explicit","Collection","325","$task","326","partial","navigator","MSIE","userAgent","time","setInterval","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","Context","_invoke","makeInvokeMethod","tryCatch","obj","GeneratorFunction","GeneratorFunctionPrototype","defineIteratorMethods","AsyncIterator","record","__await","unwrapped","enqueue","callInvokeWithMethodAndArg","previousPromise","state","GenStateSuspendedStart","GenStateExecuting","GenStateCompleted","doneResult","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","sent","_sent","dispatchException","abrupt","GenStateSuspendedYield","info","resultName","nextLoc","pushTryEntry","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iteratorMethod","iteratorSymbol","Op","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","inModule","runtime","regeneratorRuntime","NativeIteratorPrototype","Gp","displayName","isGeneratorFunction","genFun","ctor","mark","awrap","async","pop","skipTempReset","stop","rootEntry","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","finish","thrown","delegateYield"],"mappings":"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EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,E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","file":"es2015.js","sourcesContent":["(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o 2 ? arguments[2] : undefined;\n var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to);\n var inc = 1;\n if (from < to && to < from + count) {\n inc = -1;\n from += count - 1;\n to += count - 1;\n }\n while (count-- > 0) {\n if (from in O) O[to] = O[from];\n else delete O[to];\n to += inc;\n from += inc;\n } return O;\n};\n\n},{\"114\":114,\"118\":118,\"119\":119}],9:[function(_dereq_,module,exports){\n// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)\n'use strict';\nvar toObject = _dereq_(119);\nvar toAbsoluteIndex = _dereq_(114);\nvar toLength = _dereq_(118);\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = toLength(O.length);\n var aLen = arguments.length;\n var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length);\n var end = aLen > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n\n},{\"114\":114,\"118\":118,\"119\":119}],10:[function(_dereq_,module,exports){\nvar forOf = _dereq_(39);\n\nmodule.exports = function (iter, ITERATOR) {\n var result = [];\n forOf(iter, false, result.push, result, ITERATOR);\n return result;\n};\n\n},{\"39\":39}],11:[function(_dereq_,module,exports){\n// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = _dereq_(117);\nvar toLength = _dereq_(118);\nvar toAbsoluteIndex = _dereq_(114);\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\n},{\"114\":114,\"117\":117,\"118\":118}],12:[function(_dereq_,module,exports){\n// 0 -> Array#forEach\n// 1 -> Array#map\n// 2 -> Array#filter\n// 3 -> Array#some\n// 4 -> Array#every\n// 5 -> Array#find\n// 6 -> Array#findIndex\nvar ctx = _dereq_(25);\nvar IObject = _dereq_(47);\nvar toObject = _dereq_(119);\nvar toLength = _dereq_(118);\nvar asc = _dereq_(15);\nmodule.exports = function (TYPE, $create) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n var create = $create || asc;\n return function ($this, callbackfn, that) {\n var O = toObject($this);\n var self = IObject(O);\n var f = ctx(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var val, res;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n val = self[index];\n res = f(val, index, O);\n if (TYPE) {\n if (IS_MAP) result[index] = res; // map\n else if (res) switch (TYPE) {\n case 3: return true; // some\n case 5: return val; // find\n case 6: return index; // findIndex\n case 2: result.push(val); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;\n };\n};\n\n},{\"118\":118,\"119\":119,\"15\":15,\"25\":25,\"47\":47}],13:[function(_dereq_,module,exports){\nvar aFunction = _dereq_(3);\nvar toObject = _dereq_(119);\nvar IObject = _dereq_(47);\nvar toLength = _dereq_(118);\n\nmodule.exports = function (that, callbackfn, aLen, memo, isRight) {\n aFunction(callbackfn);\n var O = toObject(that);\n var self = IObject(O);\n var length = toLength(O.length);\n var index = isRight ? length - 1 : 0;\n var i = isRight ? -1 : 1;\n if (aLen < 2) for (;;) {\n if (index in self) {\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if (isRight ? index < 0 : length <= index) {\n throw TypeError('Reduce of empty array with no initial value');\n }\n }\n for (;isRight ? index >= 0 : length > index; index += i) if (index in self) {\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n};\n\n},{\"118\":118,\"119\":119,\"3\":3,\"47\":47}],14:[function(_dereq_,module,exports){\nvar isObject = _dereq_(51);\nvar isArray = _dereq_(49);\nvar SPECIES = _dereq_(128)('species');\n\nmodule.exports = function (original) {\n var C;\n if (isArray(original)) {\n C = original.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? Array : C;\n};\n\n},{\"128\":128,\"49\":49,\"51\":51}],15:[function(_dereq_,module,exports){\n// 9.4.2.3 ArraySpeciesCreate(originalArray, length)\nvar speciesConstructor = _dereq_(14);\n\nmodule.exports = function (original, length) {\n return new (speciesConstructor(original))(length);\n};\n\n},{\"14\":14}],16:[function(_dereq_,module,exports){\n'use strict';\nvar aFunction = _dereq_(3);\nvar isObject = _dereq_(51);\nvar invoke = _dereq_(46);\nvar arraySlice = [].slice;\nvar factories = {};\n\nvar construct = function (F, len, args) {\n if (!(len in factories)) {\n for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';\n // eslint-disable-next-line no-new-func\n factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');\n } return factories[len](F, args);\n};\n\nmodule.exports = Function.bind || function bind(that /* , ...args */) {\n var fn = aFunction(this);\n var partArgs = arraySlice.call(arguments, 1);\n var bound = function (/* args... */) {\n var args = partArgs.concat(arraySlice.call(arguments));\n return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);\n };\n if (isObject(fn.prototype)) bound.prototype = fn.prototype;\n return bound;\n};\n\n},{\"3\":3,\"46\":46,\"51\":51}],17:[function(_dereq_,module,exports){\n// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = _dereq_(18);\nvar TAG = _dereq_(128)('toStringTag');\n// ES3 wrong here\nvar ARG = cof(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (e) { /* empty */ }\n};\n\nmodule.exports = function (it) {\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n\n},{\"128\":128,\"18\":18}],18:[function(_dereq_,module,exports){\nvar toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n\n},{}],19:[function(_dereq_,module,exports){\n'use strict';\nvar dP = _dereq_(72).f;\nvar create = _dereq_(71);\nvar redefineAll = _dereq_(93);\nvar ctx = _dereq_(25);\nvar anInstance = _dereq_(6);\nvar forOf = _dereq_(39);\nvar $iterDefine = _dereq_(55);\nvar step = _dereq_(57);\nvar setSpecies = _dereq_(100);\nvar DESCRIPTORS = _dereq_(29);\nvar fastKey = _dereq_(66).fastKey;\nvar validate = _dereq_(125);\nvar SIZE = DESCRIPTORS ? '_s' : 'size';\n\nvar getEntry = function (that, key) {\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return that._i[index];\n // frozen object case\n for (entry = that._f; entry; entry = entry.n) {\n if (entry.k == key) return entry;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, NAME, '_i');\n that._t = NAME; // collection type\n that._i = create(null); // index\n that._f = undefined; // first entry\n that._l = undefined; // last entry\n that[SIZE] = 0; // size\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.1.3.1 Map.prototype.clear()\n // 23.2.3.2 Set.prototype.clear()\n clear: function clear() {\n for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {\n entry.r = true;\n if (entry.p) entry.p = entry.p.n = undefined;\n delete data[entry.i];\n }\n that._f = that._l = undefined;\n that[SIZE] = 0;\n },\n // 23.1.3.3 Map.prototype.delete(key)\n // 23.2.3.4 Set.prototype.delete(value)\n 'delete': function (key) {\n var that = validate(this, NAME);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.n;\n var prev = entry.p;\n delete that._i[entry.i];\n entry.r = true;\n if (prev) prev.n = next;\n if (next) next.p = prev;\n if (that._f == entry) that._f = next;\n if (that._l == entry) that._l = prev;\n that[SIZE]--;\n } return !!entry;\n },\n // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)\n // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)\n forEach: function forEach(callbackfn /* , that = undefined */) {\n validate(this, NAME);\n var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);\n var entry;\n while (entry = entry ? entry.n : this._f) {\n f(entry.v, entry.k, this);\n // revert to the last existing entry\n while (entry && entry.r) entry = entry.p;\n }\n },\n // 23.1.3.7 Map.prototype.has(key)\n // 23.2.3.7 Set.prototype.has(value)\n has: function has(key) {\n return !!getEntry(validate(this, NAME), key);\n }\n });\n if (DESCRIPTORS) dP(C.prototype, 'size', {\n get: function () {\n return validate(this, NAME)[SIZE];\n }\n });\n return C;\n },\n def: function (that, key, value) {\n var entry = getEntry(that, key);\n var prev, index;\n // change existing entry\n if (entry) {\n entry.v = value;\n // create new entry\n } else {\n that._l = entry = {\n i: index = fastKey(key, true), // <- index\n k: key, // <- key\n v: value, // <- value\n p: prev = that._l, // <- previous entry\n n: undefined, // <- next entry\n r: false // <- removed\n };\n if (!that._f) that._f = entry;\n if (prev) prev.n = entry;\n that[SIZE]++;\n // add to index\n if (index !== 'F') that._i[index] = entry;\n } return that;\n },\n getEntry: getEntry,\n setStrong: function (C, NAME, IS_MAP) {\n // add .keys, .values, .entries, [@@iterator]\n // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11\n $iterDefine(C, NAME, function (iterated, kind) {\n this._t = validate(iterated, NAME); // target\n this._k = kind; // kind\n this._l = undefined; // previous\n }, function () {\n var that = this;\n var kind = that._k;\n var entry = that._l;\n // revert to the last existing entry\n while (entry && entry.r) entry = entry.p;\n // get next entry\n if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {\n // or finish the iteration\n that._t = undefined;\n return step(1);\n }\n // return step by kind\n if (kind == 'keys') return step(0, entry.k);\n if (kind == 'values') return step(0, entry.v);\n return step(0, [entry.k, entry.v]);\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // add [@@species], 23.1.2.2, 23.2.2.2\n setSpecies(NAME);\n }\n};\n\n},{\"100\":100,\"125\":125,\"25\":25,\"29\":29,\"39\":39,\"55\":55,\"57\":57,\"6\":6,\"66\":66,\"71\":71,\"72\":72,\"93\":93}],20:[function(_dereq_,module,exports){\n// https://github.com/DavidBruant/Map-Set.prototype.toJSON\nvar classof = _dereq_(17);\nvar from = _dereq_(10);\nmodule.exports = function (NAME) {\n return function toJSON() {\n if (classof(this) != NAME) throw TypeError(NAME + \"#toJSON isn't generic\");\n return from(this);\n };\n};\n\n},{\"10\":10,\"17\":17}],21:[function(_dereq_,module,exports){\n'use strict';\nvar redefineAll = _dereq_(93);\nvar getWeak = _dereq_(66).getWeak;\nvar anObject = _dereq_(7);\nvar isObject = _dereq_(51);\nvar anInstance = _dereq_(6);\nvar forOf = _dereq_(39);\nvar createArrayMethod = _dereq_(12);\nvar $has = _dereq_(41);\nvar validate = _dereq_(125);\nvar arrayFind = createArrayMethod(5);\nvar arrayFindIndex = createArrayMethod(6);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (that) {\n return that._l || (that._l = new UncaughtFrozenStore());\n};\nvar UncaughtFrozenStore = function () {\n this.a = [];\n};\nvar findUncaughtFrozen = function (store, key) {\n return arrayFind(store.a, function (it) {\n return it[0] === key;\n });\n};\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.a.push([key, value]);\n },\n 'delete': function (key) {\n var index = arrayFindIndex(this.a, function (it) {\n return it[0] === key;\n });\n if (~index) this.a.splice(index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, NAME, '_i');\n that._t = NAME; // collection type\n that._i = id++; // collection id\n that._l = undefined; // leak store for uncaught frozen objects\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.3.3.2 WeakMap.prototype.delete(key)\n // 23.4.3.3 WeakSet.prototype.delete(value)\n 'delete': function (key) {\n if (!isObject(key)) return false;\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);\n return data && $has(data, this._i) && delete data[this._i];\n },\n // 23.3.3.4 WeakMap.prototype.has(key)\n // 23.4.3.4 WeakSet.prototype.has(value)\n has: function has(key) {\n if (!isObject(key)) return false;\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);\n return data && $has(data, this._i);\n }\n });\n return C;\n },\n def: function (that, key, value) {\n var data = getWeak(anObject(key), true);\n if (data === true) uncaughtFrozenStore(that).set(key, value);\n else data[that._i] = value;\n return that;\n },\n ufstore: uncaughtFrozenStore\n};\n\n},{\"12\":12,\"125\":125,\"39\":39,\"41\":41,\"51\":51,\"6\":6,\"66\":66,\"7\":7,\"93\":93}],22:[function(_dereq_,module,exports){\n'use strict';\nvar global = _dereq_(40);\nvar $export = _dereq_(33);\nvar redefine = _dereq_(94);\nvar redefineAll = _dereq_(93);\nvar meta = _dereq_(66);\nvar forOf = _dereq_(39);\nvar anInstance = _dereq_(6);\nvar isObject = _dereq_(51);\nvar fails = _dereq_(35);\nvar $iterDetect = _dereq_(56);\nvar setToStringTag = _dereq_(101);\nvar inheritIfRequired = _dereq_(45);\n\nmodule.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {\n var Base = global[NAME];\n var C = Base;\n var ADDER = IS_MAP ? 'set' : 'add';\n var proto = C && C.prototype;\n var O = {};\n var fixMethod = function (KEY) {\n var fn = proto[KEY];\n redefine(proto, KEY,\n KEY == 'delete' ? function (a) {\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'has' ? function has(a) {\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'get' ? function get(a) {\n return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'add' ? function add(a) { fn.call(this, a === 0 ? 0 : a); return this; }\n : function set(a, b) { fn.call(this, a === 0 ? 0 : a, b); return this; }\n );\n };\n if (typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {\n new C().entries().next();\n }))) {\n // create collection constructor\n C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);\n redefineAll(C.prototype, methods);\n meta.NEED = true;\n } else {\n var instance = new C();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n var ACCEPT_ITERABLES = $iterDetect(function (iter) { new C(iter); }); // eslint-disable-line no-new\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new C();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n if (!ACCEPT_ITERABLES) {\n C = wrapper(function (target, iterable) {\n anInstance(target, C, NAME);\n var that = inheritIfRequired(new Base(), target, C);\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n return that;\n });\n C.prototype = proto;\n proto.constructor = C;\n }\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n // weak collections should not contains .clear method\n if (IS_WEAK && proto.clear) delete proto.clear;\n }\n\n setToStringTag(C, NAME);\n\n O[NAME] = C;\n $export($export.G + $export.W + $export.F * (C != Base), O);\n\n if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);\n\n return C;\n};\n\n},{\"101\":101,\"33\":33,\"35\":35,\"39\":39,\"40\":40,\"45\":45,\"51\":51,\"56\":56,\"6\":6,\"66\":66,\"93\":93,\"94\":94}],23:[function(_dereq_,module,exports){\nvar core = module.exports = { version: '2.5.0' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n\n},{}],24:[function(_dereq_,module,exports){\n'use strict';\nvar $defineProperty = _dereq_(72);\nvar createDesc = _dereq_(92);\n\nmodule.exports = function (object, index, value) {\n if (index in object) $defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n\n},{\"72\":72,\"92\":92}],25:[function(_dereq_,module,exports){\n// optional / simple context binding\nvar aFunction = _dereq_(3);\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n\n},{\"3\":3}],26:[function(_dereq_,module,exports){\n'use strict';\n// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()\nvar fails = _dereq_(35);\nvar getTime = Date.prototype.getTime;\nvar $toISOString = Date.prototype.toISOString;\n\nvar lz = function (num) {\n return num > 9 ? num : '0' + num;\n};\n\n// PhantomJS / old WebKit has a broken implementations\nmodule.exports = (fails(function () {\n return $toISOString.call(new Date(-5e13 - 1)) != '0385-07-25T07:06:39.999Z';\n}) || !fails(function () {\n $toISOString.call(new Date(NaN));\n})) ? function toISOString() {\n if (!isFinite(getTime.call(this))) throw RangeError('Invalid time value');\n var d = this;\n var y = d.getUTCFullYear();\n var m = d.getUTCMilliseconds();\n var s = y < 0 ? '-' : y > 9999 ? '+' : '';\n return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) +\n '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) +\n 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) +\n ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z';\n} : $toISOString;\n\n},{\"35\":35}],27:[function(_dereq_,module,exports){\n'use strict';\nvar anObject = _dereq_(7);\nvar toPrimitive = _dereq_(120);\nvar NUMBER = 'number';\n\nmodule.exports = function (hint) {\n if (hint !== 'string' && hint !== NUMBER && hint !== 'default') throw TypeError('Incorrect hint');\n return toPrimitive(anObject(this), hint != NUMBER);\n};\n\n},{\"120\":120,\"7\":7}],28:[function(_dereq_,module,exports){\n// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n\n},{}],29:[function(_dereq_,module,exports){\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !_dereq_(35)(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n\n},{\"35\":35}],30:[function(_dereq_,module,exports){\nvar isObject = _dereq_(51);\nvar document = _dereq_(40).document;\n// typeof document.createElement is 'object' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n\n},{\"40\":40,\"51\":51}],31:[function(_dereq_,module,exports){\n// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n\n},{}],32:[function(_dereq_,module,exports){\n// all enumerable object keys, includes symbols\nvar getKeys = _dereq_(81);\nvar gOPS = _dereq_(78);\nvar pIE = _dereq_(82);\nmodule.exports = function (it) {\n var result = getKeys(it);\n var getSymbols = gOPS.f;\n if (getSymbols) {\n var symbols = getSymbols(it);\n var isEnum = pIE.f;\n var i = 0;\n var key;\n while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);\n } return result;\n};\n\n},{\"78\":78,\"81\":81,\"82\":82}],33:[function(_dereq_,module,exports){\nvar global = _dereq_(40);\nvar core = _dereq_(23);\nvar hide = _dereq_(42);\nvar redefine = _dereq_(94);\nvar ctx = _dereq_(25);\nvar PROTOTYPE = 'prototype';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});\n var key, own, out, exp;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n // export native or passed\n out = (own ? target : source)[key];\n // bind timers to global for call from export context\n exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // extend global\n if (target) redefine(target, key, out, type & $export.U);\n // export\n if (exports[key] != out) hide(exports, key, exp);\n if (IS_PROTO && expProto[key] != out) expProto[key] = out;\n }\n};\nglobal.core = core;\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n\n},{\"23\":23,\"25\":25,\"40\":40,\"42\":42,\"94\":94}],34:[function(_dereq_,module,exports){\nvar MATCH = _dereq_(128)('match');\nmodule.exports = function (KEY) {\n var re = /./;\n try {\n '/./'[KEY](re);\n } catch (e) {\n try {\n re[MATCH] = false;\n return !'/./'[KEY](re);\n } catch (f) { /* empty */ }\n } return true;\n};\n\n},{\"128\":128}],35:[function(_dereq_,module,exports){\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n\n},{}],36:[function(_dereq_,module,exports){\n'use strict';\nvar hide = _dereq_(42);\nvar redefine = _dereq_(94);\nvar fails = _dereq_(35);\nvar defined = _dereq_(28);\nvar wks = _dereq_(128);\n\nmodule.exports = function (KEY, length, exec) {\n var SYMBOL = wks(KEY);\n var fns = exec(defined, SYMBOL, ''[KEY]);\n var strfn = fns[0];\n var rxfn = fns[1];\n if (fails(function () {\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n })) {\n redefine(String.prototype, KEY, strfn);\n hide(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return rxfn.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return rxfn.call(string, this); }\n );\n }\n};\n\n},{\"128\":128,\"28\":28,\"35\":35,\"42\":42,\"94\":94}],37:[function(_dereq_,module,exports){\n'use strict';\n// 21.2.5.3 get RegExp.prototype.flags\nvar anObject = _dereq_(7);\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n\n},{\"7\":7}],38:[function(_dereq_,module,exports){\n'use strict';\n// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray\nvar isArray = _dereq_(49);\nvar isObject = _dereq_(51);\nvar toLength = _dereq_(118);\nvar ctx = _dereq_(25);\nvar IS_CONCAT_SPREADABLE = _dereq_(128)('isConcatSpreadable');\n\nfunction flattenIntoArray(target, original, source, sourceLen, start, depth, mapper, thisArg) {\n var targetIndex = start;\n var sourceIndex = 0;\n var mapFn = mapper ? ctx(mapper, thisArg, 3) : false;\n var element, spreadable;\n\n while (sourceIndex < sourceLen) {\n if (sourceIndex in source) {\n element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];\n\n spreadable = false;\n if (isObject(element)) {\n spreadable = element[IS_CONCAT_SPREADABLE];\n spreadable = spreadable !== undefined ? !!spreadable : isArray(element);\n }\n\n if (spreadable && depth > 0) {\n targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1;\n } else {\n if (targetIndex >= 0x1fffffffffffff) throw TypeError();\n target[targetIndex] = element;\n }\n\n targetIndex++;\n }\n sourceIndex++;\n }\n return targetIndex;\n}\n\nmodule.exports = flattenIntoArray;\n\n},{\"118\":118,\"128\":128,\"25\":25,\"49\":49,\"51\":51}],39:[function(_dereq_,module,exports){\nvar ctx = _dereq_(25);\nvar call = _dereq_(53);\nvar isArrayIter = _dereq_(48);\nvar anObject = _dereq_(7);\nvar toLength = _dereq_(118);\nvar getIterFn = _dereq_(129);\nvar BREAK = {};\nvar RETURN = {};\nvar exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {\n var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);\n var f = ctx(fn, that, entries ? 2 : 1);\n var index = 0;\n var length, step, iterator, result;\n if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');\n // fast case for arrays with default iterator\n if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {\n result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);\n if (result === BREAK || result === RETURN) return result;\n } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {\n result = call(iterator, f, step.value, entries);\n if (result === BREAK || result === RETURN) return result;\n }\n};\nexports.BREAK = BREAK;\nexports.RETURN = RETURN;\n\n},{\"118\":118,\"129\":129,\"25\":25,\"48\":48,\"53\":53,\"7\":7}],40:[function(_dereq_,module,exports){\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n\n},{}],41:[function(_dereq_,module,exports){\nvar hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n\n},{}],42:[function(_dereq_,module,exports){\nvar dP = _dereq_(72);\nvar createDesc = _dereq_(92);\nmodule.exports = _dereq_(29) ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n\n},{\"29\":29,\"72\":72,\"92\":92}],43:[function(_dereq_,module,exports){\nvar document = _dereq_(40).document;\nmodule.exports = document && document.documentElement;\n\n},{\"40\":40}],44:[function(_dereq_,module,exports){\nmodule.exports = !_dereq_(29) && !_dereq_(35)(function () {\n return Object.defineProperty(_dereq_(30)('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n\n},{\"29\":29,\"30\":30,\"35\":35}],45:[function(_dereq_,module,exports){\nvar isObject = _dereq_(51);\nvar setPrototypeOf = _dereq_(99).set;\nmodule.exports = function (that, target, C) {\n var S = target.constructor;\n var P;\n if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) {\n setPrototypeOf(that, P);\n } return that;\n};\n\n},{\"51\":51,\"99\":99}],46:[function(_dereq_,module,exports){\n// fast apply, http://jsperf.lnkit.com/fast-apply/5\nmodule.exports = function (fn, args, that) {\n var un = that === undefined;\n switch (args.length) {\n case 0: return un ? fn()\n : fn.call(that);\n case 1: return un ? fn(args[0])\n : fn.call(that, args[0]);\n case 2: return un ? fn(args[0], args[1])\n : fn.call(that, args[0], args[1]);\n case 3: return un ? fn(args[0], args[1], args[2])\n : fn.call(that, args[0], args[1], args[2]);\n case 4: return un ? fn(args[0], args[1], args[2], args[3])\n : fn.call(that, args[0], args[1], args[2], args[3]);\n } return fn.apply(that, args);\n};\n\n},{}],47:[function(_dereq_,module,exports){\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = _dereq_(18);\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n\n},{\"18\":18}],48:[function(_dereq_,module,exports){\n// check on default Array iterator\nvar Iterators = _dereq_(58);\nvar ITERATOR = _dereq_(128)('iterator');\nvar ArrayProto = Array.prototype;\n\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);\n};\n\n},{\"128\":128,\"58\":58}],49:[function(_dereq_,module,exports){\n// 7.2.2 IsArray(argument)\nvar cof = _dereq_(18);\nmodule.exports = Array.isArray || function isArray(arg) {\n return cof(arg) == 'Array';\n};\n\n},{\"18\":18}],50:[function(_dereq_,module,exports){\n// 20.1.2.3 Number.isInteger(number)\nvar isObject = _dereq_(51);\nvar floor = Math.floor;\nmodule.exports = function isInteger(it) {\n return !isObject(it) && isFinite(it) && floor(it) === it;\n};\n\n},{\"51\":51}],51:[function(_dereq_,module,exports){\nmodule.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n\n},{}],52:[function(_dereq_,module,exports){\n// 7.2.8 IsRegExp(argument)\nvar isObject = _dereq_(51);\nvar cof = _dereq_(18);\nvar MATCH = _dereq_(128)('match');\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');\n};\n\n},{\"128\":128,\"18\":18,\"51\":51}],53:[function(_dereq_,module,exports){\n// call something on iterator step with safe closing on error\nvar anObject = _dereq_(7);\nmodule.exports = function (iterator, fn, value, entries) {\n try {\n return entries ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (e) {\n var ret = iterator['return'];\n if (ret !== undefined) anObject(ret.call(iterator));\n throw e;\n }\n};\n\n},{\"7\":7}],54:[function(_dereq_,module,exports){\n'use strict';\nvar create = _dereq_(71);\nvar descriptor = _dereq_(92);\nvar setToStringTag = _dereq_(101);\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\n_dereq_(42)(IteratorPrototype, _dereq_(128)('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n\n},{\"101\":101,\"128\":128,\"42\":42,\"71\":71,\"92\":92}],55:[function(_dereq_,module,exports){\n'use strict';\nvar LIBRARY = _dereq_(60);\nvar $export = _dereq_(33);\nvar redefine = _dereq_(94);\nvar hide = _dereq_(42);\nvar has = _dereq_(41);\nvar Iterators = _dereq_(58);\nvar $iterCreate = _dereq_(54);\nvar setToStringTag = _dereq_(101);\nvar getPrototypeOf = _dereq_(79);\nvar ITERATOR = _dereq_(128)('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && !has(IteratorPrototype, ITERATOR)) hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n\n},{\"101\":101,\"128\":128,\"33\":33,\"41\":41,\"42\":42,\"54\":54,\"58\":58,\"60\":60,\"79\":79,\"94\":94}],56:[function(_dereq_,module,exports){\nvar ITERATOR = _dereq_(128)('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var riter = [7][ITERATOR]();\n riter['return'] = function () { SAFE_CLOSING = true; };\n // eslint-disable-next-line no-throw-literal\n Array.from(riter, function () { throw 2; });\n} catch (e) { /* empty */ }\n\nmodule.exports = function (exec, skipClosing) {\n if (!skipClosing && !SAFE_CLOSING) return false;\n var safe = false;\n try {\n var arr = [7];\n var iter = arr[ITERATOR]();\n iter.next = function () { return { done: safe = true }; };\n arr[ITERATOR] = function () { return iter; };\n exec(arr);\n } catch (e) { /* empty */ }\n return safe;\n};\n\n},{\"128\":128}],57:[function(_dereq_,module,exports){\nmodule.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n\n},{}],58:[function(_dereq_,module,exports){\nmodule.exports = {};\n\n},{}],59:[function(_dereq_,module,exports){\nvar getKeys = _dereq_(81);\nvar toIObject = _dereq_(117);\nmodule.exports = function (object, el) {\n var O = toIObject(object);\n var keys = getKeys(O);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) if (O[key = keys[index++]] === el) return key;\n};\n\n},{\"117\":117,\"81\":81}],60:[function(_dereq_,module,exports){\nmodule.exports = false;\n\n},{}],61:[function(_dereq_,module,exports){\n// 20.2.2.14 Math.expm1(x)\nvar $expm1 = Math.expm1;\nmodule.exports = (!$expm1\n // Old FF bug\n || $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168\n // Tor Browser bug\n || $expm1(-2e-17) != -2e-17\n) ? function expm1(x) {\n return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;\n} : $expm1;\n\n},{}],62:[function(_dereq_,module,exports){\n// 20.2.2.16 Math.fround(x)\nvar sign = _dereq_(65);\nvar pow = Math.pow;\nvar EPSILON = pow(2, -52);\nvar EPSILON32 = pow(2, -23);\nvar MAX32 = pow(2, 127) * (2 - EPSILON32);\nvar MIN32 = pow(2, -126);\n\nvar roundTiesToEven = function (n) {\n return n + 1 / EPSILON - 1 / EPSILON;\n};\n\nmodule.exports = Math.fround || function fround(x) {\n var $abs = Math.abs(x);\n var $sign = sign(x);\n var a, result;\n if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32;\n a = (1 + EPSILON32 / EPSILON) * $abs;\n result = a - (a - $abs);\n // eslint-disable-next-line no-self-compare\n if (result > MAX32 || result != result) return $sign * Infinity;\n return $sign * result;\n};\n\n},{\"65\":65}],63:[function(_dereq_,module,exports){\n// 20.2.2.20 Math.log1p(x)\nmodule.exports = Math.log1p || function log1p(x) {\n return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x);\n};\n\n},{}],64:[function(_dereq_,module,exports){\n// https://rwaldron.github.io/proposal-math-extensions/\nmodule.exports = Math.scale || function scale(x, inLow, inHigh, outLow, outHigh) {\n if (\n arguments.length === 0\n // eslint-disable-next-line no-self-compare\n || x != x\n // eslint-disable-next-line no-self-compare\n || inLow != inLow\n // eslint-disable-next-line no-self-compare\n || inHigh != inHigh\n // eslint-disable-next-line no-self-compare\n || outLow != outLow\n // eslint-disable-next-line no-self-compare\n || outHigh != outHigh\n ) return NaN;\n if (x === Infinity || x === -Infinity) return x;\n return (x - inLow) * (outHigh - outLow) / (inHigh - inLow) + outLow;\n};\n\n},{}],65:[function(_dereq_,module,exports){\n// 20.2.2.28 Math.sign(x)\nmodule.exports = Math.sign || function sign(x) {\n // eslint-disable-next-line no-self-compare\n return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1;\n};\n\n},{}],66:[function(_dereq_,module,exports){\nvar META = _dereq_(124)('meta');\nvar isObject = _dereq_(51);\nvar has = _dereq_(41);\nvar setDesc = _dereq_(72).f;\nvar id = 0;\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\nvar FREEZE = !_dereq_(35)(function () {\n return isExtensible(Object.preventExtensions({}));\n});\nvar setMeta = function (it) {\n setDesc(it, META, { value: {\n i: 'O' + ++id, // object ID\n w: {} // weak collections IDs\n } });\n};\nvar fastKey = function (it, create) {\n // return primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMeta(it);\n // return object ID\n } return it[META].i;\n};\nvar getWeak = function (it, create) {\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMeta(it);\n // return hash weak collections IDs\n } return it[META].w;\n};\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);\n return it;\n};\nvar meta = module.exports = {\n KEY: META,\n NEED: false,\n fastKey: fastKey,\n getWeak: getWeak,\n onFreeze: onFreeze\n};\n\n},{\"124\":124,\"35\":35,\"41\":41,\"51\":51,\"72\":72}],67:[function(_dereq_,module,exports){\nvar Map = _dereq_(160);\nvar $export = _dereq_(33);\nvar shared = _dereq_(103)('metadata');\nvar store = shared.store || (shared.store = new (_dereq_(266))());\n\nvar getOrCreateMetadataMap = function (target, targetKey, create) {\n var targetMetadata = store.get(target);\n if (!targetMetadata) {\n if (!create) return undefined;\n store.set(target, targetMetadata = new Map());\n }\n var keyMetadata = targetMetadata.get(targetKey);\n if (!keyMetadata) {\n if (!create) return undefined;\n targetMetadata.set(targetKey, keyMetadata = new Map());\n } return keyMetadata;\n};\nvar ordinaryHasOwnMetadata = function (MetadataKey, O, P) {\n var metadataMap = getOrCreateMetadataMap(O, P, false);\n return metadataMap === undefined ? false : metadataMap.has(MetadataKey);\n};\nvar ordinaryGetOwnMetadata = function (MetadataKey, O, P) {\n var metadataMap = getOrCreateMetadataMap(O, P, false);\n return metadataMap === undefined ? undefined : metadataMap.get(MetadataKey);\n};\nvar ordinaryDefineOwnMetadata = function (MetadataKey, MetadataValue, O, P) {\n getOrCreateMetadataMap(O, P, true).set(MetadataKey, MetadataValue);\n};\nvar ordinaryOwnMetadataKeys = function (target, targetKey) {\n var metadataMap = getOrCreateMetadataMap(target, targetKey, false);\n var keys = [];\n if (metadataMap) metadataMap.forEach(function (_, key) { keys.push(key); });\n return keys;\n};\nvar toMetaKey = function (it) {\n return it === undefined || typeof it == 'symbol' ? it : String(it);\n};\nvar exp = function (O) {\n $export($export.S, 'Reflect', O);\n};\n\nmodule.exports = {\n store: store,\n map: getOrCreateMetadataMap,\n has: ordinaryHasOwnMetadata,\n get: ordinaryGetOwnMetadata,\n set: ordinaryDefineOwnMetadata,\n keys: ordinaryOwnMetadataKeys,\n key: toMetaKey,\n exp: exp\n};\n\n},{\"103\":103,\"160\":160,\"266\":266,\"33\":33}],68:[function(_dereq_,module,exports){\nvar global = _dereq_(40);\nvar macrotask = _dereq_(113).set;\nvar Observer = global.MutationObserver || global.WebKitMutationObserver;\nvar process = global.process;\nvar Promise = global.Promise;\nvar isNode = _dereq_(18)(process) == 'process';\n\nmodule.exports = function () {\n var head, last, notify;\n\n var flush = function () {\n var parent, fn;\n if (isNode && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (e) {\n if (head) notify();\n else last = undefined;\n throw e;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // Node.js\n if (isNode) {\n notify = function () {\n process.nextTick(flush);\n };\n // browsers with MutationObserver\n } else if (Observer) {\n var toggle = true;\n var node = document.createTextNode('');\n new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise && Promise.resolve) {\n var promise = Promise.resolve();\n notify = function () {\n promise.then(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n\n return function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n };\n};\n\n},{\"113\":113,\"18\":18,\"40\":40}],69:[function(_dereq_,module,exports){\n'use strict';\n// 25.4.1.5 NewPromiseCapability(C)\nvar aFunction = _dereq_(3);\n\nfunction PromiseCapability(C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n}\n\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n\n},{\"3\":3}],70:[function(_dereq_,module,exports){\n'use strict';\n// 19.1.2.1 Object.assign(target, source, ...)\nvar getKeys = _dereq_(81);\nvar gOPS = _dereq_(78);\nvar pIE = _dereq_(82);\nvar toObject = _dereq_(119);\nvar IObject = _dereq_(47);\nvar $assign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !$assign || _dereq_(35)(function () {\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var S = Symbol();\n var K = 'abcdefghijklmnopqrst';\n A[S] = 7;\n K.split('').forEach(function (k) { B[k] = k; });\n return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var aLen = arguments.length;\n var index = 1;\n var getSymbols = gOPS.f;\n var isEnum = pIE.f;\n while (aLen > index) {\n var S = IObject(arguments[index++]);\n var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) if (isEnum.call(S, key = keys[j++])) T[key] = S[key];\n } return T;\n} : $assign;\n\n},{\"119\":119,\"35\":35,\"47\":47,\"78\":78,\"81\":81,\"82\":82}],71:[function(_dereq_,module,exports){\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = _dereq_(7);\nvar dPs = _dereq_(73);\nvar enumBugKeys = _dereq_(31);\nvar IE_PROTO = _dereq_(102)('IE_PROTO');\nvar Empty = function () { /* empty */ };\nvar PROTOTYPE = 'prototype';\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar createDict = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = _dereq_(30)('iframe');\n var i = enumBugKeys.length;\n var lt = '<';\n var gt = '>';\n var iframeDocument;\n iframe.style.display = 'none';\n _dereq_(43).appendChild(iframe);\n iframe.src = 'javascript:'; // eslint-disable-line no-script-url\n // createDict = iframe.contentWindow.Object;\n // html.removeChild(iframe);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);\n iframeDocument.close();\n createDict = iframeDocument.F;\n while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];\n return createDict();\n};\n\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n Empty[PROTOTYPE] = anObject(O);\n result = new Empty();\n Empty[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = createDict();\n return Properties === undefined ? result : dPs(result, Properties);\n};\n\n},{\"102\":102,\"30\":30,\"31\":31,\"43\":43,\"7\":7,\"73\":73}],72:[function(_dereq_,module,exports){\nvar anObject = _dereq_(7);\nvar IE8_DOM_DEFINE = _dereq_(44);\nvar toPrimitive = _dereq_(120);\nvar dP = Object.defineProperty;\n\nexports.f = _dereq_(29) ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n\n},{\"120\":120,\"29\":29,\"44\":44,\"7\":7}],73:[function(_dereq_,module,exports){\nvar dP = _dereq_(72);\nvar anObject = _dereq_(7);\nvar getKeys = _dereq_(81);\n\nmodule.exports = _dereq_(29) ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = getKeys(Properties);\n var length = keys.length;\n var i = 0;\n var P;\n while (length > i) dP.f(O, P = keys[i++], Properties[P]);\n return O;\n};\n\n},{\"29\":29,\"7\":7,\"72\":72,\"81\":81}],74:[function(_dereq_,module,exports){\n'use strict';\n// Forced replacement prototype accessors methods\nmodule.exports = _dereq_(60) || !_dereq_(35)(function () {\n var K = Math.random();\n // In FF throws only define methods\n // eslint-disable-next-line no-undef, no-useless-call\n __defineSetter__.call(null, K, function () { /* empty */ });\n delete _dereq_(40)[K];\n});\n\n},{\"35\":35,\"40\":40,\"60\":60}],75:[function(_dereq_,module,exports){\nvar pIE = _dereq_(82);\nvar createDesc = _dereq_(92);\nvar toIObject = _dereq_(117);\nvar toPrimitive = _dereq_(120);\nvar has = _dereq_(41);\nvar IE8_DOM_DEFINE = _dereq_(44);\nvar gOPD = Object.getOwnPropertyDescriptor;\n\nexports.f = _dereq_(29) ? gOPD : function getOwnPropertyDescriptor(O, P) {\n O = toIObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return gOPD(O, P);\n } catch (e) { /* empty */ }\n if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);\n};\n\n},{\"117\":117,\"120\":120,\"29\":29,\"41\":41,\"44\":44,\"82\":82,\"92\":92}],76:[function(_dereq_,module,exports){\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIObject = _dereq_(117);\nvar gOPN = _dereq_(77).f;\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return gOPN(it);\n } catch (e) {\n return windowNames.slice();\n }\n};\n\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));\n};\n\n},{\"117\":117,\"77\":77}],77:[function(_dereq_,module,exports){\n// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)\nvar $keys = _dereq_(80);\nvar hiddenKeys = _dereq_(31).concat('length', 'prototype');\n\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return $keys(O, hiddenKeys);\n};\n\n},{\"31\":31,\"80\":80}],78:[function(_dereq_,module,exports){\nexports.f = Object.getOwnPropertySymbols;\n\n},{}],79:[function(_dereq_,module,exports){\n// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = _dereq_(41);\nvar toObject = _dereq_(119);\nvar IE_PROTO = _dereq_(102)('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n\n},{\"102\":102,\"119\":119,\"41\":41}],80:[function(_dereq_,module,exports){\nvar has = _dereq_(41);\nvar toIObject = _dereq_(117);\nvar arrayIndexOf = _dereq_(11)(false);\nvar IE_PROTO = _dereq_(102)('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n\n},{\"102\":102,\"11\":11,\"117\":117,\"41\":41}],81:[function(_dereq_,module,exports){\n// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = _dereq_(80);\nvar enumBugKeys = _dereq_(31);\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n\n},{\"31\":31,\"80\":80}],82:[function(_dereq_,module,exports){\nexports.f = {}.propertyIsEnumerable;\n\n},{}],83:[function(_dereq_,module,exports){\n// most Object methods by ES6 should accept primitives\nvar $export = _dereq_(33);\nvar core = _dereq_(23);\nvar fails = _dereq_(35);\nmodule.exports = function (KEY, exec) {\n var fn = (core.Object || {})[KEY] || Object[KEY];\n var exp = {};\n exp[KEY] = exec(fn);\n $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);\n};\n\n},{\"23\":23,\"33\":33,\"35\":35}],84:[function(_dereq_,module,exports){\nvar getKeys = _dereq_(81);\nvar toIObject = _dereq_(117);\nvar isEnum = _dereq_(82).f;\nmodule.exports = function (isEntries) {\n return function (it) {\n var O = toIObject(it);\n var keys = getKeys(O);\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) if (isEnum.call(O, key = keys[i++])) {\n result.push(isEntries ? [key, O[key]] : O[key]);\n } return result;\n };\n};\n\n},{\"117\":117,\"81\":81,\"82\":82}],85:[function(_dereq_,module,exports){\n// all object keys, includes non-enumerable and symbols\nvar gOPN = _dereq_(77);\nvar gOPS = _dereq_(78);\nvar anObject = _dereq_(7);\nvar Reflect = _dereq_(40).Reflect;\nmodule.exports = Reflect && Reflect.ownKeys || function ownKeys(it) {\n var keys = gOPN.f(anObject(it));\n var getSymbols = gOPS.f;\n return getSymbols ? keys.concat(getSymbols(it)) : keys;\n};\n\n},{\"40\":40,\"7\":7,\"77\":77,\"78\":78}],86:[function(_dereq_,module,exports){\nvar $parseFloat = _dereq_(40).parseFloat;\nvar $trim = _dereq_(111).trim;\n\nmodule.exports = 1 / $parseFloat(_dereq_(112) + '-0') !== -Infinity ? function parseFloat(str) {\n var string = $trim(String(str), 3);\n var result = $parseFloat(string);\n return result === 0 && string.charAt(0) == '-' ? -0 : result;\n} : $parseFloat;\n\n},{\"111\":111,\"112\":112,\"40\":40}],87:[function(_dereq_,module,exports){\nvar $parseInt = _dereq_(40).parseInt;\nvar $trim = _dereq_(111).trim;\nvar ws = _dereq_(112);\nvar hex = /^[-+]?0[xX]/;\n\nmodule.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) {\n var string = $trim(String(str), 3);\n return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));\n} : $parseInt;\n\n},{\"111\":111,\"112\":112,\"40\":40}],88:[function(_dereq_,module,exports){\n'use strict';\nvar path = _dereq_(89);\nvar invoke = _dereq_(46);\nvar aFunction = _dereq_(3);\nmodule.exports = function (/* ...pargs */) {\n var fn = aFunction(this);\n var length = arguments.length;\n var pargs = Array(length);\n var i = 0;\n var _ = path._;\n var holder = false;\n while (length > i) if ((pargs[i] = arguments[i++]) === _) holder = true;\n return function (/* ...args */) {\n var that = this;\n var aLen = arguments.length;\n var j = 0;\n var k = 0;\n var args;\n if (!holder && !aLen) return invoke(fn, pargs, that);\n args = pargs.slice();\n if (holder) for (;length > j; j++) if (args[j] === _) args[j] = arguments[k++];\n while (aLen > k) args.push(arguments[k++]);\n return invoke(fn, args, that);\n };\n};\n\n},{\"3\":3,\"46\":46,\"89\":89}],89:[function(_dereq_,module,exports){\nmodule.exports = _dereq_(40);\n\n},{\"40\":40}],90:[function(_dereq_,module,exports){\nmodule.exports = function (exec) {\n try {\n return { e: false, v: exec() };\n } catch (e) {\n return { e: true, v: e };\n }\n};\n\n},{}],91:[function(_dereq_,module,exports){\nvar newPromiseCapability = _dereq_(69);\n\nmodule.exports = function (C, x) {\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n\n},{\"69\":69}],92:[function(_dereq_,module,exports){\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n\n},{}],93:[function(_dereq_,module,exports){\nvar redefine = _dereq_(94);\nmodule.exports = function (target, src, safe) {\n for (var key in src) redefine(target, key, src[key], safe);\n return target;\n};\n\n},{\"94\":94}],94:[function(_dereq_,module,exports){\nvar global = _dereq_(40);\nvar hide = _dereq_(42);\nvar has = _dereq_(41);\nvar SRC = _dereq_(124)('src');\nvar TO_STRING = 'toString';\nvar $toString = Function[TO_STRING];\nvar TPL = ('' + $toString).split(TO_STRING);\n\n_dereq_(23).inspectSource = function (it) {\n return $toString.call(it);\n};\n\n(module.exports = function (O, key, val, safe) {\n var isFunction = typeof val == 'function';\n if (isFunction) has(val, 'name') || hide(val, 'name', key);\n if (O[key] === val) return;\n if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));\n if (O === global) {\n O[key] = val;\n } else if (!safe) {\n delete O[key];\n hide(O, key, val);\n } else if (O[key]) {\n O[key] = val;\n } else {\n hide(O, key, val);\n }\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, TO_STRING, function toString() {\n return typeof this == 'function' && this[SRC] || $toString.call(this);\n});\n\n},{\"124\":124,\"23\":23,\"40\":40,\"41\":41,\"42\":42}],95:[function(_dereq_,module,exports){\nmodule.exports = function (regExp, replace) {\n var replacer = replace === Object(replace) ? function (part) {\n return replace[part];\n } : replace;\n return function (it) {\n return String(it).replace(regExp, replacer);\n };\n};\n\n},{}],96:[function(_dereq_,module,exports){\n// 7.2.9 SameValue(x, y)\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n\n},{}],97:[function(_dereq_,module,exports){\n'use strict';\n// https://tc39.github.io/proposal-setmap-offrom/\nvar $export = _dereq_(33);\nvar aFunction = _dereq_(3);\nvar ctx = _dereq_(25);\nvar forOf = _dereq_(39);\n\nmodule.exports = function (COLLECTION) {\n $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) {\n var mapFn = arguments[1];\n var mapping, A, n, cb;\n aFunction(this);\n mapping = mapFn !== undefined;\n if (mapping) aFunction(mapFn);\n if (source == undefined) return new this();\n A = [];\n if (mapping) {\n n = 0;\n cb = ctx(mapFn, arguments[2], 2);\n forOf(source, false, function (nextItem) {\n A.push(cb(nextItem, n++));\n });\n } else {\n forOf(source, false, A.push, A);\n }\n return new this(A);\n } });\n};\n\n},{\"25\":25,\"3\":3,\"33\":33,\"39\":39}],98:[function(_dereq_,module,exports){\n'use strict';\n// https://tc39.github.io/proposal-setmap-offrom/\nvar $export = _dereq_(33);\n\nmodule.exports = function (COLLECTION) {\n $export($export.S, COLLECTION, { of: function of() {\n var length = arguments.length;\n var A = Array(length);\n while (length--) A[length] = arguments[length];\n return new this(A);\n } });\n};\n\n},{\"33\":33}],99:[function(_dereq_,module,exports){\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nvar isObject = _dereq_(51);\nvar anObject = _dereq_(7);\nvar check = function (O, proto) {\n anObject(O);\n if (!isObject(proto) && proto !== null) throw TypeError(proto + \": can't set as prototype!\");\n};\nmodule.exports = {\n set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line\n function (test, buggy, set) {\n try {\n set = _dereq_(25)(Function.call, _dereq_(75).f(Object.prototype, '__proto__').set, 2);\n set(test, []);\n buggy = !(test instanceof Array);\n } catch (e) { buggy = true; }\n return function setPrototypeOf(O, proto) {\n check(O, proto);\n if (buggy) O.__proto__ = proto;\n else set(O, proto);\n return O;\n };\n }({}, false) : undefined),\n check: check\n};\n\n},{\"25\":25,\"51\":51,\"7\":7,\"75\":75}],100:[function(_dereq_,module,exports){\n'use strict';\nvar global = _dereq_(40);\nvar dP = _dereq_(72);\nvar DESCRIPTORS = _dereq_(29);\nvar SPECIES = _dereq_(128)('species');\n\nmodule.exports = function (KEY) {\n var C = global[KEY];\n if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n};\n\n},{\"128\":128,\"29\":29,\"40\":40,\"72\":72}],101:[function(_dereq_,module,exports){\nvar def = _dereq_(72).f;\nvar has = _dereq_(41);\nvar TAG = _dereq_(128)('toStringTag');\n\nmodule.exports = function (it, tag, stat) {\n if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });\n};\n\n},{\"128\":128,\"41\":41,\"72\":72}],102:[function(_dereq_,module,exports){\nvar shared = _dereq_(103)('keys');\nvar uid = _dereq_(124);\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n\n},{\"103\":103,\"124\":124}],103:[function(_dereq_,module,exports){\nvar global = _dereq_(40);\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\nmodule.exports = function (key) {\n return store[key] || (store[key] = {});\n};\n\n},{\"40\":40}],104:[function(_dereq_,module,exports){\n// 7.3.20 SpeciesConstructor(O, defaultConstructor)\nvar anObject = _dereq_(7);\nvar aFunction = _dereq_(3);\nvar SPECIES = _dereq_(128)('species');\nmodule.exports = function (O, D) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);\n};\n\n},{\"128\":128,\"3\":3,\"7\":7}],105:[function(_dereq_,module,exports){\n'use strict';\nvar fails = _dereq_(35);\n\nmodule.exports = function (method, arg) {\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call\n arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);\n });\n};\n\n},{\"35\":35}],106:[function(_dereq_,module,exports){\nvar toInteger = _dereq_(116);\nvar defined = _dereq_(28);\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n\n},{\"116\":116,\"28\":28}],107:[function(_dereq_,module,exports){\n// helper for String#{startsWith, endsWith, includes}\nvar isRegExp = _dereq_(52);\nvar defined = _dereq_(28);\n\nmodule.exports = function (that, searchString, NAME) {\n if (isRegExp(searchString)) throw TypeError('String#' + NAME + \" doesn't accept regex!\");\n return String(defined(that));\n};\n\n},{\"28\":28,\"52\":52}],108:[function(_dereq_,module,exports){\nvar $export = _dereq_(33);\nvar fails = _dereq_(35);\nvar defined = _dereq_(28);\nvar quot = /\"/g;\n// B.2.3.2.1 CreateHTML(string, tag, attribute, value)\nvar createHTML = function (string, tag, attribute, value) {\n var S = String(defined(string));\n var p1 = '<' + tag;\n if (attribute !== '') p1 += ' ' + attribute + '=\"' + String(value).replace(quot, '"') + '\"';\n return p1 + '>' + S + '';\n};\nmodule.exports = function (NAME, exec) {\n var O = {};\n O[NAME] = exec(createHTML);\n $export($export.P + $export.F * fails(function () {\n var test = ''[NAME]('\"');\n return test !== test.toLowerCase() || test.split('\"').length > 3;\n }), 'String', O);\n};\n\n},{\"28\":28,\"33\":33,\"35\":35}],109:[function(_dereq_,module,exports){\n// https://github.com/tc39/proposal-string-pad-start-end\nvar toLength = _dereq_(118);\nvar repeat = _dereq_(110);\nvar defined = _dereq_(28);\n\nmodule.exports = function (that, maxLength, fillString, left) {\n var S = String(defined(that));\n var stringLength = S.length;\n var fillStr = fillString === undefined ? ' ' : String(fillString);\n var intMaxLength = toLength(maxLength);\n if (intMaxLength <= stringLength || fillStr == '') return S;\n var fillLen = intMaxLength - stringLength;\n var stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length));\n if (stringFiller.length > fillLen) stringFiller = stringFiller.slice(0, fillLen);\n return left ? stringFiller + S : S + stringFiller;\n};\n\n},{\"110\":110,\"118\":118,\"28\":28}],110:[function(_dereq_,module,exports){\n'use strict';\nvar toInteger = _dereq_(116);\nvar defined = _dereq_(28);\n\nmodule.exports = function repeat(count) {\n var str = String(defined(this));\n var res = '';\n var n = toInteger(count);\n if (n < 0 || n == Infinity) throw RangeError(\"Count can't be negative\");\n for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) res += str;\n return res;\n};\n\n},{\"116\":116,\"28\":28}],111:[function(_dereq_,module,exports){\nvar $export = _dereq_(33);\nvar defined = _dereq_(28);\nvar fails = _dereq_(35);\nvar spaces = _dereq_(112);\nvar space = '[' + spaces + ']';\nvar non = '\\u200b\\u0085';\nvar ltrim = RegExp('^' + space + space + '*');\nvar rtrim = RegExp(space + space + '*$');\n\nvar exporter = function (KEY, exec, ALIAS) {\n var exp = {};\n var FORCE = fails(function () {\n return !!spaces[KEY]() || non[KEY]() != non;\n });\n var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];\n if (ALIAS) exp[ALIAS] = fn;\n $export($export.P + $export.F * FORCE, 'String', exp);\n};\n\n// 1 -> String#trimLeft\n// 2 -> String#trimRight\n// 3 -> String#trim\nvar trim = exporter.trim = function (string, TYPE) {\n string = String(defined(string));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n};\n\nmodule.exports = exporter;\n\n},{\"112\":112,\"28\":28,\"33\":33,\"35\":35}],112:[function(_dereq_,module,exports){\nmodule.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n\n},{}],113:[function(_dereq_,module,exports){\nvar ctx = _dereq_(25);\nvar invoke = _dereq_(46);\nvar html = _dereq_(43);\nvar cel = _dereq_(30);\nvar global = _dereq_(40);\nvar process = global.process;\nvar setTask = global.setImmediate;\nvar clearTask = global.clearImmediate;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\nvar run = function () {\n var id = +this;\n // eslint-disable-next-line no-prototype-builtins\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\nvar listener = function (event) {\n run.call(event.data);\n};\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!setTask || !clearTask) {\n setTask = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func\n invoke(typeof fn == 'function' ? fn : Function(fn), args);\n };\n defer(counter);\n return counter;\n };\n clearTask = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (_dereq_(18)(process) == 'process') {\n defer = function (id) {\n process.nextTick(ctx(run, id, 1));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(ctx(run, id, 1));\n };\n // Browsers with MessageChannel, includes WebWorkers\n } else if (MessageChannel) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = ctx(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {\n defer = function (id) {\n global.postMessage(id + '', '*');\n };\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in cel('script')) {\n defer = function (id) {\n html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run.call(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(ctx(run, id, 1), 0);\n };\n }\n}\nmodule.exports = {\n set: setTask,\n clear: clearTask\n};\n\n},{\"18\":18,\"25\":25,\"30\":30,\"40\":40,\"43\":43,\"46\":46}],114:[function(_dereq_,module,exports){\nvar toInteger = _dereq_(116);\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n\n},{\"116\":116}],115:[function(_dereq_,module,exports){\n// https://tc39.github.io/ecma262/#sec-toindex\nvar toInteger = _dereq_(116);\nvar toLength = _dereq_(118);\nmodule.exports = function (it) {\n if (it === undefined) return 0;\n var number = toInteger(it);\n var length = toLength(number);\n if (number !== length) throw RangeError('Wrong length!');\n return length;\n};\n\n},{\"116\":116,\"118\":118}],116:[function(_dereq_,module,exports){\n// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n\n},{}],117:[function(_dereq_,module,exports){\n// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = _dereq_(47);\nvar defined = _dereq_(28);\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n\n},{\"28\":28,\"47\":47}],118:[function(_dereq_,module,exports){\n// 7.1.15 ToLength\nvar toInteger = _dereq_(116);\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n\n},{\"116\":116}],119:[function(_dereq_,module,exports){\n// 7.1.13 ToObject(argument)\nvar defined = _dereq_(28);\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n\n},{\"28\":28}],120:[function(_dereq_,module,exports){\n// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = _dereq_(51);\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n\n},{\"51\":51}],121:[function(_dereq_,module,exports){\n'use strict';\nif (_dereq_(29)) {\n var LIBRARY = _dereq_(60);\n var global = _dereq_(40);\n var fails = _dereq_(35);\n var $export = _dereq_(33);\n var $typed = _dereq_(123);\n var $buffer = _dereq_(122);\n var ctx = _dereq_(25);\n var anInstance = _dereq_(6);\n var propertyDesc = _dereq_(92);\n var hide = _dereq_(42);\n var redefineAll = _dereq_(93);\n var toInteger = _dereq_(116);\n var toLength = _dereq_(118);\n var toIndex = _dereq_(115);\n var toAbsoluteIndex = _dereq_(114);\n var toPrimitive = _dereq_(120);\n var has = _dereq_(41);\n var classof = _dereq_(17);\n var isObject = _dereq_(51);\n var toObject = _dereq_(119);\n var isArrayIter = _dereq_(48);\n var create = _dereq_(71);\n var getPrototypeOf = _dereq_(79);\n var gOPN = _dereq_(77).f;\n var getIterFn = _dereq_(129);\n var uid = _dereq_(124);\n var wks = _dereq_(128);\n var createArrayMethod = _dereq_(12);\n var createArrayIncludes = _dereq_(11);\n var speciesConstructor = _dereq_(104);\n var ArrayIterators = _dereq_(141);\n var Iterators = _dereq_(58);\n var $iterDetect = _dereq_(56);\n var setSpecies = _dereq_(100);\n var arrayFill = _dereq_(9);\n var arrayCopyWithin = _dereq_(8);\n var $DP = _dereq_(72);\n var $GOPD = _dereq_(75);\n var dP = $DP.f;\n var gOPD = $GOPD.f;\n var RangeError = global.RangeError;\n var TypeError = global.TypeError;\n var Uint8Array = global.Uint8Array;\n var ARRAY_BUFFER = 'ArrayBuffer';\n var SHARED_BUFFER = 'Shared' + ARRAY_BUFFER;\n var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';\n var PROTOTYPE = 'prototype';\n var ArrayProto = Array[PROTOTYPE];\n var $ArrayBuffer = $buffer.ArrayBuffer;\n var $DataView = $buffer.DataView;\n var arrayForEach = createArrayMethod(0);\n var arrayFilter = createArrayMethod(2);\n var arraySome = createArrayMethod(3);\n var arrayEvery = createArrayMethod(4);\n var arrayFind = createArrayMethod(5);\n var arrayFindIndex = createArrayMethod(6);\n var arrayIncludes = createArrayIncludes(true);\n var arrayIndexOf = createArrayIncludes(false);\n var arrayValues = ArrayIterators.values;\n var arrayKeys = ArrayIterators.keys;\n var arrayEntries = ArrayIterators.entries;\n var arrayLastIndexOf = ArrayProto.lastIndexOf;\n var arrayReduce = ArrayProto.reduce;\n var arrayReduceRight = ArrayProto.reduceRight;\n var arrayJoin = ArrayProto.join;\n var arraySort = ArrayProto.sort;\n var arraySlice = ArrayProto.slice;\n var arrayToString = ArrayProto.toString;\n var arrayToLocaleString = ArrayProto.toLocaleString;\n var ITERATOR = wks('iterator');\n var TAG = wks('toStringTag');\n var TYPED_CONSTRUCTOR = uid('typed_constructor');\n var DEF_CONSTRUCTOR = uid('def_constructor');\n var ALL_CONSTRUCTORS = $typed.CONSTR;\n var TYPED_ARRAY = $typed.TYPED;\n var VIEW = $typed.VIEW;\n var WRONG_LENGTH = 'Wrong length!';\n\n var $map = createArrayMethod(1, function (O, length) {\n return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);\n });\n\n var LITTLE_ENDIAN = fails(function () {\n // eslint-disable-next-line no-undef\n return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;\n });\n\n var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function () {\n new Uint8Array(1).set({});\n });\n\n var toOffset = function (it, BYTES) {\n var offset = toInteger(it);\n if (offset < 0 || offset % BYTES) throw RangeError('Wrong offset!');\n return offset;\n };\n\n var validate = function (it) {\n if (isObject(it) && TYPED_ARRAY in it) return it;\n throw TypeError(it + ' is not a typed array!');\n };\n\n var allocate = function (C, length) {\n if (!(isObject(C) && TYPED_CONSTRUCTOR in C)) {\n throw TypeError('It is not a typed array constructor!');\n } return new C(length);\n };\n\n var speciesFromList = function (O, list) {\n return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list);\n };\n\n var fromList = function (C, list) {\n var index = 0;\n var length = list.length;\n var result = allocate(C, length);\n while (length > index) result[index] = list[index++];\n return result;\n };\n\n var addGetter = function (it, key, internal) {\n dP(it, key, { get: function () { return this._d[internal]; } });\n };\n\n var $from = function from(source /* , mapfn, thisArg */) {\n var O = toObject(source);\n var aLen = arguments.length;\n var mapfn = aLen > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iterFn = getIterFn(O);\n var i, length, values, result, step, iterator;\n if (iterFn != undefined && !isArrayIter(iterFn)) {\n for (iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++) {\n values.push(step.value);\n } O = values;\n }\n if (mapping && aLen > 2) mapfn = ctx(mapfn, arguments[2], 2);\n for (i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++) {\n result[i] = mapping ? mapfn(O[i], i) : O[i];\n }\n return result;\n };\n\n var $of = function of(/* ...items */) {\n var index = 0;\n var length = arguments.length;\n var result = allocate(this, length);\n while (length > index) result[index] = arguments[index++];\n return result;\n };\n\n // iOS Safari 6.x fails here\n var TO_LOCALE_BUG = !!Uint8Array && fails(function () { arrayToLocaleString.call(new Uint8Array(1)); });\n\n var $toLocaleString = function toLocaleString() {\n return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments);\n };\n\n var proto = {\n copyWithin: function copyWithin(target, start /* , end */) {\n return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined);\n },\n every: function every(callbackfn /* , thisArg */) {\n return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n fill: function fill(value /* , start, end */) { // eslint-disable-line no-unused-vars\n return arrayFill.apply(validate(this), arguments);\n },\n filter: function filter(callbackfn /* , thisArg */) {\n return speciesFromList(this, arrayFilter(validate(this), callbackfn,\n arguments.length > 1 ? arguments[1] : undefined));\n },\n find: function find(predicate /* , thisArg */) {\n return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n },\n findIndex: function findIndex(predicate /* , thisArg */) {\n return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n },\n forEach: function forEach(callbackfn /* , thisArg */) {\n arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n indexOf: function indexOf(searchElement /* , fromIndex */) {\n return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n },\n includes: function includes(searchElement /* , fromIndex */) {\n return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n },\n join: function join(separator) { // eslint-disable-line no-unused-vars\n return arrayJoin.apply(validate(this), arguments);\n },\n lastIndexOf: function lastIndexOf(searchElement /* , fromIndex */) { // eslint-disable-line no-unused-vars\n return arrayLastIndexOf.apply(validate(this), arguments);\n },\n map: function map(mapfn /* , thisArg */) {\n return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n reduce: function reduce(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars\n return arrayReduce.apply(validate(this), arguments);\n },\n reduceRight: function reduceRight(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars\n return arrayReduceRight.apply(validate(this), arguments);\n },\n reverse: function reverse() {\n var that = this;\n var length = validate(that).length;\n var middle = Math.floor(length / 2);\n var index = 0;\n var value;\n while (index < middle) {\n value = that[index];\n that[index++] = that[--length];\n that[length] = value;\n } return that;\n },\n some: function some(callbackfn /* , thisArg */) {\n return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n sort: function sort(comparefn) {\n return arraySort.call(validate(this), comparefn);\n },\n subarray: function subarray(begin, end) {\n var O = validate(this);\n var length = O.length;\n var $begin = toAbsoluteIndex(begin, length);\n return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))(\n O.buffer,\n O.byteOffset + $begin * O.BYTES_PER_ELEMENT,\n toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - $begin)\n );\n }\n };\n\n var $slice = function slice(start, end) {\n return speciesFromList(this, arraySlice.call(validate(this), start, end));\n };\n\n var $set = function set(arrayLike /* , offset */) {\n validate(this);\n var offset = toOffset(arguments[1], 1);\n var length = this.length;\n var src = toObject(arrayLike);\n var len = toLength(src.length);\n var index = 0;\n if (len + offset > length) throw RangeError(WRONG_LENGTH);\n while (index < len) this[offset + index] = src[index++];\n };\n\n var $iterators = {\n entries: function entries() {\n return arrayEntries.call(validate(this));\n },\n keys: function keys() {\n return arrayKeys.call(validate(this));\n },\n values: function values() {\n return arrayValues.call(validate(this));\n }\n };\n\n var isTAIndex = function (target, key) {\n return isObject(target)\n && target[TYPED_ARRAY]\n && typeof key != 'symbol'\n && key in target\n && String(+key) == String(key);\n };\n var $getDesc = function getOwnPropertyDescriptor(target, key) {\n return isTAIndex(target, key = toPrimitive(key, true))\n ? propertyDesc(2, target[key])\n : gOPD(target, key);\n };\n var $setDesc = function defineProperty(target, key, desc) {\n if (isTAIndex(target, key = toPrimitive(key, true))\n && isObject(desc)\n && has(desc, 'value')\n && !has(desc, 'get')\n && !has(desc, 'set')\n // TODO: add validation descriptor w/o calling accessors\n && !desc.configurable\n && (!has(desc, 'writable') || desc.writable)\n && (!has(desc, 'enumerable') || desc.enumerable)\n ) {\n target[key] = desc.value;\n return target;\n } return dP(target, key, desc);\n };\n\n if (!ALL_CONSTRUCTORS) {\n $GOPD.f = $getDesc;\n $DP.f = $setDesc;\n }\n\n $export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', {\n getOwnPropertyDescriptor: $getDesc,\n defineProperty: $setDesc\n });\n\n if (fails(function () { arrayToString.call({}); })) {\n arrayToString = arrayToLocaleString = function toString() {\n return arrayJoin.call(this);\n };\n }\n\n var $TypedArrayPrototype$ = redefineAll({}, proto);\n redefineAll($TypedArrayPrototype$, $iterators);\n hide($TypedArrayPrototype$, ITERATOR, $iterators.values);\n redefineAll($TypedArrayPrototype$, {\n slice: $slice,\n set: $set,\n constructor: function () { /* noop */ },\n toString: arrayToString,\n toLocaleString: $toLocaleString\n });\n addGetter($TypedArrayPrototype$, 'buffer', 'b');\n addGetter($TypedArrayPrototype$, 'byteOffset', 'o');\n addGetter($TypedArrayPrototype$, 'byteLength', 'l');\n addGetter($TypedArrayPrototype$, 'length', 'e');\n dP($TypedArrayPrototype$, TAG, {\n get: function () { return this[TYPED_ARRAY]; }\n });\n\n // eslint-disable-next-line max-statements\n module.exports = function (KEY, BYTES, wrapper, CLAMPED) {\n CLAMPED = !!CLAMPED;\n var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array';\n var GETTER = 'get' + KEY;\n var SETTER = 'set' + KEY;\n var TypedArray = global[NAME];\n var Base = TypedArray || {};\n var TAC = TypedArray && getPrototypeOf(TypedArray);\n var FORCED = !TypedArray || !$typed.ABV;\n var O = {};\n var TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE];\n var getter = function (that, index) {\n var data = that._d;\n return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);\n };\n var setter = function (that, index, value) {\n var data = that._d;\n if (CLAMPED) value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff;\n data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN);\n };\n var addElement = function (that, index) {\n dP(that, index, {\n get: function () {\n return getter(this, index);\n },\n set: function (value) {\n return setter(this, index, value);\n },\n enumerable: true\n });\n };\n if (FORCED) {\n TypedArray = wrapper(function (that, data, $offset, $length) {\n anInstance(that, TypedArray, NAME, '_d');\n var index = 0;\n var offset = 0;\n var buffer, byteLength, length, klass;\n if (!isObject(data)) {\n length = toIndex(data);\n byteLength = length * BYTES;\n buffer = new $ArrayBuffer(byteLength);\n } else if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {\n buffer = data;\n offset = toOffset($offset, BYTES);\n var $len = data.byteLength;\n if ($length === undefined) {\n if ($len % BYTES) throw RangeError(WRONG_LENGTH);\n byteLength = $len - offset;\n if (byteLength < 0) throw RangeError(WRONG_LENGTH);\n } else {\n byteLength = toLength($length) * BYTES;\n if (byteLength + offset > $len) throw RangeError(WRONG_LENGTH);\n }\n length = byteLength / BYTES;\n } else if (TYPED_ARRAY in data) {\n return fromList(TypedArray, data);\n } else {\n return $from.call(TypedArray, data);\n }\n hide(that, '_d', {\n b: buffer,\n o: offset,\n l: byteLength,\n e: length,\n v: new $DataView(buffer)\n });\n while (index < length) addElement(that, index++);\n });\n TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$);\n hide(TypedArrayPrototype, 'constructor', TypedArray);\n } else if (!fails(function () {\n TypedArray(1);\n }) || !fails(function () {\n new TypedArray(-1); // eslint-disable-line no-new\n }) || !$iterDetect(function (iter) {\n new TypedArray(); // eslint-disable-line no-new\n new TypedArray(null); // eslint-disable-line no-new\n new TypedArray(1.5); // eslint-disable-line no-new\n new TypedArray(iter); // eslint-disable-line no-new\n }, true)) {\n TypedArray = wrapper(function (that, data, $offset, $length) {\n anInstance(that, TypedArray, NAME);\n var klass;\n // `ws` module bug, temporarily remove validation length for Uint8Array\n // https://github.com/websockets/ws/pull/645\n if (!isObject(data)) return new Base(toIndex(data));\n if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {\n return $length !== undefined\n ? new Base(data, toOffset($offset, BYTES), $length)\n : $offset !== undefined\n ? new Base(data, toOffset($offset, BYTES))\n : new Base(data);\n }\n if (TYPED_ARRAY in data) return fromList(TypedArray, data);\n return $from.call(TypedArray, data);\n });\n arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function (key) {\n if (!(key in TypedArray)) hide(TypedArray, key, Base[key]);\n });\n TypedArray[PROTOTYPE] = TypedArrayPrototype;\n if (!LIBRARY) TypedArrayPrototype.constructor = TypedArray;\n }\n var $nativeIterator = TypedArrayPrototype[ITERATOR];\n var CORRECT_ITER_NAME = !!$nativeIterator\n && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined);\n var $iterator = $iterators.values;\n hide(TypedArray, TYPED_CONSTRUCTOR, true);\n hide(TypedArrayPrototype, TYPED_ARRAY, NAME);\n hide(TypedArrayPrototype, VIEW, true);\n hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);\n\n if (CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)) {\n dP(TypedArrayPrototype, TAG, {\n get: function () { return NAME; }\n });\n }\n\n O[NAME] = TypedArray;\n\n $export($export.G + $export.W + $export.F * (TypedArray != Base), O);\n\n $export($export.S, NAME, {\n BYTES_PER_ELEMENT: BYTES\n });\n\n $export($export.S + $export.F * fails(function () { Base.of.call(TypedArray, 1); }), NAME, {\n from: $from,\n of: $of\n });\n\n if (!(BYTES_PER_ELEMENT in TypedArrayPrototype)) hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES);\n\n $export($export.P, NAME, proto);\n\n setSpecies(NAME);\n\n $export($export.P + $export.F * FORCED_SET, NAME, { set: $set });\n\n $export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators);\n\n if (!LIBRARY && TypedArrayPrototype.toString != arrayToString) TypedArrayPrototype.toString = arrayToString;\n\n $export($export.P + $export.F * fails(function () {\n new TypedArray(1).slice();\n }), NAME, { slice: $slice });\n\n $export($export.P + $export.F * (fails(function () {\n return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString();\n }) || !fails(function () {\n TypedArrayPrototype.toLocaleString.call([1, 2]);\n })), NAME, { toLocaleString: $toLocaleString });\n\n Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator;\n if (!LIBRARY && !CORRECT_ITER_NAME) hide(TypedArrayPrototype, ITERATOR, $iterator);\n };\n} else module.exports = function () { /* empty */ };\n\n},{\"100\":100,\"104\":104,\"11\":11,\"114\":114,\"115\":115,\"116\":116,\"118\":118,\"119\":119,\"12\":12,\"120\":120,\"122\":122,\"123\":123,\"124\":124,\"128\":128,\"129\":129,\"141\":141,\"17\":17,\"25\":25,\"29\":29,\"33\":33,\"35\":35,\"40\":40,\"41\":41,\"42\":42,\"48\":48,\"51\":51,\"56\":56,\"58\":58,\"6\":6,\"60\":60,\"71\":71,\"72\":72,\"75\":75,\"77\":77,\"79\":79,\"8\":8,\"9\":9,\"92\":92,\"93\":93}],122:[function(_dereq_,module,exports){\n'use strict';\nvar global = _dereq_(40);\nvar DESCRIPTORS = _dereq_(29);\nvar LIBRARY = _dereq_(60);\nvar $typed = _dereq_(123);\nvar hide = _dereq_(42);\nvar redefineAll = _dereq_(93);\nvar fails = _dereq_(35);\nvar anInstance = _dereq_(6);\nvar toInteger = _dereq_(116);\nvar toLength = _dereq_(118);\nvar toIndex = _dereq_(115);\nvar gOPN = _dereq_(77).f;\nvar dP = _dereq_(72).f;\nvar arrayFill = _dereq_(9);\nvar setToStringTag = _dereq_(101);\nvar ARRAY_BUFFER = 'ArrayBuffer';\nvar DATA_VIEW = 'DataView';\nvar PROTOTYPE = 'prototype';\nvar WRONG_LENGTH = 'Wrong length!';\nvar WRONG_INDEX = 'Wrong index!';\nvar $ArrayBuffer = global[ARRAY_BUFFER];\nvar $DataView = global[DATA_VIEW];\nvar Math = global.Math;\nvar RangeError = global.RangeError;\n// eslint-disable-next-line no-shadow-restricted-names\nvar Infinity = global.Infinity;\nvar BaseBuffer = $ArrayBuffer;\nvar abs = Math.abs;\nvar pow = Math.pow;\nvar floor = Math.floor;\nvar log = Math.log;\nvar LN2 = Math.LN2;\nvar BUFFER = 'buffer';\nvar BYTE_LENGTH = 'byteLength';\nvar BYTE_OFFSET = 'byteOffset';\nvar $BUFFER = DESCRIPTORS ? '_b' : BUFFER;\nvar $LENGTH = DESCRIPTORS ? '_l' : BYTE_LENGTH;\nvar $OFFSET = DESCRIPTORS ? '_o' : BYTE_OFFSET;\n\n// IEEE754 conversions based on https://github.com/feross/ieee754\nfunction packIEEE754(value, mLen, nBytes) {\n var buffer = Array(nBytes);\n var eLen = nBytes * 8 - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var rt = mLen === 23 ? pow(2, -24) - pow(2, -77) : 0;\n var i = 0;\n var s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0;\n var e, m, c;\n value = abs(value);\n // eslint-disable-next-line no-self-compare\n if (value != value || value === Infinity) {\n // eslint-disable-next-line no-self-compare\n m = value != value ? 1 : 0;\n e = eMax;\n } else {\n e = floor(log(value) / LN2);\n if (value * (c = pow(2, -e)) < 1) {\n e--;\n c *= 2;\n }\n if (e + eBias >= 1) {\n value += rt / c;\n } else {\n value += rt * pow(2, 1 - eBias);\n }\n if (value * c >= 2) {\n e++;\n c /= 2;\n }\n if (e + eBias >= eMax) {\n m = 0;\n e = eMax;\n } else if (e + eBias >= 1) {\n m = (value * c - 1) * pow(2, mLen);\n e = e + eBias;\n } else {\n m = value * pow(2, eBias - 1) * pow(2, mLen);\n e = 0;\n }\n }\n for (; mLen >= 8; buffer[i++] = m & 255, m /= 256, mLen -= 8);\n e = e << mLen | m;\n eLen += mLen;\n for (; eLen > 0; buffer[i++] = e & 255, e /= 256, eLen -= 8);\n buffer[--i] |= s * 128;\n return buffer;\n}\nfunction unpackIEEE754(buffer, mLen, nBytes) {\n var eLen = nBytes * 8 - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var nBits = eLen - 7;\n var i = nBytes - 1;\n var s = buffer[i--];\n var e = s & 127;\n var m;\n s >>= 7;\n for (; nBits > 0; e = e * 256 + buffer[i], i--, nBits -= 8);\n m = e & (1 << -nBits) - 1;\n e >>= -nBits;\n nBits += mLen;\n for (; nBits > 0; m = m * 256 + buffer[i], i--, nBits -= 8);\n if (e === 0) {\n e = 1 - eBias;\n } else if (e === eMax) {\n return m ? NaN : s ? -Infinity : Infinity;\n } else {\n m = m + pow(2, mLen);\n e = e - eBias;\n } return (s ? -1 : 1) * m * pow(2, e - mLen);\n}\n\nfunction unpackI32(bytes) {\n return bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0];\n}\nfunction packI8(it) {\n return [it & 0xff];\n}\nfunction packI16(it) {\n return [it & 0xff, it >> 8 & 0xff];\n}\nfunction packI32(it) {\n return [it & 0xff, it >> 8 & 0xff, it >> 16 & 0xff, it >> 24 & 0xff];\n}\nfunction packF64(it) {\n return packIEEE754(it, 52, 8);\n}\nfunction packF32(it) {\n return packIEEE754(it, 23, 4);\n}\n\nfunction addGetter(C, key, internal) {\n dP(C[PROTOTYPE], key, { get: function () { return this[internal]; } });\n}\n\nfunction get(view, bytes, index, isLittleEndian) {\n var numIndex = +index;\n var intIndex = toIndex(numIndex);\n if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX);\n var store = view[$BUFFER]._b;\n var start = intIndex + view[$OFFSET];\n var pack = store.slice(start, start + bytes);\n return isLittleEndian ? pack : pack.reverse();\n}\nfunction set(view, bytes, index, conversion, value, isLittleEndian) {\n var numIndex = +index;\n var intIndex = toIndex(numIndex);\n if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX);\n var store = view[$BUFFER]._b;\n var start = intIndex + view[$OFFSET];\n var pack = conversion(+value);\n for (var i = 0; i < bytes; i++) store[start + i] = pack[isLittleEndian ? i : bytes - i - 1];\n}\n\nif (!$typed.ABV) {\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, $ArrayBuffer, ARRAY_BUFFER);\n var byteLength = toIndex(length);\n this._b = arrayFill.call(Array(byteLength), 0);\n this[$LENGTH] = byteLength;\n };\n\n $DataView = function DataView(buffer, byteOffset, byteLength) {\n anInstance(this, $DataView, DATA_VIEW);\n anInstance(buffer, $ArrayBuffer, DATA_VIEW);\n var bufferLength = buffer[$LENGTH];\n var offset = toInteger(byteOffset);\n if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset!');\n byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);\n if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH);\n this[$BUFFER] = buffer;\n this[$OFFSET] = offset;\n this[$LENGTH] = byteLength;\n };\n\n if (DESCRIPTORS) {\n addGetter($ArrayBuffer, BYTE_LENGTH, '_l');\n addGetter($DataView, BUFFER, '_b');\n addGetter($DataView, BYTE_LENGTH, '_l');\n addGetter($DataView, BYTE_OFFSET, '_o');\n }\n\n redefineAll($DataView[PROTOTYPE], {\n getInt8: function getInt8(byteOffset) {\n return get(this, 1, byteOffset)[0] << 24 >> 24;\n },\n getUint8: function getUint8(byteOffset) {\n return get(this, 1, byteOffset)[0];\n },\n getInt16: function getInt16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments[1]);\n return (bytes[1] << 8 | bytes[0]) << 16 >> 16;\n },\n getUint16: function getUint16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments[1]);\n return bytes[1] << 8 | bytes[0];\n },\n getInt32: function getInt32(byteOffset /* , littleEndian */) {\n return unpackI32(get(this, 4, byteOffset, arguments[1]));\n },\n getUint32: function getUint32(byteOffset /* , littleEndian */) {\n return unpackI32(get(this, 4, byteOffset, arguments[1])) >>> 0;\n },\n getFloat32: function getFloat32(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 4, byteOffset, arguments[1]), 23, 4);\n },\n getFloat64: function getFloat64(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 8, byteOffset, arguments[1]), 52, 8);\n },\n setInt8: function setInt8(byteOffset, value) {\n set(this, 1, byteOffset, packI8, value);\n },\n setUint8: function setUint8(byteOffset, value) {\n set(this, 1, byteOffset, packI8, value);\n },\n setInt16: function setInt16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packI16, value, arguments[2]);\n },\n setUint16: function setUint16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packI16, value, arguments[2]);\n },\n setInt32: function setInt32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packI32, value, arguments[2]);\n },\n setUint32: function setUint32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packI32, value, arguments[2]);\n },\n setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packF32, value, arguments[2]);\n },\n setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) {\n set(this, 8, byteOffset, packF64, value, arguments[2]);\n }\n });\n} else {\n if (!fails(function () {\n $ArrayBuffer(1);\n }) || !fails(function () {\n new $ArrayBuffer(-1); // eslint-disable-line no-new\n }) || fails(function () {\n new $ArrayBuffer(); // eslint-disable-line no-new\n new $ArrayBuffer(1.5); // eslint-disable-line no-new\n new $ArrayBuffer(NaN); // eslint-disable-line no-new\n return $ArrayBuffer.name != ARRAY_BUFFER;\n })) {\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, $ArrayBuffer);\n return new BaseBuffer(toIndex(length));\n };\n var ArrayBufferProto = $ArrayBuffer[PROTOTYPE] = BaseBuffer[PROTOTYPE];\n for (var keys = gOPN(BaseBuffer), j = 0, key; keys.length > j;) {\n if (!((key = keys[j++]) in $ArrayBuffer)) hide($ArrayBuffer, key, BaseBuffer[key]);\n }\n if (!LIBRARY) ArrayBufferProto.constructor = $ArrayBuffer;\n }\n // iOS Safari 7.x bug\n var view = new $DataView(new $ArrayBuffer(2));\n var $setInt8 = $DataView[PROTOTYPE].setInt8;\n view.setInt8(0, 2147483648);\n view.setInt8(1, 2147483649);\n if (view.getInt8(0) || !view.getInt8(1)) redefineAll($DataView[PROTOTYPE], {\n setInt8: function setInt8(byteOffset, value) {\n $setInt8.call(this, byteOffset, value << 24 >> 24);\n },\n setUint8: function setUint8(byteOffset, value) {\n $setInt8.call(this, byteOffset, value << 24 >> 24);\n }\n }, true);\n}\nsetToStringTag($ArrayBuffer, ARRAY_BUFFER);\nsetToStringTag($DataView, DATA_VIEW);\nhide($DataView[PROTOTYPE], $typed.VIEW, true);\nexports[ARRAY_BUFFER] = $ArrayBuffer;\nexports[DATA_VIEW] = $DataView;\n\n},{\"101\":101,\"115\":115,\"116\":116,\"118\":118,\"123\":123,\"29\":29,\"35\":35,\"40\":40,\"42\":42,\"6\":6,\"60\":60,\"72\":72,\"77\":77,\"9\":9,\"93\":93}],123:[function(_dereq_,module,exports){\nvar global = _dereq_(40);\nvar hide = _dereq_(42);\nvar uid = _dereq_(124);\nvar TYPED = uid('typed_array');\nvar VIEW = uid('view');\nvar ABV = !!(global.ArrayBuffer && global.DataView);\nvar CONSTR = ABV;\nvar i = 0;\nvar l = 9;\nvar Typed;\n\nvar TypedArrayConstructors = (\n 'Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array'\n).split(',');\n\nwhile (i < l) {\n if (Typed = global[TypedArrayConstructors[i++]]) {\n hide(Typed.prototype, TYPED, true);\n hide(Typed.prototype, VIEW, true);\n } else CONSTR = false;\n}\n\nmodule.exports = {\n ABV: ABV,\n CONSTR: CONSTR,\n TYPED: TYPED,\n VIEW: VIEW\n};\n\n},{\"124\":124,\"40\":40,\"42\":42}],124:[function(_dereq_,module,exports){\nvar id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n\n},{}],125:[function(_dereq_,module,exports){\nvar isObject = _dereq_(51);\nmodule.exports = function (it, TYPE) {\n if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');\n return it;\n};\n\n},{\"51\":51}],126:[function(_dereq_,module,exports){\nvar global = _dereq_(40);\nvar core = _dereq_(23);\nvar LIBRARY = _dereq_(60);\nvar wksExt = _dereq_(127);\nvar defineProperty = _dereq_(72).f;\nmodule.exports = function (name) {\n var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});\n if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });\n};\n\n},{\"127\":127,\"23\":23,\"40\":40,\"60\":60,\"72\":72}],127:[function(_dereq_,module,exports){\nexports.f = _dereq_(128);\n\n},{\"128\":128}],128:[function(_dereq_,module,exports){\nvar store = _dereq_(103)('wks');\nvar uid = _dereq_(124);\nvar Symbol = _dereq_(40).Symbol;\nvar USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function (name) {\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n\n},{\"103\":103,\"124\":124,\"40\":40}],129:[function(_dereq_,module,exports){\nvar classof = _dereq_(17);\nvar ITERATOR = _dereq_(128)('iterator');\nvar Iterators = _dereq_(58);\nmodule.exports = _dereq_(23).getIteratorMethod = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n\n},{\"128\":128,\"17\":17,\"23\":23,\"58\":58}],130:[function(_dereq_,module,exports){\n// https://github.com/benjamingr/RexExp.escape\nvar $export = _dereq_(33);\nvar $re = _dereq_(95)(/[\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n\n$export($export.S, 'RegExp', { escape: function escape(it) { return $re(it); } });\n\n},{\"33\":33,\"95\":95}],131:[function(_dereq_,module,exports){\n// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)\nvar $export = _dereq_(33);\n\n$export($export.P, 'Array', { copyWithin: _dereq_(8) });\n\n_dereq_(5)('copyWithin');\n\n},{\"33\":33,\"5\":5,\"8\":8}],132:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar $every = _dereq_(12)(4);\n\n$export($export.P + $export.F * !_dereq_(105)([].every, true), 'Array', {\n // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg])\n every: function every(callbackfn /* , thisArg */) {\n return $every(this, callbackfn, arguments[1]);\n }\n});\n\n},{\"105\":105,\"12\":12,\"33\":33}],133:[function(_dereq_,module,exports){\n// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)\nvar $export = _dereq_(33);\n\n$export($export.P, 'Array', { fill: _dereq_(9) });\n\n_dereq_(5)('fill');\n\n},{\"33\":33,\"5\":5,\"9\":9}],134:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar $filter = _dereq_(12)(2);\n\n$export($export.P + $export.F * !_dereq_(105)([].filter, true), 'Array', {\n // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments[1]);\n }\n});\n\n},{\"105\":105,\"12\":12,\"33\":33}],135:[function(_dereq_,module,exports){\n'use strict';\n// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)\nvar $export = _dereq_(33);\nvar $find = _dereq_(12)(6);\nvar KEY = 'findIndex';\nvar forced = true;\n// Shouldn't skip holes\nif (KEY in []) Array(1)[KEY](function () { forced = false; });\n$export($export.P + $export.F * forced, 'Array', {\n findIndex: function findIndex(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n_dereq_(5)(KEY);\n\n},{\"12\":12,\"33\":33,\"5\":5}],136:[function(_dereq_,module,exports){\n'use strict';\n// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)\nvar $export = _dereq_(33);\nvar $find = _dereq_(12)(5);\nvar KEY = 'find';\nvar forced = true;\n// Shouldn't skip holes\nif (KEY in []) Array(1)[KEY](function () { forced = false; });\n$export($export.P + $export.F * forced, 'Array', {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n_dereq_(5)(KEY);\n\n},{\"12\":12,\"33\":33,\"5\":5}],137:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar $forEach = _dereq_(12)(0);\nvar STRICT = _dereq_(105)([].forEach, true);\n\n$export($export.P + $export.F * !STRICT, 'Array', {\n // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg])\n forEach: function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments[1]);\n }\n});\n\n},{\"105\":105,\"12\":12,\"33\":33}],138:[function(_dereq_,module,exports){\n'use strict';\nvar ctx = _dereq_(25);\nvar $export = _dereq_(33);\nvar toObject = _dereq_(119);\nvar call = _dereq_(53);\nvar isArrayIter = _dereq_(48);\nvar toLength = _dereq_(118);\nvar createProperty = _dereq_(24);\nvar getIterFn = _dereq_(129);\n\n$export($export.S + $export.F * !_dereq_(56)(function (iter) { Array.from(iter); }), 'Array', {\n // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)\n from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var aLen = arguments.length;\n var mapfn = aLen > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var index = 0;\n var iterFn = getIterFn(O);\n var length, result, step, iterator;\n if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);\n // if object isn't iterable or it's array with default iterator - use simple case\n if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {\n for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {\n createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);\n }\n } else {\n length = toLength(O.length);\n for (result = new C(length); length > index; index++) {\n createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);\n }\n }\n result.length = index;\n return result;\n }\n});\n\n},{\"118\":118,\"119\":119,\"129\":129,\"24\":24,\"25\":25,\"33\":33,\"48\":48,\"53\":53,\"56\":56}],139:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar $indexOf = _dereq_(11)(false);\nvar $native = [].indexOf;\nvar NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0;\n\n$export($export.P + $export.F * (NEGATIVE_ZERO || !_dereq_(105)($native)), 'Array', {\n // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex])\n indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {\n return NEGATIVE_ZERO\n // convert -0 to +0\n ? $native.apply(this, arguments) || 0\n : $indexOf(this, searchElement, arguments[1]);\n }\n});\n\n},{\"105\":105,\"11\":11,\"33\":33}],140:[function(_dereq_,module,exports){\n// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)\nvar $export = _dereq_(33);\n\n$export($export.S, 'Array', { isArray: _dereq_(49) });\n\n},{\"33\":33,\"49\":49}],141:[function(_dereq_,module,exports){\n'use strict';\nvar addToUnscopables = _dereq_(5);\nvar step = _dereq_(57);\nvar Iterators = _dereq_(58);\nvar toIObject = _dereq_(117);\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = _dereq_(55)(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n},{\"117\":117,\"5\":5,\"55\":55,\"57\":57,\"58\":58}],142:[function(_dereq_,module,exports){\n'use strict';\n// 22.1.3.13 Array.prototype.join(separator)\nvar $export = _dereq_(33);\nvar toIObject = _dereq_(117);\nvar arrayJoin = [].join;\n\n// fallback for not array-like strings\n$export($export.P + $export.F * (_dereq_(47) != Object || !_dereq_(105)(arrayJoin)), 'Array', {\n join: function join(separator) {\n return arrayJoin.call(toIObject(this), separator === undefined ? ',' : separator);\n }\n});\n\n},{\"105\":105,\"117\":117,\"33\":33,\"47\":47}],143:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar toIObject = _dereq_(117);\nvar toInteger = _dereq_(116);\nvar toLength = _dereq_(118);\nvar $native = [].lastIndexOf;\nvar NEGATIVE_ZERO = !!$native && 1 / [1].lastIndexOf(1, -0) < 0;\n\n$export($export.P + $export.F * (NEGATIVE_ZERO || !_dereq_(105)($native)), 'Array', {\n // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex])\n lastIndexOf: function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) {\n // convert -0 to +0\n if (NEGATIVE_ZERO) return $native.apply(this, arguments) || 0;\n var O = toIObject(this);\n var length = toLength(O.length);\n var index = length - 1;\n if (arguments.length > 1) index = Math.min(index, toInteger(arguments[1]));\n if (index < 0) index = length + index;\n for (;index >= 0; index--) if (index in O) if (O[index] === searchElement) return index || 0;\n return -1;\n }\n});\n\n},{\"105\":105,\"116\":116,\"117\":117,\"118\":118,\"33\":33}],144:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar $map = _dereq_(12)(1);\n\n$export($export.P + $export.F * !_dereq_(105)([].map, true), 'Array', {\n // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments[1]);\n }\n});\n\n},{\"105\":105,\"12\":12,\"33\":33}],145:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar createProperty = _dereq_(24);\n\n// WebKit Array.of isn't generic\n$export($export.S + $export.F * _dereq_(35)(function () {\n function F() { /* empty */ }\n return !(Array.of.call(F) instanceof F);\n}), 'Array', {\n // 22.1.2.3 Array.of( ...items)\n of: function of(/* ...args */) {\n var index = 0;\n var aLen = arguments.length;\n var result = new (typeof this == 'function' ? this : Array)(aLen);\n while (aLen > index) createProperty(result, index, arguments[index++]);\n result.length = aLen;\n return result;\n }\n});\n\n},{\"24\":24,\"33\":33,\"35\":35}],146:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar $reduce = _dereq_(13);\n\n$export($export.P + $export.F * !_dereq_(105)([].reduceRight, true), 'Array', {\n // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue])\n reduceRight: function reduceRight(callbackfn /* , initialValue */) {\n return $reduce(this, callbackfn, arguments.length, arguments[1], true);\n }\n});\n\n},{\"105\":105,\"13\":13,\"33\":33}],147:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar $reduce = _dereq_(13);\n\n$export($export.P + $export.F * !_dereq_(105)([].reduce, true), 'Array', {\n // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue])\n reduce: function reduce(callbackfn /* , initialValue */) {\n return $reduce(this, callbackfn, arguments.length, arguments[1], false);\n }\n});\n\n},{\"105\":105,\"13\":13,\"33\":33}],148:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar html = _dereq_(43);\nvar cof = _dereq_(18);\nvar toAbsoluteIndex = _dereq_(114);\nvar toLength = _dereq_(118);\nvar arraySlice = [].slice;\n\n// fallback for not array-like ES3 strings and DOM objects\n$export($export.P + $export.F * _dereq_(35)(function () {\n if (html) arraySlice.call(html);\n}), 'Array', {\n slice: function slice(begin, end) {\n var len = toLength(this.length);\n var klass = cof(this);\n end = end === undefined ? len : end;\n if (klass == 'Array') return arraySlice.call(this, begin, end);\n var start = toAbsoluteIndex(begin, len);\n var upTo = toAbsoluteIndex(end, len);\n var size = toLength(upTo - start);\n var cloned = Array(size);\n var i = 0;\n for (; i < size; i++) cloned[i] = klass == 'String'\n ? this.charAt(start + i)\n : this[start + i];\n return cloned;\n }\n});\n\n},{\"114\":114,\"118\":118,\"18\":18,\"33\":33,\"35\":35,\"43\":43}],149:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar $some = _dereq_(12)(3);\n\n$export($export.P + $export.F * !_dereq_(105)([].some, true), 'Array', {\n // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg])\n some: function some(callbackfn /* , thisArg */) {\n return $some(this, callbackfn, arguments[1]);\n }\n});\n\n},{\"105\":105,\"12\":12,\"33\":33}],150:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar aFunction = _dereq_(3);\nvar toObject = _dereq_(119);\nvar fails = _dereq_(35);\nvar $sort = [].sort;\nvar test = [1, 2, 3];\n\n$export($export.P + $export.F * (fails(function () {\n // IE8-\n test.sort(undefined);\n}) || !fails(function () {\n // V8 bug\n test.sort(null);\n // Old WebKit\n}) || !_dereq_(105)($sort)), 'Array', {\n // 22.1.3.25 Array.prototype.sort(comparefn)\n sort: function sort(comparefn) {\n return comparefn === undefined\n ? $sort.call(toObject(this))\n : $sort.call(toObject(this), aFunction(comparefn));\n }\n});\n\n},{\"105\":105,\"119\":119,\"3\":3,\"33\":33,\"35\":35}],151:[function(_dereq_,module,exports){\n_dereq_(100)('Array');\n\n},{\"100\":100}],152:[function(_dereq_,module,exports){\n// 20.3.3.1 / 15.9.4.4 Date.now()\nvar $export = _dereq_(33);\n\n$export($export.S, 'Date', { now: function () { return new Date().getTime(); } });\n\n},{\"33\":33}],153:[function(_dereq_,module,exports){\n// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()\nvar $export = _dereq_(33);\nvar toISOString = _dereq_(26);\n\n// PhantomJS / old WebKit has a broken implementations\n$export($export.P + $export.F * (Date.prototype.toISOString !== toISOString), 'Date', {\n toISOString: toISOString\n});\n\n},{\"26\":26,\"33\":33}],154:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar toObject = _dereq_(119);\nvar toPrimitive = _dereq_(120);\n\n$export($export.P + $export.F * _dereq_(35)(function () {\n return new Date(NaN).toJSON() !== null\n || Date.prototype.toJSON.call({ toISOString: function () { return 1; } }) !== 1;\n}), 'Date', {\n // eslint-disable-next-line no-unused-vars\n toJSON: function toJSON(key) {\n var O = toObject(this);\n var pv = toPrimitive(O);\n return typeof pv == 'number' && !isFinite(pv) ? null : O.toISOString();\n }\n});\n\n},{\"119\":119,\"120\":120,\"33\":33,\"35\":35}],155:[function(_dereq_,module,exports){\nvar TO_PRIMITIVE = _dereq_(128)('toPrimitive');\nvar proto = Date.prototype;\n\nif (!(TO_PRIMITIVE in proto)) _dereq_(42)(proto, TO_PRIMITIVE, _dereq_(27));\n\n},{\"128\":128,\"27\":27,\"42\":42}],156:[function(_dereq_,module,exports){\nvar DateProto = Date.prototype;\nvar INVALID_DATE = 'Invalid Date';\nvar TO_STRING = 'toString';\nvar $toString = DateProto[TO_STRING];\nvar getTime = DateProto.getTime;\nif (new Date(NaN) + '' != INVALID_DATE) {\n _dereq_(94)(DateProto, TO_STRING, function toString() {\n var value = getTime.call(this);\n // eslint-disable-next-line no-self-compare\n return value === value ? $toString.call(this) : INVALID_DATE;\n });\n}\n\n},{\"94\":94}],157:[function(_dereq_,module,exports){\n// 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...)\nvar $export = _dereq_(33);\n\n$export($export.P, 'Function', { bind: _dereq_(16) });\n\n},{\"16\":16,\"33\":33}],158:[function(_dereq_,module,exports){\n'use strict';\nvar isObject = _dereq_(51);\nvar getPrototypeOf = _dereq_(79);\nvar HAS_INSTANCE = _dereq_(128)('hasInstance');\nvar FunctionProto = Function.prototype;\n// 19.2.3.6 Function.prototype[@@hasInstance](V)\nif (!(HAS_INSTANCE in FunctionProto)) _dereq_(72).f(FunctionProto, HAS_INSTANCE, { value: function (O) {\n if (typeof this != 'function' || !isObject(O)) return false;\n if (!isObject(this.prototype)) return O instanceof this;\n // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:\n while (O = getPrototypeOf(O)) if (this.prototype === O) return true;\n return false;\n} });\n\n},{\"128\":128,\"51\":51,\"72\":72,\"79\":79}],159:[function(_dereq_,module,exports){\nvar dP = _dereq_(72).f;\nvar FProto = Function.prototype;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// 19.2.4.2 name\nNAME in FProto || _dereq_(29) && dP(FProto, NAME, {\n configurable: true,\n get: function () {\n try {\n return ('' + this).match(nameRE)[1];\n } catch (e) {\n return '';\n }\n }\n});\n\n},{\"29\":29,\"72\":72}],160:[function(_dereq_,module,exports){\n'use strict';\nvar strong = _dereq_(19);\nvar validate = _dereq_(125);\nvar MAP = 'Map';\n\n// 23.1 Map Objects\nmodule.exports = _dereq_(22)(MAP, function (get) {\n return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.1.3.6 Map.prototype.get(key)\n get: function get(key) {\n var entry = strong.getEntry(validate(this, MAP), key);\n return entry && entry.v;\n },\n // 23.1.3.9 Map.prototype.set(key, value)\n set: function set(key, value) {\n return strong.def(validate(this, MAP), key === 0 ? 0 : key, value);\n }\n}, strong, true);\n\n},{\"125\":125,\"19\":19,\"22\":22}],161:[function(_dereq_,module,exports){\n// 20.2.2.3 Math.acosh(x)\nvar $export = _dereq_(33);\nvar log1p = _dereq_(63);\nvar sqrt = Math.sqrt;\nvar $acosh = Math.acosh;\n\n$export($export.S + $export.F * !($acosh\n // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509\n && Math.floor($acosh(Number.MAX_VALUE)) == 710\n // Tor Browser bug: Math.acosh(Infinity) -> NaN\n && $acosh(Infinity) == Infinity\n), 'Math', {\n acosh: function acosh(x) {\n return (x = +x) < 1 ? NaN : x > 94906265.62425156\n ? Math.log(x) + Math.LN2\n : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1));\n }\n});\n\n},{\"33\":33,\"63\":63}],162:[function(_dereq_,module,exports){\n// 20.2.2.5 Math.asinh(x)\nvar $export = _dereq_(33);\nvar $asinh = Math.asinh;\n\nfunction asinh(x) {\n return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1));\n}\n\n// Tor Browser bug: Math.asinh(0) -> -0\n$export($export.S + $export.F * !($asinh && 1 / $asinh(0) > 0), 'Math', { asinh: asinh });\n\n},{\"33\":33}],163:[function(_dereq_,module,exports){\n// 20.2.2.7 Math.atanh(x)\nvar $export = _dereq_(33);\nvar $atanh = Math.atanh;\n\n// Tor Browser bug: Math.atanh(-0) -> 0\n$export($export.S + $export.F * !($atanh && 1 / $atanh(-0) < 0), 'Math', {\n atanh: function atanh(x) {\n return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2;\n }\n});\n\n},{\"33\":33}],164:[function(_dereq_,module,exports){\n// 20.2.2.9 Math.cbrt(x)\nvar $export = _dereq_(33);\nvar sign = _dereq_(65);\n\n$export($export.S, 'Math', {\n cbrt: function cbrt(x) {\n return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3);\n }\n});\n\n},{\"33\":33,\"65\":65}],165:[function(_dereq_,module,exports){\n// 20.2.2.11 Math.clz32(x)\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', {\n clz32: function clz32(x) {\n return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32;\n }\n});\n\n},{\"33\":33}],166:[function(_dereq_,module,exports){\n// 20.2.2.12 Math.cosh(x)\nvar $export = _dereq_(33);\nvar exp = Math.exp;\n\n$export($export.S, 'Math', {\n cosh: function cosh(x) {\n return (exp(x = +x) + exp(-x)) / 2;\n }\n});\n\n},{\"33\":33}],167:[function(_dereq_,module,exports){\n// 20.2.2.14 Math.expm1(x)\nvar $export = _dereq_(33);\nvar $expm1 = _dereq_(61);\n\n$export($export.S + $export.F * ($expm1 != Math.expm1), 'Math', { expm1: $expm1 });\n\n},{\"33\":33,\"61\":61}],168:[function(_dereq_,module,exports){\n// 20.2.2.16 Math.fround(x)\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', { fround: _dereq_(62) });\n\n},{\"33\":33,\"62\":62}],169:[function(_dereq_,module,exports){\n// 20.2.2.17 Math.hypot([value1[, value2[, … ]]])\nvar $export = _dereq_(33);\nvar abs = Math.abs;\n\n$export($export.S, 'Math', {\n hypot: function hypot(value1, value2) { // eslint-disable-line no-unused-vars\n var sum = 0;\n var i = 0;\n var aLen = arguments.length;\n var larg = 0;\n var arg, div;\n while (i < aLen) {\n arg = abs(arguments[i++]);\n if (larg < arg) {\n div = larg / arg;\n sum = sum * div * div + 1;\n larg = arg;\n } else if (arg > 0) {\n div = arg / larg;\n sum += div * div;\n } else sum += arg;\n }\n return larg === Infinity ? Infinity : larg * Math.sqrt(sum);\n }\n});\n\n},{\"33\":33}],170:[function(_dereq_,module,exports){\n// 20.2.2.18 Math.imul(x, y)\nvar $export = _dereq_(33);\nvar $imul = Math.imul;\n\n// some WebKit versions fails with big numbers, some has wrong arity\n$export($export.S + $export.F * _dereq_(35)(function () {\n return $imul(0xffffffff, 5) != -5 || $imul.length != 2;\n}), 'Math', {\n imul: function imul(x, y) {\n var UINT16 = 0xffff;\n var xn = +x;\n var yn = +y;\n var xl = UINT16 & xn;\n var yl = UINT16 & yn;\n return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0);\n }\n});\n\n},{\"33\":33,\"35\":35}],171:[function(_dereq_,module,exports){\n// 20.2.2.21 Math.log10(x)\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', {\n log10: function log10(x) {\n return Math.log(x) * Math.LOG10E;\n }\n});\n\n},{\"33\":33}],172:[function(_dereq_,module,exports){\n// 20.2.2.20 Math.log1p(x)\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', { log1p: _dereq_(63) });\n\n},{\"33\":33,\"63\":63}],173:[function(_dereq_,module,exports){\n// 20.2.2.22 Math.log2(x)\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', {\n log2: function log2(x) {\n return Math.log(x) / Math.LN2;\n }\n});\n\n},{\"33\":33}],174:[function(_dereq_,module,exports){\n// 20.2.2.28 Math.sign(x)\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', { sign: _dereq_(65) });\n\n},{\"33\":33,\"65\":65}],175:[function(_dereq_,module,exports){\n// 20.2.2.30 Math.sinh(x)\nvar $export = _dereq_(33);\nvar expm1 = _dereq_(61);\nvar exp = Math.exp;\n\n// V8 near Chromium 38 has a problem with very small numbers\n$export($export.S + $export.F * _dereq_(35)(function () {\n return !Math.sinh(-2e-17) != -2e-17;\n}), 'Math', {\n sinh: function sinh(x) {\n return Math.abs(x = +x) < 1\n ? (expm1(x) - expm1(-x)) / 2\n : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2);\n }\n});\n\n},{\"33\":33,\"35\":35,\"61\":61}],176:[function(_dereq_,module,exports){\n// 20.2.2.33 Math.tanh(x)\nvar $export = _dereq_(33);\nvar expm1 = _dereq_(61);\nvar exp = Math.exp;\n\n$export($export.S, 'Math', {\n tanh: function tanh(x) {\n var a = expm1(x = +x);\n var b = expm1(-x);\n return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x));\n }\n});\n\n},{\"33\":33,\"61\":61}],177:[function(_dereq_,module,exports){\n// 20.2.2.34 Math.trunc(x)\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', {\n trunc: function trunc(it) {\n return (it > 0 ? Math.floor : Math.ceil)(it);\n }\n});\n\n},{\"33\":33}],178:[function(_dereq_,module,exports){\n'use strict';\nvar global = _dereq_(40);\nvar has = _dereq_(41);\nvar cof = _dereq_(18);\nvar inheritIfRequired = _dereq_(45);\nvar toPrimitive = _dereq_(120);\nvar fails = _dereq_(35);\nvar gOPN = _dereq_(77).f;\nvar gOPD = _dereq_(75).f;\nvar dP = _dereq_(72).f;\nvar $trim = _dereq_(111).trim;\nvar NUMBER = 'Number';\nvar $Number = global[NUMBER];\nvar Base = $Number;\nvar proto = $Number.prototype;\n// Opera ~12 has broken Object#toString\nvar BROKEN_COF = cof(_dereq_(71)(proto)) == NUMBER;\nvar TRIM = 'trim' in String.prototype;\n\n// 7.1.3 ToNumber(argument)\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n if (typeof it == 'string' && it.length > 2) {\n it = TRIM ? it.trim() : $trim(it, 3);\n var first = it.charCodeAt(0);\n var third, radix, maxCode;\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i\n default: return +it;\n }\n for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {\n code = digits.charCodeAt(i);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\nif (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {\n $Number = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var that = this;\n return that instanceof $Number\n // check on 1..constructor(foo) case\n && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)\n ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);\n };\n for (var keys = _dereq_(29) ? gOPN(Base) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES6 (in case, if modules with ES6 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(Base, key = keys[j]) && !has($Number, key)) {\n dP($Number, key, gOPD(Base, key));\n }\n }\n $Number.prototype = proto;\n proto.constructor = $Number;\n _dereq_(94)(global, NUMBER, $Number);\n}\n\n},{\"111\":111,\"120\":120,\"18\":18,\"29\":29,\"35\":35,\"40\":40,\"41\":41,\"45\":45,\"71\":71,\"72\":72,\"75\":75,\"77\":77,\"94\":94}],179:[function(_dereq_,module,exports){\n// 20.1.2.1 Number.EPSILON\nvar $export = _dereq_(33);\n\n$export($export.S, 'Number', { EPSILON: Math.pow(2, -52) });\n\n},{\"33\":33}],180:[function(_dereq_,module,exports){\n// 20.1.2.2 Number.isFinite(number)\nvar $export = _dereq_(33);\nvar _isFinite = _dereq_(40).isFinite;\n\n$export($export.S, 'Number', {\n isFinite: function isFinite(it) {\n return typeof it == 'number' && _isFinite(it);\n }\n});\n\n},{\"33\":33,\"40\":40}],181:[function(_dereq_,module,exports){\n// 20.1.2.3 Number.isInteger(number)\nvar $export = _dereq_(33);\n\n$export($export.S, 'Number', { isInteger: _dereq_(50) });\n\n},{\"33\":33,\"50\":50}],182:[function(_dereq_,module,exports){\n// 20.1.2.4 Number.isNaN(number)\nvar $export = _dereq_(33);\n\n$export($export.S, 'Number', {\n isNaN: function isNaN(number) {\n // eslint-disable-next-line no-self-compare\n return number != number;\n }\n});\n\n},{\"33\":33}],183:[function(_dereq_,module,exports){\n// 20.1.2.5 Number.isSafeInteger(number)\nvar $export = _dereq_(33);\nvar isInteger = _dereq_(50);\nvar abs = Math.abs;\n\n$export($export.S, 'Number', {\n isSafeInteger: function isSafeInteger(number) {\n return isInteger(number) && abs(number) <= 0x1fffffffffffff;\n }\n});\n\n},{\"33\":33,\"50\":50}],184:[function(_dereq_,module,exports){\n// 20.1.2.6 Number.MAX_SAFE_INTEGER\nvar $export = _dereq_(33);\n\n$export($export.S, 'Number', { MAX_SAFE_INTEGER: 0x1fffffffffffff });\n\n},{\"33\":33}],185:[function(_dereq_,module,exports){\n// 20.1.2.10 Number.MIN_SAFE_INTEGER\nvar $export = _dereq_(33);\n\n$export($export.S, 'Number', { MIN_SAFE_INTEGER: -0x1fffffffffffff });\n\n},{\"33\":33}],186:[function(_dereq_,module,exports){\nvar $export = _dereq_(33);\nvar $parseFloat = _dereq_(86);\n// 20.1.2.12 Number.parseFloat(string)\n$export($export.S + $export.F * (Number.parseFloat != $parseFloat), 'Number', { parseFloat: $parseFloat });\n\n},{\"33\":33,\"86\":86}],187:[function(_dereq_,module,exports){\nvar $export = _dereq_(33);\nvar $parseInt = _dereq_(87);\n// 20.1.2.13 Number.parseInt(string, radix)\n$export($export.S + $export.F * (Number.parseInt != $parseInt), 'Number', { parseInt: $parseInt });\n\n},{\"33\":33,\"87\":87}],188:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar toInteger = _dereq_(116);\nvar aNumberValue = _dereq_(4);\nvar repeat = _dereq_(110);\nvar $toFixed = 1.0.toFixed;\nvar floor = Math.floor;\nvar data = [0, 0, 0, 0, 0, 0];\nvar ERROR = 'Number.toFixed: incorrect invocation!';\nvar ZERO = '0';\n\nvar multiply = function (n, c) {\n var i = -1;\n var c2 = c;\n while (++i < 6) {\n c2 += n * data[i];\n data[i] = c2 % 1e7;\n c2 = floor(c2 / 1e7);\n }\n};\nvar divide = function (n) {\n var i = 6;\n var c = 0;\n while (--i >= 0) {\n c += data[i];\n data[i] = floor(c / n);\n c = (c % n) * 1e7;\n }\n};\nvar numToString = function () {\n var i = 6;\n var s = '';\n while (--i >= 0) {\n if (s !== '' || i === 0 || data[i] !== 0) {\n var t = String(data[i]);\n s = s === '' ? t : s + repeat.call(ZERO, 7 - t.length) + t;\n }\n } return s;\n};\nvar pow = function (x, n, acc) {\n return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc);\n};\nvar log = function (x) {\n var n = 0;\n var x2 = x;\n while (x2 >= 4096) {\n n += 12;\n x2 /= 4096;\n }\n while (x2 >= 2) {\n n += 1;\n x2 /= 2;\n } return n;\n};\n\n$export($export.P + $export.F * (!!$toFixed && (\n 0.00008.toFixed(3) !== '0.000' ||\n 0.9.toFixed(0) !== '1' ||\n 1.255.toFixed(2) !== '1.25' ||\n 1000000000000000128.0.toFixed(0) !== '1000000000000000128'\n) || !_dereq_(35)(function () {\n // V8 ~ Android 4.3-\n $toFixed.call({});\n})), 'Number', {\n toFixed: function toFixed(fractionDigits) {\n var x = aNumberValue(this, ERROR);\n var f = toInteger(fractionDigits);\n var s = '';\n var m = ZERO;\n var e, z, j, k;\n if (f < 0 || f > 20) throw RangeError(ERROR);\n // eslint-disable-next-line no-self-compare\n if (x != x) return 'NaN';\n if (x <= -1e21 || x >= 1e21) return String(x);\n if (x < 0) {\n s = '-';\n x = -x;\n }\n if (x > 1e-21) {\n e = log(x * pow(2, 69, 1)) - 69;\n z = e < 0 ? x * pow(2, -e, 1) : x / pow(2, e, 1);\n z *= 0x10000000000000;\n e = 52 - e;\n if (e > 0) {\n multiply(0, z);\n j = f;\n while (j >= 7) {\n multiply(1e7, 0);\n j -= 7;\n }\n multiply(pow(10, j, 1), 0);\n j = e - 1;\n while (j >= 23) {\n divide(1 << 23);\n j -= 23;\n }\n divide(1 << j);\n multiply(1, 1);\n divide(2);\n m = numToString();\n } else {\n multiply(0, z);\n multiply(1 << -e, 0);\n m = numToString() + repeat.call(ZERO, f);\n }\n }\n if (f > 0) {\n k = m.length;\n m = s + (k <= f ? '0.' + repeat.call(ZERO, f - k) + m : m.slice(0, k - f) + '.' + m.slice(k - f));\n } else {\n m = s + m;\n } return m;\n }\n});\n\n},{\"110\":110,\"116\":116,\"33\":33,\"35\":35,\"4\":4}],189:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar $fails = _dereq_(35);\nvar aNumberValue = _dereq_(4);\nvar $toPrecision = 1.0.toPrecision;\n\n$export($export.P + $export.F * ($fails(function () {\n // IE7-\n return $toPrecision.call(1, undefined) !== '1';\n}) || !$fails(function () {\n // V8 ~ Android 4.3-\n $toPrecision.call({});\n})), 'Number', {\n toPrecision: function toPrecision(precision) {\n var that = aNumberValue(this, 'Number#toPrecision: incorrect invocation!');\n return precision === undefined ? $toPrecision.call(that) : $toPrecision.call(that, precision);\n }\n});\n\n},{\"33\":33,\"35\":35,\"4\":4}],190:[function(_dereq_,module,exports){\n// 19.1.3.1 Object.assign(target, source)\nvar $export = _dereq_(33);\n\n$export($export.S + $export.F, 'Object', { assign: _dereq_(70) });\n\n},{\"33\":33,\"70\":70}],191:[function(_dereq_,module,exports){\nvar $export = _dereq_(33);\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\n$export($export.S, 'Object', { create: _dereq_(71) });\n\n},{\"33\":33,\"71\":71}],192:[function(_dereq_,module,exports){\nvar $export = _dereq_(33);\n// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)\n$export($export.S + $export.F * !_dereq_(29), 'Object', { defineProperties: _dereq_(73) });\n\n},{\"29\":29,\"33\":33,\"73\":73}],193:[function(_dereq_,module,exports){\nvar $export = _dereq_(33);\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !_dereq_(29), 'Object', { defineProperty: _dereq_(72).f });\n\n},{\"29\":29,\"33\":33,\"72\":72}],194:[function(_dereq_,module,exports){\n// 19.1.2.5 Object.freeze(O)\nvar isObject = _dereq_(51);\nvar meta = _dereq_(66).onFreeze;\n\n_dereq_(83)('freeze', function ($freeze) {\n return function freeze(it) {\n return $freeze && isObject(it) ? $freeze(meta(it)) : it;\n };\n});\n\n},{\"51\":51,\"66\":66,\"83\":83}],195:[function(_dereq_,module,exports){\n// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\nvar toIObject = _dereq_(117);\nvar $getOwnPropertyDescriptor = _dereq_(75).f;\n\n_dereq_(83)('getOwnPropertyDescriptor', function () {\n return function getOwnPropertyDescriptor(it, key) {\n return $getOwnPropertyDescriptor(toIObject(it), key);\n };\n});\n\n},{\"117\":117,\"75\":75,\"83\":83}],196:[function(_dereq_,module,exports){\n// 19.1.2.7 Object.getOwnPropertyNames(O)\n_dereq_(83)('getOwnPropertyNames', function () {\n return _dereq_(76).f;\n});\n\n},{\"76\":76,\"83\":83}],197:[function(_dereq_,module,exports){\n// 19.1.2.9 Object.getPrototypeOf(O)\nvar toObject = _dereq_(119);\nvar $getPrototypeOf = _dereq_(79);\n\n_dereq_(83)('getPrototypeOf', function () {\n return function getPrototypeOf(it) {\n return $getPrototypeOf(toObject(it));\n };\n});\n\n},{\"119\":119,\"79\":79,\"83\":83}],198:[function(_dereq_,module,exports){\n// 19.1.2.11 Object.isExtensible(O)\nvar isObject = _dereq_(51);\n\n_dereq_(83)('isExtensible', function ($isExtensible) {\n return function isExtensible(it) {\n return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false;\n };\n});\n\n},{\"51\":51,\"83\":83}],199:[function(_dereq_,module,exports){\n// 19.1.2.12 Object.isFrozen(O)\nvar isObject = _dereq_(51);\n\n_dereq_(83)('isFrozen', function ($isFrozen) {\n return function isFrozen(it) {\n return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true;\n };\n});\n\n},{\"51\":51,\"83\":83}],200:[function(_dereq_,module,exports){\n// 19.1.2.13 Object.isSealed(O)\nvar isObject = _dereq_(51);\n\n_dereq_(83)('isSealed', function ($isSealed) {\n return function isSealed(it) {\n return isObject(it) ? $isSealed ? $isSealed(it) : false : true;\n };\n});\n\n},{\"51\":51,\"83\":83}],201:[function(_dereq_,module,exports){\n// 19.1.3.10 Object.is(value1, value2)\nvar $export = _dereq_(33);\n$export($export.S, 'Object', { is: _dereq_(96) });\n\n},{\"33\":33,\"96\":96}],202:[function(_dereq_,module,exports){\n// 19.1.2.14 Object.keys(O)\nvar toObject = _dereq_(119);\nvar $keys = _dereq_(81);\n\n_dereq_(83)('keys', function () {\n return function keys(it) {\n return $keys(toObject(it));\n };\n});\n\n},{\"119\":119,\"81\":81,\"83\":83}],203:[function(_dereq_,module,exports){\n// 19.1.2.15 Object.preventExtensions(O)\nvar isObject = _dereq_(51);\nvar meta = _dereq_(66).onFreeze;\n\n_dereq_(83)('preventExtensions', function ($preventExtensions) {\n return function preventExtensions(it) {\n return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it;\n };\n});\n\n},{\"51\":51,\"66\":66,\"83\":83}],204:[function(_dereq_,module,exports){\n// 19.1.2.17 Object.seal(O)\nvar isObject = _dereq_(51);\nvar meta = _dereq_(66).onFreeze;\n\n_dereq_(83)('seal', function ($seal) {\n return function seal(it) {\n return $seal && isObject(it) ? $seal(meta(it)) : it;\n };\n});\n\n},{\"51\":51,\"66\":66,\"83\":83}],205:[function(_dereq_,module,exports){\n// 19.1.3.19 Object.setPrototypeOf(O, proto)\nvar $export = _dereq_(33);\n$export($export.S, 'Object', { setPrototypeOf: _dereq_(99).set });\n\n},{\"33\":33,\"99\":99}],206:[function(_dereq_,module,exports){\n'use strict';\n// 19.1.3.6 Object.prototype.toString()\nvar classof = _dereq_(17);\nvar test = {};\ntest[_dereq_(128)('toStringTag')] = 'z';\nif (test + '' != '[object z]') {\n _dereq_(94)(Object.prototype, 'toString', function toString() {\n return '[object ' + classof(this) + ']';\n }, true);\n}\n\n},{\"128\":128,\"17\":17,\"94\":94}],207:[function(_dereq_,module,exports){\nvar $export = _dereq_(33);\nvar $parseFloat = _dereq_(86);\n// 18.2.4 parseFloat(string)\n$export($export.G + $export.F * (parseFloat != $parseFloat), { parseFloat: $parseFloat });\n\n},{\"33\":33,\"86\":86}],208:[function(_dereq_,module,exports){\nvar $export = _dereq_(33);\nvar $parseInt = _dereq_(87);\n// 18.2.5 parseInt(string, radix)\n$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt });\n\n},{\"33\":33,\"87\":87}],209:[function(_dereq_,module,exports){\n'use strict';\nvar LIBRARY = _dereq_(60);\nvar global = _dereq_(40);\nvar ctx = _dereq_(25);\nvar classof = _dereq_(17);\nvar $export = _dereq_(33);\nvar isObject = _dereq_(51);\nvar aFunction = _dereq_(3);\nvar anInstance = _dereq_(6);\nvar forOf = _dereq_(39);\nvar speciesConstructor = _dereq_(104);\nvar task = _dereq_(113).set;\nvar microtask = _dereq_(68)();\nvar newPromiseCapabilityModule = _dereq_(69);\nvar perform = _dereq_(90);\nvar promiseResolve = _dereq_(91);\nvar PROMISE = 'Promise';\nvar TypeError = global.TypeError;\nvar process = global.process;\nvar $Promise = global[PROMISE];\nvar isNode = classof(process) == 'process';\nvar empty = function () { /* empty */ };\nvar Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;\nvar newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;\n\nvar USE_NATIVE = !!function () {\n try {\n // correct subclassing with @@species support\n var promise = $Promise.resolve(1);\n var FakePromise = (promise.constructor = {})[_dereq_(128)('species')] = function (exec) {\n exec(empty, empty);\n };\n // unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n return (isNode || typeof PromiseRejectionEvent == 'function') && promise.then(empty) instanceof FakePromise;\n } catch (e) { /* empty */ }\n}();\n\n// helpers\nvar sameConstructor = LIBRARY ? function (a, b) {\n // with library wrapper special case\n return a === b || a === $Promise && b === Wrapper;\n} : function (a, b) {\n return a === b;\n};\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\nvar notify = function (promise, isReject) {\n if (promise._n) return;\n promise._n = true;\n var chain = promise._c;\n microtask(function () {\n var value = promise._v;\n var ok = promise._s == 1;\n var i = 0;\n var run = function (reaction) {\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then;\n try {\n if (handler) {\n if (!ok) {\n if (promise._h == 2) onHandleUnhandled(promise);\n promise._h = 1;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value);\n if (domain) domain.exit();\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (e) {\n reject(e);\n }\n };\n while (chain.length > i) run(chain[i++]); // variable length - can't use forEach\n promise._c = [];\n promise._n = false;\n if (isReject && !promise._h) onUnhandled(promise);\n });\n};\nvar onUnhandled = function (promise) {\n task.call(global, function () {\n var value = promise._v;\n var unhandled = isUnhandled(promise);\n var result, handler, console;\n if (unhandled) {\n result = perform(function () {\n if (isNode) {\n process.emit('unhandledRejection', value, promise);\n } else if (handler = global.onunhandledrejection) {\n handler({ promise: promise, reason: value });\n } else if ((console = global.console) && console.error) {\n console.error('Unhandled promise rejection', value);\n }\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n promise._h = isNode || isUnhandled(promise) ? 2 : 1;\n } promise._a = undefined;\n if (unhandled && result.e) throw result.v;\n });\n};\nvar isUnhandled = function (promise) {\n if (promise._h == 1) return false;\n var chain = promise._a || promise._c;\n var i = 0;\n var reaction;\n while (chain.length > i) {\n reaction = chain[i++];\n if (reaction.fail || !isUnhandled(reaction.promise)) return false;\n } return true;\n};\nvar onHandleUnhandled = function (promise) {\n task.call(global, function () {\n var handler;\n if (isNode) {\n process.emit('rejectionHandled', promise);\n } else if (handler = global.onrejectionhandled) {\n handler({ promise: promise, reason: promise._v });\n }\n });\n};\nvar $reject = function (value) {\n var promise = this;\n if (promise._d) return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n promise._v = value;\n promise._s = 2;\n if (!promise._a) promise._a = promise._c.slice();\n notify(promise, true);\n};\nvar $resolve = function (value) {\n var promise = this;\n var then;\n if (promise._d) return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n try {\n if (promise === value) throw TypeError(\"Promise can't be resolved itself\");\n if (then = isThenable(value)) {\n microtask(function () {\n var wrapper = { _w: promise, _d: false }; // wrap\n try {\n then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));\n } catch (e) {\n $reject.call(wrapper, e);\n }\n });\n } else {\n promise._v = value;\n promise._s = 1;\n notify(promise, false);\n }\n } catch (e) {\n $reject.call({ _w: promise, _d: false }, e); // wrap\n }\n};\n\n// constructor polyfill\nif (!USE_NATIVE) {\n // 25.4.3.1 Promise(executor)\n $Promise = function Promise(executor) {\n anInstance(this, $Promise, PROMISE, '_h');\n aFunction(executor);\n Internal.call(this);\n try {\n executor(ctx($resolve, this, 1), ctx($reject, this, 1));\n } catch (err) {\n $reject.call(this, err);\n }\n };\n // eslint-disable-next-line no-unused-vars\n Internal = function Promise(executor) {\n this._c = []; // <- awaiting reactions\n this._a = undefined; // <- checked in isUnhandled reactions\n this._s = 0; // <- state\n this._d = false; // <- done\n this._v = undefined; // <- value\n this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled\n this._n = false; // <- notify\n };\n Internal.prototype = _dereq_(93)($Promise.prototype, {\n // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)\n then: function then(onFulfilled, onRejected) {\n var reaction = newPromiseCapability(speciesConstructor(this, $Promise));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = isNode ? process.domain : undefined;\n this._c.push(reaction);\n if (this._a) this._a.push(reaction);\n if (this._s) notify(this, false);\n return reaction.promise;\n },\n // 25.4.5.1 Promise.prototype.catch(onRejected)\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n this.promise = promise;\n this.resolve = ctx($resolve, promise, 1);\n this.reject = ctx($reject, promise, 1);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return sameConstructor($Promise, C)\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });\n_dereq_(101)($Promise, PROMISE);\n_dereq_(100)(PROMISE);\nWrapper = _dereq_(23)[PROMISE];\n\n// statics\n$export($export.S + $export.F * !USE_NATIVE, PROMISE, {\n // 25.4.4.5 Promise.reject(r)\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n var $$reject = capability.reject;\n $$reject(r);\n return capability.promise;\n }\n});\n$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {\n // 25.4.4.6 Promise.resolve(x)\n resolve: function resolve(x) {\n // instanceof instead of internal slot check because we should fix it without replacement native Promise core\n if (x instanceof $Promise && sameConstructor(x.constructor, this)) return x;\n return promiseResolve(this, x);\n }\n});\n$export($export.S + $export.F * !(USE_NATIVE && _dereq_(56)(function (iter) {\n $Promise.all(iter)['catch'](empty);\n})), PROMISE, {\n // 25.4.4.1 Promise.all(iterable)\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var values = [];\n var index = 0;\n var remaining = 1;\n forOf(iterable, false, function (promise) {\n var $index = index++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n C.resolve(promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[$index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.e) reject(result.v);\n return capability.promise;\n },\n // 25.4.4.4 Promise.race(iterable)\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var reject = capability.reject;\n var result = perform(function () {\n forOf(iterable, false, function (promise) {\n C.resolve(promise).then(capability.resolve, reject);\n });\n });\n if (result.e) reject(result.v);\n return capability.promise;\n }\n});\n\n},{\"100\":100,\"101\":101,\"104\":104,\"113\":113,\"128\":128,\"17\":17,\"23\":23,\"25\":25,\"3\":3,\"33\":33,\"39\":39,\"40\":40,\"51\":51,\"56\":56,\"6\":6,\"60\":60,\"68\":68,\"69\":69,\"90\":90,\"91\":91,\"93\":93}],210:[function(_dereq_,module,exports){\n// 26.1.1 Reflect.apply(target, thisArgument, argumentsList)\nvar $export = _dereq_(33);\nvar aFunction = _dereq_(3);\nvar anObject = _dereq_(7);\nvar rApply = (_dereq_(40).Reflect || {}).apply;\nvar fApply = Function.apply;\n// MS Edge argumentsList argument is optional\n$export($export.S + $export.F * !_dereq_(35)(function () {\n rApply(function () { /* empty */ });\n}), 'Reflect', {\n apply: function apply(target, thisArgument, argumentsList) {\n var T = aFunction(target);\n var L = anObject(argumentsList);\n return rApply ? rApply(T, thisArgument, L) : fApply.call(T, thisArgument, L);\n }\n});\n\n},{\"3\":3,\"33\":33,\"35\":35,\"40\":40,\"7\":7}],211:[function(_dereq_,module,exports){\n// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])\nvar $export = _dereq_(33);\nvar create = _dereq_(71);\nvar aFunction = _dereq_(3);\nvar anObject = _dereq_(7);\nvar isObject = _dereq_(51);\nvar fails = _dereq_(35);\nvar bind = _dereq_(16);\nvar rConstruct = (_dereq_(40).Reflect || {}).construct;\n\n// MS Edge supports only 2 arguments and argumentsList argument is optional\n// FF Nightly sets third argument as `new.target`, but does not create `this` from it\nvar NEW_TARGET_BUG = fails(function () {\n function F() { /* empty */ }\n return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);\n});\nvar ARGS_BUG = !fails(function () {\n rConstruct(function () { /* empty */ });\n});\n\n$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {\n construct: function construct(Target, args /* , newTarget */) {\n aFunction(Target);\n anObject(args);\n var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);\n if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);\n if (Target == newTarget) {\n // w/o altered newTarget, optimization for 0-4 arguments\n switch (args.length) {\n case 0: return new Target();\n case 1: return new Target(args[0]);\n case 2: return new Target(args[0], args[1]);\n case 3: return new Target(args[0], args[1], args[2]);\n case 4: return new Target(args[0], args[1], args[2], args[3]);\n }\n // w/o altered newTarget, lot of arguments case\n var $args = [null];\n $args.push.apply($args, args);\n return new (bind.apply(Target, $args))();\n }\n // with altered newTarget, not support built-in constructors\n var proto = newTarget.prototype;\n var instance = create(isObject(proto) ? proto : Object.prototype);\n var result = Function.apply.call(Target, instance, args);\n return isObject(result) ? result : instance;\n }\n});\n\n},{\"16\":16,\"3\":3,\"33\":33,\"35\":35,\"40\":40,\"51\":51,\"7\":7,\"71\":71}],212:[function(_dereq_,module,exports){\n// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)\nvar dP = _dereq_(72);\nvar $export = _dereq_(33);\nvar anObject = _dereq_(7);\nvar toPrimitive = _dereq_(120);\n\n// MS Edge has broken Reflect.defineProperty - throwing instead of returning false\n$export($export.S + $export.F * _dereq_(35)(function () {\n // eslint-disable-next-line no-undef\n Reflect.defineProperty(dP.f({}, 1, { value: 1 }), 1, { value: 2 });\n}), 'Reflect', {\n defineProperty: function defineProperty(target, propertyKey, attributes) {\n anObject(target);\n propertyKey = toPrimitive(propertyKey, true);\n anObject(attributes);\n try {\n dP.f(target, propertyKey, attributes);\n return true;\n } catch (e) {\n return false;\n }\n }\n});\n\n},{\"120\":120,\"33\":33,\"35\":35,\"7\":7,\"72\":72}],213:[function(_dereq_,module,exports){\n// 26.1.4 Reflect.deleteProperty(target, propertyKey)\nvar $export = _dereq_(33);\nvar gOPD = _dereq_(75).f;\nvar anObject = _dereq_(7);\n\n$export($export.S, 'Reflect', {\n deleteProperty: function deleteProperty(target, propertyKey) {\n var desc = gOPD(anObject(target), propertyKey);\n return desc && !desc.configurable ? false : delete target[propertyKey];\n }\n});\n\n},{\"33\":33,\"7\":7,\"75\":75}],214:[function(_dereq_,module,exports){\n'use strict';\n// 26.1.5 Reflect.enumerate(target)\nvar $export = _dereq_(33);\nvar anObject = _dereq_(7);\nvar Enumerate = function (iterated) {\n this._t = anObject(iterated); // target\n this._i = 0; // next index\n var keys = this._k = []; // keys\n var key;\n for (key in iterated) keys.push(key);\n};\n_dereq_(54)(Enumerate, 'Object', function () {\n var that = this;\n var keys = that._k;\n var key;\n do {\n if (that._i >= keys.length) return { value: undefined, done: true };\n } while (!((key = keys[that._i++]) in that._t));\n return { value: key, done: false };\n});\n\n$export($export.S, 'Reflect', {\n enumerate: function enumerate(target) {\n return new Enumerate(target);\n }\n});\n\n},{\"33\":33,\"54\":54,\"7\":7}],215:[function(_dereq_,module,exports){\n// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey)\nvar gOPD = _dereq_(75);\nvar $export = _dereq_(33);\nvar anObject = _dereq_(7);\n\n$export($export.S, 'Reflect', {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey) {\n return gOPD.f(anObject(target), propertyKey);\n }\n});\n\n},{\"33\":33,\"7\":7,\"75\":75}],216:[function(_dereq_,module,exports){\n// 26.1.8 Reflect.getPrototypeOf(target)\nvar $export = _dereq_(33);\nvar getProto = _dereq_(79);\nvar anObject = _dereq_(7);\n\n$export($export.S, 'Reflect', {\n getPrototypeOf: function getPrototypeOf(target) {\n return getProto(anObject(target));\n }\n});\n\n},{\"33\":33,\"7\":7,\"79\":79}],217:[function(_dereq_,module,exports){\n// 26.1.6 Reflect.get(target, propertyKey [, receiver])\nvar gOPD = _dereq_(75);\nvar getPrototypeOf = _dereq_(79);\nvar has = _dereq_(41);\nvar $export = _dereq_(33);\nvar isObject = _dereq_(51);\nvar anObject = _dereq_(7);\n\nfunction get(target, propertyKey /* , receiver */) {\n var receiver = arguments.length < 3 ? target : arguments[2];\n var desc, proto;\n if (anObject(target) === receiver) return target[propertyKey];\n if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')\n ? desc.value\n : desc.get !== undefined\n ? desc.get.call(receiver)\n : undefined;\n if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);\n}\n\n$export($export.S, 'Reflect', { get: get });\n\n},{\"33\":33,\"41\":41,\"51\":51,\"7\":7,\"75\":75,\"79\":79}],218:[function(_dereq_,module,exports){\n// 26.1.9 Reflect.has(target, propertyKey)\nvar $export = _dereq_(33);\n\n$export($export.S, 'Reflect', {\n has: function has(target, propertyKey) {\n return propertyKey in target;\n }\n});\n\n},{\"33\":33}],219:[function(_dereq_,module,exports){\n// 26.1.10 Reflect.isExtensible(target)\nvar $export = _dereq_(33);\nvar anObject = _dereq_(7);\nvar $isExtensible = Object.isExtensible;\n\n$export($export.S, 'Reflect', {\n isExtensible: function isExtensible(target) {\n anObject(target);\n return $isExtensible ? $isExtensible(target) : true;\n }\n});\n\n},{\"33\":33,\"7\":7}],220:[function(_dereq_,module,exports){\n// 26.1.11 Reflect.ownKeys(target)\nvar $export = _dereq_(33);\n\n$export($export.S, 'Reflect', { ownKeys: _dereq_(85) });\n\n},{\"33\":33,\"85\":85}],221:[function(_dereq_,module,exports){\n// 26.1.12 Reflect.preventExtensions(target)\nvar $export = _dereq_(33);\nvar anObject = _dereq_(7);\nvar $preventExtensions = Object.preventExtensions;\n\n$export($export.S, 'Reflect', {\n preventExtensions: function preventExtensions(target) {\n anObject(target);\n try {\n if ($preventExtensions) $preventExtensions(target);\n return true;\n } catch (e) {\n return false;\n }\n }\n});\n\n},{\"33\":33,\"7\":7}],222:[function(_dereq_,module,exports){\n// 26.1.14 Reflect.setPrototypeOf(target, proto)\nvar $export = _dereq_(33);\nvar setProto = _dereq_(99);\n\nif (setProto) $export($export.S, 'Reflect', {\n setPrototypeOf: function setPrototypeOf(target, proto) {\n setProto.check(target, proto);\n try {\n setProto.set(target, proto);\n return true;\n } catch (e) {\n return false;\n }\n }\n});\n\n},{\"33\":33,\"99\":99}],223:[function(_dereq_,module,exports){\n// 26.1.13 Reflect.set(target, propertyKey, V [, receiver])\nvar dP = _dereq_(72);\nvar gOPD = _dereq_(75);\nvar getPrototypeOf = _dereq_(79);\nvar has = _dereq_(41);\nvar $export = _dereq_(33);\nvar createDesc = _dereq_(92);\nvar anObject = _dereq_(7);\nvar isObject = _dereq_(51);\n\nfunction set(target, propertyKey, V /* , receiver */) {\n var receiver = arguments.length < 4 ? target : arguments[3];\n var ownDesc = gOPD.f(anObject(target), propertyKey);\n var existingDescriptor, proto;\n if (!ownDesc) {\n if (isObject(proto = getPrototypeOf(target))) {\n return set(proto, propertyKey, V, receiver);\n }\n ownDesc = createDesc(0);\n }\n if (has(ownDesc, 'value')) {\n if (ownDesc.writable === false || !isObject(receiver)) return false;\n existingDescriptor = gOPD.f(receiver, propertyKey) || createDesc(0);\n existingDescriptor.value = V;\n dP.f(receiver, propertyKey, existingDescriptor);\n return true;\n }\n return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true);\n}\n\n$export($export.S, 'Reflect', { set: set });\n\n},{\"33\":33,\"41\":41,\"51\":51,\"7\":7,\"72\":72,\"75\":75,\"79\":79,\"92\":92}],224:[function(_dereq_,module,exports){\nvar global = _dereq_(40);\nvar inheritIfRequired = _dereq_(45);\nvar dP = _dereq_(72).f;\nvar gOPN = _dereq_(77).f;\nvar isRegExp = _dereq_(52);\nvar $flags = _dereq_(37);\nvar $RegExp = global.RegExp;\nvar Base = $RegExp;\nvar proto = $RegExp.prototype;\nvar re1 = /a/g;\nvar re2 = /a/g;\n// \"new\" creates a new object, old webkit buggy here\nvar CORRECT_NEW = new $RegExp(re1) !== re1;\n\nif (_dereq_(29) && (!CORRECT_NEW || _dereq_(35)(function () {\n re2[_dereq_(128)('match')] = false;\n // RegExp constructor can alter flags and IsRegExp works correct with @@match\n return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';\n}))) {\n $RegExp = function RegExp(p, f) {\n var tiRE = this instanceof $RegExp;\n var piRE = isRegExp(p);\n var fiU = f === undefined;\n return !tiRE && piRE && p.constructor === $RegExp && fiU ? p\n : inheritIfRequired(CORRECT_NEW\n ? new Base(piRE && !fiU ? p.source : p, f)\n : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)\n , tiRE ? this : proto, $RegExp);\n };\n var proxy = function (key) {\n key in $RegExp || dP($RegExp, key, {\n configurable: true,\n get: function () { return Base[key]; },\n set: function (it) { Base[key] = it; }\n });\n };\n for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]);\n proto.constructor = $RegExp;\n $RegExp.prototype = proto;\n _dereq_(94)(global, 'RegExp', $RegExp);\n}\n\n_dereq_(100)('RegExp');\n\n},{\"100\":100,\"128\":128,\"29\":29,\"35\":35,\"37\":37,\"40\":40,\"45\":45,\"52\":52,\"72\":72,\"77\":77,\"94\":94}],225:[function(_dereq_,module,exports){\n// 21.2.5.3 get RegExp.prototype.flags()\nif (_dereq_(29) && /./g.flags != 'g') _dereq_(72).f(RegExp.prototype, 'flags', {\n configurable: true,\n get: _dereq_(37)\n});\n\n},{\"29\":29,\"37\":37,\"72\":72}],226:[function(_dereq_,module,exports){\n// @@match logic\n_dereq_(36)('match', 1, function (defined, MATCH, $match) {\n // 21.1.3.11 String.prototype.match(regexp)\n return [function match(regexp) {\n 'use strict';\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[MATCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n }, $match];\n});\n\n},{\"36\":36}],227:[function(_dereq_,module,exports){\n// @@replace logic\n_dereq_(36)('replace', 2, function (defined, REPLACE, $replace) {\n // 21.1.3.14 String.prototype.replace(searchValue, replaceValue)\n return [function replace(searchValue, replaceValue) {\n 'use strict';\n var O = defined(this);\n var fn = searchValue == undefined ? undefined : searchValue[REPLACE];\n return fn !== undefined\n ? fn.call(searchValue, O, replaceValue)\n : $replace.call(String(O), searchValue, replaceValue);\n }, $replace];\n});\n\n},{\"36\":36}],228:[function(_dereq_,module,exports){\n// @@search logic\n_dereq_(36)('search', 1, function (defined, SEARCH, $search) {\n // 21.1.3.15 String.prototype.search(regexp)\n return [function search(regexp) {\n 'use strict';\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[SEARCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));\n }, $search];\n});\n\n},{\"36\":36}],229:[function(_dereq_,module,exports){\n// @@split logic\n_dereq_(36)('split', 2, function (defined, SPLIT, $split) {\n 'use strict';\n var isRegExp = _dereq_(52);\n var _split = $split;\n var $push = [].push;\n var $SPLIT = 'split';\n var LENGTH = 'length';\n var LAST_INDEX = 'lastIndex';\n if (\n 'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||\n 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||\n 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||\n '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||\n '.'[$SPLIT](/()()/)[LENGTH] > 1 ||\n ''[$SPLIT](/.?/)[LENGTH]\n ) {\n var NPCG = /()??/.exec('')[1] === undefined; // nonparticipating capturing group\n // based on es5-shim implementation, need to rework it\n $split = function (separator, limit) {\n var string = String(this);\n if (separator === undefined && limit === 0) return [];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) return _split.call(string, separator, limit);\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n var splitLimit = limit === undefined ? 4294967295 : limit >>> 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var separator2, match, lastIndex, lastLength, i;\n // Doesn't need flags gy, but they don't hurt\n if (!NPCG) separator2 = new RegExp('^' + separatorCopy.source + '$(?!\\\\s)', flags);\n while (match = separatorCopy.exec(string)) {\n // `separatorCopy.lastIndex` is not reliable cross-browser\n lastIndex = match.index + match[0][LENGTH];\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n // Fix browsers whose `exec` methods don't consistently return `undefined` for NPCG\n // eslint-disable-next-line no-loop-func\n if (!NPCG && match[LENGTH] > 1) match[0].replace(separator2, function () {\n for (i = 1; i < arguments[LENGTH] - 2; i++) if (arguments[i] === undefined) match[i] = undefined;\n });\n if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));\n lastLength = match[0][LENGTH];\n lastLastIndex = lastIndex;\n if (output[LENGTH] >= splitLimit) break;\n }\n if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop\n }\n if (lastLastIndex === string[LENGTH]) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;\n };\n // Chakra, V8\n } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {\n $split = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : _split.call(this, separator, limit);\n };\n }\n // 21.1.3.17 String.prototype.split(separator, limit)\n return [function split(separator, limit) {\n var O = defined(this);\n var fn = separator == undefined ? undefined : separator[SPLIT];\n return fn !== undefined ? fn.call(separator, O, limit) : $split.call(String(O), separator, limit);\n }, $split];\n});\n\n},{\"36\":36,\"52\":52}],230:[function(_dereq_,module,exports){\n'use strict';\n_dereq_(225);\nvar anObject = _dereq_(7);\nvar $flags = _dereq_(37);\nvar DESCRIPTORS = _dereq_(29);\nvar TO_STRING = 'toString';\nvar $toString = /./[TO_STRING];\n\nvar define = function (fn) {\n _dereq_(94)(RegExp.prototype, TO_STRING, fn, true);\n};\n\n// 21.2.5.14 RegExp.prototype.toString()\nif (_dereq_(35)(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {\n define(function toString() {\n var R = anObject(this);\n return '/'.concat(R.source, '/',\n 'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);\n });\n// FF44- RegExp#toString has a wrong name\n} else if ($toString.name != TO_STRING) {\n define(function toString() {\n return $toString.call(this);\n });\n}\n\n},{\"225\":225,\"29\":29,\"35\":35,\"37\":37,\"7\":7,\"94\":94}],231:[function(_dereq_,module,exports){\n'use strict';\nvar strong = _dereq_(19);\nvar validate = _dereq_(125);\nvar SET = 'Set';\n\n// 23.2 Set Objects\nmodule.exports = _dereq_(22)(SET, function (get) {\n return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.2.3.1 Set.prototype.add(value)\n add: function add(value) {\n return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value);\n }\n}, strong);\n\n},{\"125\":125,\"19\":19,\"22\":22}],232:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.2 String.prototype.anchor(name)\n_dereq_(108)('anchor', function (createHTML) {\n return function anchor(name) {\n return createHTML(this, 'a', 'name', name);\n };\n});\n\n},{\"108\":108}],233:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.3 String.prototype.big()\n_dereq_(108)('big', function (createHTML) {\n return function big() {\n return createHTML(this, 'big', '', '');\n };\n});\n\n},{\"108\":108}],234:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.4 String.prototype.blink()\n_dereq_(108)('blink', function (createHTML) {\n return function blink() {\n return createHTML(this, 'blink', '', '');\n };\n});\n\n},{\"108\":108}],235:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.5 String.prototype.bold()\n_dereq_(108)('bold', function (createHTML) {\n return function bold() {\n return createHTML(this, 'b', '', '');\n };\n});\n\n},{\"108\":108}],236:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar $at = _dereq_(106)(false);\n$export($export.P, 'String', {\n // 21.1.3.3 String.prototype.codePointAt(pos)\n codePointAt: function codePointAt(pos) {\n return $at(this, pos);\n }\n});\n\n},{\"106\":106,\"33\":33}],237:[function(_dereq_,module,exports){\n// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])\n'use strict';\nvar $export = _dereq_(33);\nvar toLength = _dereq_(118);\nvar context = _dereq_(107);\nvar ENDS_WITH = 'endsWith';\nvar $endsWith = ''[ENDS_WITH];\n\n$export($export.P + $export.F * _dereq_(34)(ENDS_WITH), 'String', {\n endsWith: function endsWith(searchString /* , endPosition = @length */) {\n var that = context(this, searchString, ENDS_WITH);\n var endPosition = arguments.length > 1 ? arguments[1] : undefined;\n var len = toLength(that.length);\n var end = endPosition === undefined ? len : Math.min(toLength(endPosition), len);\n var search = String(searchString);\n return $endsWith\n ? $endsWith.call(that, search, end)\n : that.slice(end - search.length, end) === search;\n }\n});\n\n},{\"107\":107,\"118\":118,\"33\":33,\"34\":34}],238:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.6 String.prototype.fixed()\n_dereq_(108)('fixed', function (createHTML) {\n return function fixed() {\n return createHTML(this, 'tt', '', '');\n };\n});\n\n},{\"108\":108}],239:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.7 String.prototype.fontcolor(color)\n_dereq_(108)('fontcolor', function (createHTML) {\n return function fontcolor(color) {\n return createHTML(this, 'font', 'color', color);\n };\n});\n\n},{\"108\":108}],240:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.8 String.prototype.fontsize(size)\n_dereq_(108)('fontsize', function (createHTML) {\n return function fontsize(size) {\n return createHTML(this, 'font', 'size', size);\n };\n});\n\n},{\"108\":108}],241:[function(_dereq_,module,exports){\nvar $export = _dereq_(33);\nvar toAbsoluteIndex = _dereq_(114);\nvar fromCharCode = String.fromCharCode;\nvar $fromCodePoint = String.fromCodePoint;\n\n// length should be 1, old FF problem\n$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {\n // 21.1.2.2 String.fromCodePoint(...codePoints)\n fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars\n var res = [];\n var aLen = arguments.length;\n var i = 0;\n var code;\n while (aLen > i) {\n code = +arguments[i++];\n if (toAbsoluteIndex(code, 0x10ffff) !== code) throw RangeError(code + ' is not a valid code point');\n res.push(code < 0x10000\n ? fromCharCode(code)\n : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)\n );\n } return res.join('');\n }\n});\n\n},{\"114\":114,\"33\":33}],242:[function(_dereq_,module,exports){\n// 21.1.3.7 String.prototype.includes(searchString, position = 0)\n'use strict';\nvar $export = _dereq_(33);\nvar context = _dereq_(107);\nvar INCLUDES = 'includes';\n\n$export($export.P + $export.F * _dereq_(34)(INCLUDES), 'String', {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~context(this, searchString, INCLUDES)\n .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n},{\"107\":107,\"33\":33,\"34\":34}],243:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.9 String.prototype.italics()\n_dereq_(108)('italics', function (createHTML) {\n return function italics() {\n return createHTML(this, 'i', '', '');\n };\n});\n\n},{\"108\":108}],244:[function(_dereq_,module,exports){\n'use strict';\nvar $at = _dereq_(106)(true);\n\n// 21.1.3.27 String.prototype[@@iterator]()\n_dereq_(55)(String, 'String', function (iterated) {\n this._t = String(iterated); // target\n this._i = 0; // next index\n// 21.1.5.2.1 %StringIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var index = this._i;\n var point;\n if (index >= O.length) return { value: undefined, done: true };\n point = $at(O, index);\n this._i += point.length;\n return { value: point, done: false };\n});\n\n},{\"106\":106,\"55\":55}],245:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.10 String.prototype.link(url)\n_dereq_(108)('link', function (createHTML) {\n return function link(url) {\n return createHTML(this, 'a', 'href', url);\n };\n});\n\n},{\"108\":108}],246:[function(_dereq_,module,exports){\nvar $export = _dereq_(33);\nvar toIObject = _dereq_(117);\nvar toLength = _dereq_(118);\n\n$export($export.S, 'String', {\n // 21.1.2.4 String.raw(callSite, ...substitutions)\n raw: function raw(callSite) {\n var tpl = toIObject(callSite.raw);\n var len = toLength(tpl.length);\n var aLen = arguments.length;\n var res = [];\n var i = 0;\n while (len > i) {\n res.push(String(tpl[i++]));\n if (i < aLen) res.push(String(arguments[i]));\n } return res.join('');\n }\n});\n\n},{\"117\":117,\"118\":118,\"33\":33}],247:[function(_dereq_,module,exports){\nvar $export = _dereq_(33);\n\n$export($export.P, 'String', {\n // 21.1.3.13 String.prototype.repeat(count)\n repeat: _dereq_(110)\n});\n\n},{\"110\":110,\"33\":33}],248:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.11 String.prototype.small()\n_dereq_(108)('small', function (createHTML) {\n return function small() {\n return createHTML(this, 'small', '', '');\n };\n});\n\n},{\"108\":108}],249:[function(_dereq_,module,exports){\n// 21.1.3.18 String.prototype.startsWith(searchString [, position ])\n'use strict';\nvar $export = _dereq_(33);\nvar toLength = _dereq_(118);\nvar context = _dereq_(107);\nvar STARTS_WITH = 'startsWith';\nvar $startsWith = ''[STARTS_WITH];\n\n$export($export.P + $export.F * _dereq_(34)(STARTS_WITH), 'String', {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = context(this, searchString, STARTS_WITH);\n var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return $startsWith\n ? $startsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n\n},{\"107\":107,\"118\":118,\"33\":33,\"34\":34}],250:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.12 String.prototype.strike()\n_dereq_(108)('strike', function (createHTML) {\n return function strike() {\n return createHTML(this, 'strike', '', '');\n };\n});\n\n},{\"108\":108}],251:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.13 String.prototype.sub()\n_dereq_(108)('sub', function (createHTML) {\n return function sub() {\n return createHTML(this, 'sub', '', '');\n };\n});\n\n},{\"108\":108}],252:[function(_dereq_,module,exports){\n'use strict';\n// B.2.3.14 String.prototype.sup()\n_dereq_(108)('sup', function (createHTML) {\n return function sup() {\n return createHTML(this, 'sup', '', '');\n };\n});\n\n},{\"108\":108}],253:[function(_dereq_,module,exports){\n'use strict';\n// 21.1.3.25 String.prototype.trim()\n_dereq_(111)('trim', function ($trim) {\n return function trim() {\n return $trim(this, 3);\n };\n});\n\n},{\"111\":111}],254:[function(_dereq_,module,exports){\n'use strict';\n// ECMAScript 6 symbols shim\nvar global = _dereq_(40);\nvar has = _dereq_(41);\nvar DESCRIPTORS = _dereq_(29);\nvar $export = _dereq_(33);\nvar redefine = _dereq_(94);\nvar META = _dereq_(66).KEY;\nvar $fails = _dereq_(35);\nvar shared = _dereq_(103);\nvar setToStringTag = _dereq_(101);\nvar uid = _dereq_(124);\nvar wks = _dereq_(128);\nvar wksExt = _dereq_(127);\nvar wksDefine = _dereq_(126);\nvar keyOf = _dereq_(59);\nvar enumKeys = _dereq_(32);\nvar isArray = _dereq_(49);\nvar anObject = _dereq_(7);\nvar toIObject = _dereq_(117);\nvar toPrimitive = _dereq_(120);\nvar createDesc = _dereq_(92);\nvar _create = _dereq_(71);\nvar gOPNExt = _dereq_(76);\nvar $GOPD = _dereq_(75);\nvar $DP = _dereq_(72);\nvar $keys = _dereq_(81);\nvar gOPD = $GOPD.f;\nvar dP = $DP.f;\nvar gOPN = gOPNExt.f;\nvar $Symbol = global.Symbol;\nvar $JSON = global.JSON;\nvar _stringify = $JSON && $JSON.stringify;\nvar PROTOTYPE = 'prototype';\nvar HIDDEN = wks('_hidden');\nvar TO_PRIMITIVE = wks('toPrimitive');\nvar isEnum = {}.propertyIsEnumerable;\nvar SymbolRegistry = shared('symbol-registry');\nvar AllSymbols = shared('symbols');\nvar OPSymbols = shared('op-symbols');\nvar ObjectProto = Object[PROTOTYPE];\nvar USE_NATIVE = typeof $Symbol == 'function';\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDesc = DESCRIPTORS && $fails(function () {\n return _create(dP({}, 'a', {\n get: function () { return dP(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (it, key, D) {\n var protoDesc = gOPD(ObjectProto, key);\n if (protoDesc) delete ObjectProto[key];\n dP(it, key, D);\n if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);\n} : dP;\n\nvar wrap = function (tag) {\n var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);\n sym._k = tag;\n return sym;\n};\n\nvar isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return it instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(it, key, D) {\n if (it === ObjectProto) $defineProperty(OPSymbols, key, D);\n anObject(it);\n key = toPrimitive(key, true);\n anObject(D);\n if (has(AllSymbols, key)) {\n if (!D.enumerable) {\n if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));\n it[HIDDEN][key] = true;\n } else {\n if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;\n D = _create(D, { enumerable: createDesc(0, false) });\n } return setSymbolDesc(it, key, D);\n } return dP(it, key, D);\n};\nvar $defineProperties = function defineProperties(it, P) {\n anObject(it);\n var keys = enumKeys(P = toIObject(P));\n var i = 0;\n var l = keys.length;\n var key;\n while (l > i) $defineProperty(it, key = keys[i++], P[key]);\n return it;\n};\nvar $create = function create(it, P) {\n return P === undefined ? _create(it) : $defineProperties(_create(it), P);\n};\nvar $propertyIsEnumerable = function propertyIsEnumerable(key) {\n var E = isEnum.call(this, key = toPrimitive(key, true));\n if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;\n return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;\n};\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {\n it = toIObject(it);\n key = toPrimitive(key, true);\n if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;\n var D = gOPD(it, key);\n if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;\n return D;\n};\nvar $getOwnPropertyNames = function getOwnPropertyNames(it) {\n var names = gOPN(toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);\n } return result;\n};\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(it) {\n var IS_OP = it === ObjectProto;\n var names = gOPN(IS_OP ? OPSymbols : toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);\n } return result;\n};\n\n// 19.4.1.1 Symbol([description])\nif (!USE_NATIVE) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');\n var tag = uid(arguments.length > 0 ? arguments[0] : undefined);\n var $set = function (value) {\n if (this === ObjectProto) $set.call(OPSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDesc(this, tag, createDesc(1, value));\n };\n if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });\n return wrap(tag);\n };\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return this._k;\n });\n\n $GOPD.f = $getOwnPropertyDescriptor;\n $DP.f = $defineProperty;\n _dereq_(77).f = gOPNExt.f = $getOwnPropertyNames;\n _dereq_(82).f = $propertyIsEnumerable;\n _dereq_(78).f = $getOwnPropertySymbols;\n\n if (DESCRIPTORS && !_dereq_(60)) {\n redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);\n }\n\n wksExt.f = function (name) {\n return wrap(wks(name));\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });\n\nfor (var es6Symbols = (\n // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14\n 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'\n).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);\n\nfor (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);\n\n$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {\n // 19.4.2.1 Symbol.for(key)\n 'for': function (key) {\n return has(SymbolRegistry, key += '')\n ? SymbolRegistry[key]\n : SymbolRegistry[key] = $Symbol(key);\n },\n // 19.4.2.5 Symbol.keyFor(sym)\n keyFor: function keyFor(key) {\n if (isSymbol(key)) return keyOf(SymbolRegistry, key);\n throw TypeError(key + ' is not a symbol!');\n },\n useSetter: function () { setter = true; },\n useSimple: function () { setter = false; }\n});\n\n$export($export.S + $export.F * !USE_NATIVE, 'Object', {\n // 19.1.2.2 Object.create(O [, Properties])\n create: $create,\n // 19.1.2.4 Object.defineProperty(O, P, Attributes)\n defineProperty: $defineProperty,\n // 19.1.2.3 Object.defineProperties(O, Properties)\n defineProperties: $defineProperties,\n // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor,\n // 19.1.2.7 Object.getOwnPropertyNames(O)\n getOwnPropertyNames: $getOwnPropertyNames,\n // 19.1.2.8 Object.getOwnPropertySymbols(O)\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// 24.3.2 JSON.stringify(value [, replacer [, space]])\n$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {\n var S = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n // WebKit converts symbol values to JSON as null\n // V8 throws on boxed symbols\n return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';\n})), 'JSON', {\n stringify: function stringify(it) {\n if (it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n var args = [it];\n var i = 1;\n var replacer, $replacer;\n while (arguments.length > i) args.push(arguments[i++]);\n replacer = args[1];\n if (typeof replacer == 'function') $replacer = replacer;\n if ($replacer || !isArray(replacer)) replacer = function (key, value) {\n if ($replacer) value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return _stringify.apply($JSON, args);\n }\n});\n\n// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)\n$Symbol[PROTOTYPE][TO_PRIMITIVE] || _dereq_(42)($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n// 19.4.3.5 Symbol.prototype[@@toStringTag]\nsetToStringTag($Symbol, 'Symbol');\n// 20.2.1.9 Math[@@toStringTag]\nsetToStringTag(Math, 'Math', true);\n// 24.3.3 JSON[@@toStringTag]\nsetToStringTag(global.JSON, 'JSON', true);\n\n},{\"101\":101,\"103\":103,\"117\":117,\"120\":120,\"124\":124,\"126\":126,\"127\":127,\"128\":128,\"29\":29,\"32\":32,\"33\":33,\"35\":35,\"40\":40,\"41\":41,\"42\":42,\"49\":49,\"59\":59,\"60\":60,\"66\":66,\"7\":7,\"71\":71,\"72\":72,\"75\":75,\"76\":76,\"77\":77,\"78\":78,\"81\":81,\"82\":82,\"92\":92,\"94\":94}],255:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar $typed = _dereq_(123);\nvar buffer = _dereq_(122);\nvar anObject = _dereq_(7);\nvar toAbsoluteIndex = _dereq_(114);\nvar toLength = _dereq_(118);\nvar isObject = _dereq_(51);\nvar ArrayBuffer = _dereq_(40).ArrayBuffer;\nvar speciesConstructor = _dereq_(104);\nvar $ArrayBuffer = buffer.ArrayBuffer;\nvar $DataView = buffer.DataView;\nvar $isView = $typed.ABV && ArrayBuffer.isView;\nvar $slice = $ArrayBuffer.prototype.slice;\nvar VIEW = $typed.VIEW;\nvar ARRAY_BUFFER = 'ArrayBuffer';\n\n$export($export.G + $export.W + $export.F * (ArrayBuffer !== $ArrayBuffer), { ArrayBuffer: $ArrayBuffer });\n\n$export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, {\n // 24.1.3.1 ArrayBuffer.isView(arg)\n isView: function isView(it) {\n return $isView && $isView(it) || isObject(it) && VIEW in it;\n }\n});\n\n$export($export.P + $export.U + $export.F * _dereq_(35)(function () {\n return !new $ArrayBuffer(2).slice(1, undefined).byteLength;\n}), ARRAY_BUFFER, {\n // 24.1.4.3 ArrayBuffer.prototype.slice(start, end)\n slice: function slice(start, end) {\n if ($slice !== undefined && end === undefined) return $slice.call(anObject(this), start); // FF fix\n var len = anObject(this).byteLength;\n var first = toAbsoluteIndex(start, len);\n var final = toAbsoluteIndex(end === undefined ? len : end, len);\n var result = new (speciesConstructor(this, $ArrayBuffer))(toLength(final - first));\n var viewS = new $DataView(this);\n var viewT = new $DataView(result);\n var index = 0;\n while (first < final) {\n viewT.setUint8(index++, viewS.getUint8(first++));\n } return result;\n }\n});\n\n_dereq_(100)(ARRAY_BUFFER);\n\n},{\"100\":100,\"104\":104,\"114\":114,\"118\":118,\"122\":122,\"123\":123,\"33\":33,\"35\":35,\"40\":40,\"51\":51,\"7\":7}],256:[function(_dereq_,module,exports){\nvar $export = _dereq_(33);\n$export($export.G + $export.W + $export.F * !_dereq_(123).ABV, {\n DataView: _dereq_(122).DataView\n});\n\n},{\"122\":122,\"123\":123,\"33\":33}],257:[function(_dereq_,module,exports){\n_dereq_(121)('Float32', 4, function (init) {\n return function Float32Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n\n},{\"121\":121}],258:[function(_dereq_,module,exports){\n_dereq_(121)('Float64', 8, function (init) {\n return function Float64Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n\n},{\"121\":121}],259:[function(_dereq_,module,exports){\n_dereq_(121)('Int16', 2, function (init) {\n return function Int16Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n\n},{\"121\":121}],260:[function(_dereq_,module,exports){\n_dereq_(121)('Int32', 4, function (init) {\n return function Int32Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n\n},{\"121\":121}],261:[function(_dereq_,module,exports){\n_dereq_(121)('Int8', 1, function (init) {\n return function Int8Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n\n},{\"121\":121}],262:[function(_dereq_,module,exports){\n_dereq_(121)('Uint16', 2, function (init) {\n return function Uint16Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n\n},{\"121\":121}],263:[function(_dereq_,module,exports){\n_dereq_(121)('Uint32', 4, function (init) {\n return function Uint32Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n\n},{\"121\":121}],264:[function(_dereq_,module,exports){\n_dereq_(121)('Uint8', 1, function (init) {\n return function Uint8Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n\n},{\"121\":121}],265:[function(_dereq_,module,exports){\n_dereq_(121)('Uint8', 1, function (init) {\n return function Uint8ClampedArray(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n}, true);\n\n},{\"121\":121}],266:[function(_dereq_,module,exports){\n'use strict';\nvar each = _dereq_(12)(0);\nvar redefine = _dereq_(94);\nvar meta = _dereq_(66);\nvar assign = _dereq_(70);\nvar weak = _dereq_(21);\nvar isObject = _dereq_(51);\nvar fails = _dereq_(35);\nvar validate = _dereq_(125);\nvar WEAK_MAP = 'WeakMap';\nvar getWeak = meta.getWeak;\nvar isExtensible = Object.isExtensible;\nvar uncaughtFrozenStore = weak.ufstore;\nvar tmp = {};\nvar InternalMap;\n\nvar wrapper = function (get) {\n return function WeakMap() {\n return get(this, arguments.length > 0 ? arguments[0] : undefined);\n };\n};\n\nvar methods = {\n // 23.3.3.3 WeakMap.prototype.get(key)\n get: function get(key) {\n if (isObject(key)) {\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);\n return data ? data[this._i] : undefined;\n }\n },\n // 23.3.3.5 WeakMap.prototype.set(key, value)\n set: function set(key, value) {\n return weak.def(validate(this, WEAK_MAP), key, value);\n }\n};\n\n// 23.3 WeakMap Objects\nvar $WeakMap = module.exports = _dereq_(22)(WEAK_MAP, wrapper, methods, weak, true, true);\n\n// IE11 WeakMap frozen keys fix\nif (fails(function () { return new $WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7; })) {\n InternalMap = weak.getConstructor(wrapper, WEAK_MAP);\n assign(InternalMap.prototype, methods);\n meta.NEED = true;\n each(['delete', 'has', 'get', 'set'], function (key) {\n var proto = $WeakMap.prototype;\n var method = proto[key];\n redefine(proto, key, function (a, b) {\n // store frozen objects on internal weakmap shim\n if (isObject(a) && !isExtensible(a)) {\n if (!this._f) this._f = new InternalMap();\n var result = this._f[key](a, b);\n return key == 'set' ? this : result;\n // store all the rest on native weakmap\n } return method.call(this, a, b);\n });\n });\n}\n\n},{\"12\":12,\"125\":125,\"21\":21,\"22\":22,\"35\":35,\"51\":51,\"66\":66,\"70\":70,\"94\":94}],267:[function(_dereq_,module,exports){\n'use strict';\nvar weak = _dereq_(21);\nvar validate = _dereq_(125);\nvar WEAK_SET = 'WeakSet';\n\n// 23.4 WeakSet Objects\n_dereq_(22)(WEAK_SET, function (get) {\n return function WeakSet() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.4.3.1 WeakSet.prototype.add(value)\n add: function add(value) {\n return weak.def(validate(this, WEAK_SET), value, true);\n }\n}, weak, false, true);\n\n},{\"125\":125,\"21\":21,\"22\":22}],268:[function(_dereq_,module,exports){\n'use strict';\n// https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flatMap\nvar $export = _dereq_(33);\nvar flattenIntoArray = _dereq_(38);\nvar toObject = _dereq_(119);\nvar toLength = _dereq_(118);\nvar aFunction = _dereq_(3);\nvar arraySpeciesCreate = _dereq_(15);\n\n$export($export.P, 'Array', {\n flatMap: function flatMap(callbackfn /* , thisArg */) {\n var O = toObject(this);\n var sourceLen, A;\n aFunction(callbackfn);\n sourceLen = toLength(O.length);\n A = arraySpeciesCreate(O, 0);\n flattenIntoArray(A, O, O, sourceLen, 0, 1, callbackfn, arguments[1]);\n return A;\n }\n});\n\n_dereq_(5)('flatMap');\n\n},{\"118\":118,\"119\":119,\"15\":15,\"3\":3,\"33\":33,\"38\":38,\"5\":5}],269:[function(_dereq_,module,exports){\n'use strict';\n// https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flatten\nvar $export = _dereq_(33);\nvar flattenIntoArray = _dereq_(38);\nvar toObject = _dereq_(119);\nvar toLength = _dereq_(118);\nvar toInteger = _dereq_(116);\nvar arraySpeciesCreate = _dereq_(15);\n\n$export($export.P, 'Array', {\n flatten: function flatten(/* depthArg = 1 */) {\n var depthArg = arguments[0];\n var O = toObject(this);\n var sourceLen = toLength(O.length);\n var A = arraySpeciesCreate(O, 0);\n flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toInteger(depthArg));\n return A;\n }\n});\n\n_dereq_(5)('flatten');\n\n},{\"116\":116,\"118\":118,\"119\":119,\"15\":15,\"33\":33,\"38\":38,\"5\":5}],270:[function(_dereq_,module,exports){\n'use strict';\n// https://github.com/tc39/Array.prototype.includes\nvar $export = _dereq_(33);\nvar $includes = _dereq_(11)(true);\n\n$export($export.P, 'Array', {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n_dereq_(5)('includes');\n\n},{\"11\":11,\"33\":33,\"5\":5}],271:[function(_dereq_,module,exports){\n// https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-09/sept-25.md#510-globalasap-for-enqueuing-a-microtask\nvar $export = _dereq_(33);\nvar microtask = _dereq_(68)();\nvar process = _dereq_(40).process;\nvar isNode = _dereq_(18)(process) == 'process';\n\n$export($export.G, {\n asap: function asap(fn) {\n var domain = isNode && process.domain;\n microtask(domain ? domain.bind(fn) : fn);\n }\n});\n\n},{\"18\":18,\"33\":33,\"40\":40,\"68\":68}],272:[function(_dereq_,module,exports){\n// https://github.com/ljharb/proposal-is-error\nvar $export = _dereq_(33);\nvar cof = _dereq_(18);\n\n$export($export.S, 'Error', {\n isError: function isError(it) {\n return cof(it) === 'Error';\n }\n});\n\n},{\"18\":18,\"33\":33}],273:[function(_dereq_,module,exports){\n// https://github.com/tc39/proposal-global\nvar $export = _dereq_(33);\n\n$export($export.G, { global: _dereq_(40) });\n\n},{\"33\":33,\"40\":40}],274:[function(_dereq_,module,exports){\n// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from\n_dereq_(97)('Map');\n\n},{\"97\":97}],275:[function(_dereq_,module,exports){\n// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of\n_dereq_(98)('Map');\n\n},{\"98\":98}],276:[function(_dereq_,module,exports){\n// https://github.com/DavidBruant/Map-Set.prototype.toJSON\nvar $export = _dereq_(33);\n\n$export($export.P + $export.R, 'Map', { toJSON: _dereq_(20)('Map') });\n\n},{\"20\":20,\"33\":33}],277:[function(_dereq_,module,exports){\n// https://rwaldron.github.io/proposal-math-extensions/\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', {\n clamp: function clamp(x, lower, upper) {\n return Math.min(upper, Math.max(lower, x));\n }\n});\n\n},{\"33\":33}],278:[function(_dereq_,module,exports){\n// https://rwaldron.github.io/proposal-math-extensions/\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', { DEG_PER_RAD: Math.PI / 180 });\n\n},{\"33\":33}],279:[function(_dereq_,module,exports){\n// https://rwaldron.github.io/proposal-math-extensions/\nvar $export = _dereq_(33);\nvar RAD_PER_DEG = 180 / Math.PI;\n\n$export($export.S, 'Math', {\n degrees: function degrees(radians) {\n return radians * RAD_PER_DEG;\n }\n});\n\n},{\"33\":33}],280:[function(_dereq_,module,exports){\n// https://rwaldron.github.io/proposal-math-extensions/\nvar $export = _dereq_(33);\nvar scale = _dereq_(64);\nvar fround = _dereq_(62);\n\n$export($export.S, 'Math', {\n fscale: function fscale(x, inLow, inHigh, outLow, outHigh) {\n return fround(scale(x, inLow, inHigh, outLow, outHigh));\n }\n});\n\n},{\"33\":33,\"62\":62,\"64\":64}],281:[function(_dereq_,module,exports){\n// https://gist.github.com/BrendanEich/4294d5c212a6d2254703\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', {\n iaddh: function iaddh(x0, x1, y0, y1) {\n var $x0 = x0 >>> 0;\n var $x1 = x1 >>> 0;\n var $y0 = y0 >>> 0;\n return $x1 + (y1 >>> 0) + (($x0 & $y0 | ($x0 | $y0) & ~($x0 + $y0 >>> 0)) >>> 31) | 0;\n }\n});\n\n},{\"33\":33}],282:[function(_dereq_,module,exports){\n// https://gist.github.com/BrendanEich/4294d5c212a6d2254703\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', {\n imulh: function imulh(u, v) {\n var UINT16 = 0xffff;\n var $u = +u;\n var $v = +v;\n var u0 = $u & UINT16;\n var v0 = $v & UINT16;\n var u1 = $u >> 16;\n var v1 = $v >> 16;\n var t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16);\n return u1 * v1 + (t >> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >> 16);\n }\n});\n\n},{\"33\":33}],283:[function(_dereq_,module,exports){\n// https://gist.github.com/BrendanEich/4294d5c212a6d2254703\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', {\n isubh: function isubh(x0, x1, y0, y1) {\n var $x0 = x0 >>> 0;\n var $x1 = x1 >>> 0;\n var $y0 = y0 >>> 0;\n return $x1 - (y1 >>> 0) - ((~$x0 & $y0 | ~($x0 ^ $y0) & $x0 - $y0 >>> 0) >>> 31) | 0;\n }\n});\n\n},{\"33\":33}],284:[function(_dereq_,module,exports){\n// https://rwaldron.github.io/proposal-math-extensions/\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', { RAD_PER_DEG: 180 / Math.PI });\n\n},{\"33\":33}],285:[function(_dereq_,module,exports){\n// https://rwaldron.github.io/proposal-math-extensions/\nvar $export = _dereq_(33);\nvar DEG_PER_RAD = Math.PI / 180;\n\n$export($export.S, 'Math', {\n radians: function radians(degrees) {\n return degrees * DEG_PER_RAD;\n }\n});\n\n},{\"33\":33}],286:[function(_dereq_,module,exports){\n// https://rwaldron.github.io/proposal-math-extensions/\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', { scale: _dereq_(64) });\n\n},{\"33\":33,\"64\":64}],287:[function(_dereq_,module,exports){\n// http://jfbastien.github.io/papers/Math.signbit.html\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', { signbit: function signbit(x) {\n // eslint-disable-next-line no-self-compare\n return (x = +x) != x ? x : x == 0 ? 1 / x == Infinity : x > 0;\n} });\n\n},{\"33\":33}],288:[function(_dereq_,module,exports){\n// https://gist.github.com/BrendanEich/4294d5c212a6d2254703\nvar $export = _dereq_(33);\n\n$export($export.S, 'Math', {\n umulh: function umulh(u, v) {\n var UINT16 = 0xffff;\n var $u = +u;\n var $v = +v;\n var u0 = $u & UINT16;\n var v0 = $v & UINT16;\n var u1 = $u >>> 16;\n var v1 = $v >>> 16;\n var t = (u1 * v0 >>> 0) + (u0 * v0 >>> 16);\n return u1 * v1 + (t >>> 16) + ((u0 * v1 >>> 0) + (t & UINT16) >>> 16);\n }\n});\n\n},{\"33\":33}],289:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar toObject = _dereq_(119);\nvar aFunction = _dereq_(3);\nvar $defineProperty = _dereq_(72);\n\n// B.2.2.2 Object.prototype.__defineGetter__(P, getter)\n_dereq_(29) && $export($export.P + _dereq_(74), 'Object', {\n __defineGetter__: function __defineGetter__(P, getter) {\n $defineProperty.f(toObject(this), P, { get: aFunction(getter), enumerable: true, configurable: true });\n }\n});\n\n},{\"119\":119,\"29\":29,\"3\":3,\"33\":33,\"72\":72,\"74\":74}],290:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar toObject = _dereq_(119);\nvar aFunction = _dereq_(3);\nvar $defineProperty = _dereq_(72);\n\n// B.2.2.3 Object.prototype.__defineSetter__(P, setter)\n_dereq_(29) && $export($export.P + _dereq_(74), 'Object', {\n __defineSetter__: function __defineSetter__(P, setter) {\n $defineProperty.f(toObject(this), P, { set: aFunction(setter), enumerable: true, configurable: true });\n }\n});\n\n},{\"119\":119,\"29\":29,\"3\":3,\"33\":33,\"72\":72,\"74\":74}],291:[function(_dereq_,module,exports){\n// https://github.com/tc39/proposal-object-values-entries\nvar $export = _dereq_(33);\nvar $entries = _dereq_(84)(true);\n\n$export($export.S, 'Object', {\n entries: function entries(it) {\n return $entries(it);\n }\n});\n\n},{\"33\":33,\"84\":84}],292:[function(_dereq_,module,exports){\n// https://github.com/tc39/proposal-object-getownpropertydescriptors\nvar $export = _dereq_(33);\nvar ownKeys = _dereq_(85);\nvar toIObject = _dereq_(117);\nvar gOPD = _dereq_(75);\nvar createProperty = _dereq_(24);\n\n$export($export.S, 'Object', {\n getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {\n var O = toIObject(object);\n var getDesc = gOPD.f;\n var keys = ownKeys(O);\n var result = {};\n var i = 0;\n var key, desc;\n while (keys.length > i) {\n desc = getDesc(O, key = keys[i++]);\n if (desc !== undefined) createProperty(result, key, desc);\n }\n return result;\n }\n});\n\n},{\"117\":117,\"24\":24,\"33\":33,\"75\":75,\"85\":85}],293:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar toObject = _dereq_(119);\nvar toPrimitive = _dereq_(120);\nvar getPrototypeOf = _dereq_(79);\nvar getOwnPropertyDescriptor = _dereq_(75).f;\n\n// B.2.2.4 Object.prototype.__lookupGetter__(P)\n_dereq_(29) && $export($export.P + _dereq_(74), 'Object', {\n __lookupGetter__: function __lookupGetter__(P) {\n var O = toObject(this);\n var K = toPrimitive(P, true);\n var D;\n do {\n if (D = getOwnPropertyDescriptor(O, K)) return D.get;\n } while (O = getPrototypeOf(O));\n }\n});\n\n},{\"119\":119,\"120\":120,\"29\":29,\"33\":33,\"74\":74,\"75\":75,\"79\":79}],294:[function(_dereq_,module,exports){\n'use strict';\nvar $export = _dereq_(33);\nvar toObject = _dereq_(119);\nvar toPrimitive = _dereq_(120);\nvar getPrototypeOf = _dereq_(79);\nvar getOwnPropertyDescriptor = _dereq_(75).f;\n\n// B.2.2.5 Object.prototype.__lookupSetter__(P)\n_dereq_(29) && $export($export.P + _dereq_(74), 'Object', {\n __lookupSetter__: function __lookupSetter__(P) {\n var O = toObject(this);\n var K = toPrimitive(P, true);\n var D;\n do {\n if (D = getOwnPropertyDescriptor(O, K)) return D.set;\n } while (O = getPrototypeOf(O));\n }\n});\n\n},{\"119\":119,\"120\":120,\"29\":29,\"33\":33,\"74\":74,\"75\":75,\"79\":79}],295:[function(_dereq_,module,exports){\n// https://github.com/tc39/proposal-object-values-entries\nvar $export = _dereq_(33);\nvar $values = _dereq_(84)(false);\n\n$export($export.S, 'Object', {\n values: function values(it) {\n return $values(it);\n }\n});\n\n},{\"33\":33,\"84\":84}],296:[function(_dereq_,module,exports){\n'use strict';\n// https://github.com/zenparsing/es-observable\nvar $export = _dereq_(33);\nvar global = _dereq_(40);\nvar core = _dereq_(23);\nvar microtask = _dereq_(68)();\nvar OBSERVABLE = _dereq_(128)('observable');\nvar aFunction = _dereq_(3);\nvar anObject = _dereq_(7);\nvar anInstance = _dereq_(6);\nvar redefineAll = _dereq_(93);\nvar hide = _dereq_(42);\nvar forOf = _dereq_(39);\nvar RETURN = forOf.RETURN;\n\nvar getMethod = function (fn) {\n return fn == null ? undefined : aFunction(fn);\n};\n\nvar cleanupSubscription = function (subscription) {\n var cleanup = subscription._c;\n if (cleanup) {\n subscription._c = undefined;\n cleanup();\n }\n};\n\nvar subscriptionClosed = function (subscription) {\n return subscription._o === undefined;\n};\n\nvar closeSubscription = function (subscription) {\n if (!subscriptionClosed(subscription)) {\n subscription._o = undefined;\n cleanupSubscription(subscription);\n }\n};\n\nvar Subscription = function (observer, subscriber) {\n anObject(observer);\n this._c = undefined;\n this._o = observer;\n observer = new SubscriptionObserver(this);\n try {\n var cleanup = subscriber(observer);\n var subscription = cleanup;\n if (cleanup != null) {\n if (typeof cleanup.unsubscribe === 'function') cleanup = function () { subscription.unsubscribe(); };\n else aFunction(cleanup);\n this._c = cleanup;\n }\n } catch (e) {\n observer.error(e);\n return;\n } if (subscriptionClosed(this)) cleanupSubscription(this);\n};\n\nSubscription.prototype = redefineAll({}, {\n unsubscribe: function unsubscribe() { closeSubscription(this); }\n});\n\nvar SubscriptionObserver = function (subscription) {\n this._s = subscription;\n};\n\nSubscriptionObserver.prototype = redefineAll({}, {\n next: function next(value) {\n var subscription = this._s;\n if (!subscriptionClosed(subscription)) {\n var observer = subscription._o;\n try {\n var m = getMethod(observer.next);\n if (m) return m.call(observer, value);\n } catch (e) {\n try {\n closeSubscription(subscription);\n } finally {\n throw e;\n }\n }\n }\n },\n error: function error(value) {\n var subscription = this._s;\n if (subscriptionClosed(subscription)) throw value;\n var observer = subscription._o;\n subscription._o = undefined;\n try {\n var m = getMethod(observer.error);\n if (!m) throw value;\n value = m.call(observer, value);\n } catch (e) {\n try {\n cleanupSubscription(subscription);\n } finally {\n throw e;\n }\n } cleanupSubscription(subscription);\n return value;\n },\n complete: function complete(value) {\n var subscription = this._s;\n if (!subscriptionClosed(subscription)) {\n var observer = subscription._o;\n subscription._o = undefined;\n try {\n var m = getMethod(observer.complete);\n value = m ? m.call(observer, value) : undefined;\n } catch (e) {\n try {\n cleanupSubscription(subscription);\n } finally {\n throw e;\n }\n } cleanupSubscription(subscription);\n return value;\n }\n }\n});\n\nvar $Observable = function Observable(subscriber) {\n anInstance(this, $Observable, 'Observable', '_f')._f = aFunction(subscriber);\n};\n\nredefineAll($Observable.prototype, {\n subscribe: function subscribe(observer) {\n return new Subscription(observer, this._f);\n },\n forEach: function forEach(fn) {\n var that = this;\n return new (core.Promise || global.Promise)(function (resolve, reject) {\n aFunction(fn);\n var subscription = that.subscribe({\n next: function (value) {\n try {\n return fn(value);\n } catch (e) {\n reject(e);\n subscription.unsubscribe();\n }\n },\n error: reject,\n complete: resolve\n });\n });\n }\n});\n\nredefineAll($Observable, {\n from: function from(x) {\n var C = typeof this === 'function' ? this : $Observable;\n var method = getMethod(anObject(x)[OBSERVABLE]);\n if (method) {\n var observable = anObject(method.call(x));\n return observable.constructor === C ? observable : new C(function (observer) {\n return observable.subscribe(observer);\n });\n }\n return new C(function (observer) {\n var done = false;\n microtask(function () {\n if (!done) {\n try {\n if (forOf(x, false, function (it) {\n observer.next(it);\n if (done) return RETURN;\n }) === RETURN) return;\n } catch (e) {\n if (done) throw e;\n observer.error(e);\n return;\n } observer.complete();\n }\n });\n return function () { done = true; };\n });\n },\n of: function of() {\n for (var i = 0, l = arguments.length, items = Array(l); i < l;) items[i] = arguments[i++];\n return new (typeof this === 'function' ? this : $Observable)(function (observer) {\n var done = false;\n microtask(function () {\n if (!done) {\n for (var j = 0; j < items.length; ++j) {\n observer.next(items[j]);\n if (done) return;\n } observer.complete();\n }\n });\n return function () { done = true; };\n });\n }\n});\n\nhide($Observable.prototype, OBSERVABLE, function () { return this; });\n\n$export($export.G, { Observable: $Observable });\n\n_dereq_(100)('Observable');\n\n},{\"100\":100,\"128\":128,\"23\":23,\"3\":3,\"33\":33,\"39\":39,\"40\":40,\"42\":42,\"6\":6,\"68\":68,\"7\":7,\"93\":93}],297:[function(_dereq_,module,exports){\n// https://github.com/tc39/proposal-promise-finally\n'use strict';\nvar $export = _dereq_(33);\nvar core = _dereq_(23);\nvar global = _dereq_(40);\nvar speciesConstructor = _dereq_(104);\nvar promiseResolve = _dereq_(91);\n\n$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {\n var C = speciesConstructor(this, core.Promise || global.Promise);\n var isFunction = typeof onFinally == 'function';\n return this.then(\n isFunction ? function (x) {\n return promiseResolve(C, onFinally()).then(function () { return x; });\n } : onFinally,\n isFunction ? function (e) {\n return promiseResolve(C, onFinally()).then(function () { throw e; });\n } : onFinally\n );\n} });\n\n},{\"104\":104,\"23\":23,\"33\":33,\"40\":40,\"91\":91}],298:[function(_dereq_,module,exports){\n'use strict';\n// https://github.com/tc39/proposal-promise-try\nvar $export = _dereq_(33);\nvar newPromiseCapability = _dereq_(69);\nvar perform = _dereq_(90);\n\n$export($export.S, 'Promise', { 'try': function (callbackfn) {\n var promiseCapability = newPromiseCapability.f(this);\n var result = perform(callbackfn);\n (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v);\n return promiseCapability.promise;\n} });\n\n},{\"33\":33,\"69\":69,\"90\":90}],299:[function(_dereq_,module,exports){\nvar metadata = _dereq_(67);\nvar anObject = _dereq_(7);\nvar toMetaKey = metadata.key;\nvar ordinaryDefineOwnMetadata = metadata.set;\n\nmetadata.exp({ defineMetadata: function defineMetadata(metadataKey, metadataValue, target, targetKey) {\n ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), toMetaKey(targetKey));\n} });\n\n},{\"67\":67,\"7\":7}],300:[function(_dereq_,module,exports){\nvar metadata = _dereq_(67);\nvar anObject = _dereq_(7);\nvar toMetaKey = metadata.key;\nvar getOrCreateMetadataMap = metadata.map;\nvar store = metadata.store;\n\nmetadata.exp({ deleteMetadata: function deleteMetadata(metadataKey, target /* , targetKey */) {\n var targetKey = arguments.length < 3 ? undefined : toMetaKey(arguments[2]);\n var metadataMap = getOrCreateMetadataMap(anObject(target), targetKey, false);\n if (metadataMap === undefined || !metadataMap['delete'](metadataKey)) return false;\n if (metadataMap.size) return true;\n var targetMetadata = store.get(target);\n targetMetadata['delete'](targetKey);\n return !!targetMetadata.size || store['delete'](target);\n} });\n\n},{\"67\":67,\"7\":7}],301:[function(_dereq_,module,exports){\nvar Set = _dereq_(231);\nvar from = _dereq_(10);\nvar metadata = _dereq_(67);\nvar anObject = _dereq_(7);\nvar getPrototypeOf = _dereq_(79);\nvar ordinaryOwnMetadataKeys = metadata.keys;\nvar toMetaKey = metadata.key;\n\nvar ordinaryMetadataKeys = function (O, P) {\n var oKeys = ordinaryOwnMetadataKeys(O, P);\n var parent = getPrototypeOf(O);\n if (parent === null) return oKeys;\n var pKeys = ordinaryMetadataKeys(parent, P);\n return pKeys.length ? oKeys.length ? from(new Set(oKeys.concat(pKeys))) : pKeys : oKeys;\n};\n\nmetadata.exp({ getMetadataKeys: function getMetadataKeys(target /* , targetKey */) {\n return ordinaryMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1]));\n} });\n\n},{\"10\":10,\"231\":231,\"67\":67,\"7\":7,\"79\":79}],302:[function(_dereq_,module,exports){\nvar metadata = _dereq_(67);\nvar anObject = _dereq_(7);\nvar getPrototypeOf = _dereq_(79);\nvar ordinaryHasOwnMetadata = metadata.has;\nvar ordinaryGetOwnMetadata = metadata.get;\nvar toMetaKey = metadata.key;\n\nvar ordinaryGetMetadata = function (MetadataKey, O, P) {\n var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P);\n if (hasOwn) return ordinaryGetOwnMetadata(MetadataKey, O, P);\n var parent = getPrototypeOf(O);\n return parent !== null ? ordinaryGetMetadata(MetadataKey, parent, P) : undefined;\n};\n\nmetadata.exp({ getMetadata: function getMetadata(metadataKey, target /* , targetKey */) {\n return ordinaryGetMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n} });\n\n},{\"67\":67,\"7\":7,\"79\":79}],303:[function(_dereq_,module,exports){\nvar metadata = _dereq_(67);\nvar anObject = _dereq_(7);\nvar ordinaryOwnMetadataKeys = metadata.keys;\nvar toMetaKey = metadata.key;\n\nmetadata.exp({ getOwnMetadataKeys: function getOwnMetadataKeys(target /* , targetKey */) {\n return ordinaryOwnMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1]));\n} });\n\n},{\"67\":67,\"7\":7}],304:[function(_dereq_,module,exports){\nvar metadata = _dereq_(67);\nvar anObject = _dereq_(7);\nvar ordinaryGetOwnMetadata = metadata.get;\nvar toMetaKey = metadata.key;\n\nmetadata.exp({ getOwnMetadata: function getOwnMetadata(metadataKey, target /* , targetKey */) {\n return ordinaryGetOwnMetadata(metadataKey, anObject(target)\n , arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n} });\n\n},{\"67\":67,\"7\":7}],305:[function(_dereq_,module,exports){\nvar metadata = _dereq_(67);\nvar anObject = _dereq_(7);\nvar getPrototypeOf = _dereq_(79);\nvar ordinaryHasOwnMetadata = metadata.has;\nvar toMetaKey = metadata.key;\n\nvar ordinaryHasMetadata = function (MetadataKey, O, P) {\n var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P);\n if (hasOwn) return true;\n var parent = getPrototypeOf(O);\n return parent !== null ? ordinaryHasMetadata(MetadataKey, parent, P) : false;\n};\n\nmetadata.exp({ hasMetadata: function hasMetadata(metadataKey, target /* , targetKey */) {\n return ordinaryHasMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n} });\n\n},{\"67\":67,\"7\":7,\"79\":79}],306:[function(_dereq_,module,exports){\nvar metadata = _dereq_(67);\nvar anObject = _dereq_(7);\nvar ordinaryHasOwnMetadata = metadata.has;\nvar toMetaKey = metadata.key;\n\nmetadata.exp({ hasOwnMetadata: function hasOwnMetadata(metadataKey, target /* , targetKey */) {\n return ordinaryHasOwnMetadata(metadataKey, anObject(target)\n , arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n} });\n\n},{\"67\":67,\"7\":7}],307:[function(_dereq_,module,exports){\nvar $metadata = _dereq_(67);\nvar anObject = _dereq_(7);\nvar aFunction = _dereq_(3);\nvar toMetaKey = $metadata.key;\nvar ordinaryDefineOwnMetadata = $metadata.set;\n\n$metadata.exp({ metadata: function metadata(metadataKey, metadataValue) {\n return function decorator(target, targetKey) {\n ordinaryDefineOwnMetadata(\n metadataKey, metadataValue,\n (targetKey !== undefined ? anObject : aFunction)(target),\n toMetaKey(targetKey)\n );\n };\n} });\n\n},{\"3\":3,\"67\":67,\"7\":7}],308:[function(_dereq_,module,exports){\n// https://tc39.github.io/proposal-setmap-offrom/#sec-set.from\n_dereq_(97)('Set');\n\n},{\"97\":97}],309:[function(_dereq_,module,exports){\n// https://tc39.github.io/proposal-setmap-offrom/#sec-set.of\n_dereq_(98)('Set');\n\n},{\"98\":98}],310:[function(_dereq_,module,exports){\n// https://github.com/DavidBruant/Map-Set.prototype.toJSON\nvar $export = _dereq_(33);\n\n$export($export.P + $export.R, 'Set', { toJSON: _dereq_(20)('Set') });\n\n},{\"20\":20,\"33\":33}],311:[function(_dereq_,module,exports){\n'use strict';\n// https://github.com/mathiasbynens/String.prototype.at\nvar $export = _dereq_(33);\nvar $at = _dereq_(106)(true);\n\n$export($export.P, 'String', {\n at: function at(pos) {\n return $at(this, pos);\n }\n});\n\n},{\"106\":106,\"33\":33}],312:[function(_dereq_,module,exports){\n'use strict';\n// https://tc39.github.io/String.prototype.matchAll/\nvar $export = _dereq_(33);\nvar defined = _dereq_(28);\nvar toLength = _dereq_(118);\nvar isRegExp = _dereq_(52);\nvar getFlags = _dereq_(37);\nvar RegExpProto = RegExp.prototype;\n\nvar $RegExpStringIterator = function (regexp, string) {\n this._r = regexp;\n this._s = string;\n};\n\n_dereq_(54)($RegExpStringIterator, 'RegExp String', function next() {\n var match = this._r.exec(this._s);\n return { value: match, done: match === null };\n});\n\n$export($export.P, 'String', {\n matchAll: function matchAll(regexp) {\n defined(this);\n if (!isRegExp(regexp)) throw TypeError(regexp + ' is not a regexp!');\n var S = String(this);\n var flags = 'flags' in RegExpProto ? String(regexp.flags) : getFlags.call(regexp);\n var rx = new RegExp(regexp.source, ~flags.indexOf('g') ? flags : 'g' + flags);\n rx.lastIndex = toLength(regexp.lastIndex);\n return new $RegExpStringIterator(rx, S);\n }\n});\n\n},{\"118\":118,\"28\":28,\"33\":33,\"37\":37,\"52\":52,\"54\":54}],313:[function(_dereq_,module,exports){\n'use strict';\n// https://github.com/tc39/proposal-string-pad-start-end\nvar $export = _dereq_(33);\nvar $pad = _dereq_(109);\n\n$export($export.P, 'String', {\n padEnd: function padEnd(maxLength /* , fillString = ' ' */) {\n return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false);\n }\n});\n\n},{\"109\":109,\"33\":33}],314:[function(_dereq_,module,exports){\n'use strict';\n// https://github.com/tc39/proposal-string-pad-start-end\nvar $export = _dereq_(33);\nvar $pad = _dereq_(109);\n\n$export($export.P, 'String', {\n padStart: function padStart(maxLength /* , fillString = ' ' */) {\n return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true);\n }\n});\n\n},{\"109\":109,\"33\":33}],315:[function(_dereq_,module,exports){\n'use strict';\n// https://github.com/sebmarkbage/ecmascript-string-left-right-trim\n_dereq_(111)('trimLeft', function ($trim) {\n return function trimLeft() {\n return $trim(this, 1);\n };\n}, 'trimStart');\n\n},{\"111\":111}],316:[function(_dereq_,module,exports){\n'use strict';\n// https://github.com/sebmarkbage/ecmascript-string-left-right-trim\n_dereq_(111)('trimRight', function ($trim) {\n return function trimRight() {\n return $trim(this, 2);\n };\n}, 'trimEnd');\n\n},{\"111\":111}],317:[function(_dereq_,module,exports){\n_dereq_(126)('asyncIterator');\n\n},{\"126\":126}],318:[function(_dereq_,module,exports){\n_dereq_(126)('observable');\n\n},{\"126\":126}],319:[function(_dereq_,module,exports){\n// https://github.com/tc39/proposal-global\nvar $export = _dereq_(33);\n\n$export($export.S, 'System', { global: _dereq_(40) });\n\n},{\"33\":33,\"40\":40}],320:[function(_dereq_,module,exports){\n// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from\n_dereq_(97)('WeakMap');\n\n},{\"97\":97}],321:[function(_dereq_,module,exports){\n// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of\n_dereq_(98)('WeakMap');\n\n},{\"98\":98}],322:[function(_dereq_,module,exports){\n// https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.from\n_dereq_(97)('WeakSet');\n\n},{\"97\":97}],323:[function(_dereq_,module,exports){\n// https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.of\n_dereq_(98)('WeakSet');\n\n},{\"98\":98}],324:[function(_dereq_,module,exports){\nvar $iterators = _dereq_(141);\nvar getKeys = _dereq_(81);\nvar redefine = _dereq_(94);\nvar global = _dereq_(40);\nvar hide = _dereq_(42);\nvar Iterators = _dereq_(58);\nvar wks = _dereq_(128);\nvar ITERATOR = wks('iterator');\nvar TO_STRING_TAG = wks('toStringTag');\nvar ArrayValues = Iterators.Array;\n\nvar DOMIterables = {\n CSSRuleList: true, // TODO: Not spec compliant, should be false.\n CSSStyleDeclaration: false,\n CSSValueList: false,\n ClientRectList: false,\n DOMRectList: false,\n DOMStringList: false,\n DOMTokenList: true,\n DataTransferItemList: false,\n FileList: false,\n HTMLAllCollection: false,\n HTMLCollection: false,\n HTMLFormElement: false,\n HTMLSelectElement: false,\n MediaList: true, // TODO: Not spec compliant, should be false.\n MimeTypeArray: false,\n NamedNodeMap: false,\n NodeList: true,\n PaintRequestList: false,\n Plugin: false,\n PluginArray: false,\n SVGLengthList: false,\n SVGNumberList: false,\n SVGPathSegList: false,\n SVGPointList: false,\n SVGStringList: false,\n SVGTransformList: false,\n SourceBufferList: false,\n StyleSheetList: true, // TODO: Not spec compliant, should be false.\n TextTrackCueList: false,\n TextTrackList: false,\n TouchList: false\n};\n\nfor (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {\n var NAME = collections[i];\n var explicit = DOMIterables[NAME];\n var Collection = global[NAME];\n var proto = Collection && Collection.prototype;\n var key;\n if (proto) {\n if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);\n if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);\n Iterators[NAME] = ArrayValues;\n if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);\n }\n}\n\n},{\"128\":128,\"141\":141,\"40\":40,\"42\":42,\"58\":58,\"81\":81,\"94\":94}],325:[function(_dereq_,module,exports){\nvar $export = _dereq_(33);\nvar $task = _dereq_(113);\n$export($export.G + $export.B, {\n setImmediate: $task.set,\n clearImmediate: $task.clear\n});\n\n},{\"113\":113,\"33\":33}],326:[function(_dereq_,module,exports){\n// ie9- setTimeout & setInterval additional parameters fix\nvar global = _dereq_(40);\nvar $export = _dereq_(33);\nvar invoke = _dereq_(46);\nvar partial = _dereq_(88);\nvar navigator = global.navigator;\nvar MSIE = !!navigator && /MSIE .\\./.test(navigator.userAgent); // <- dirty ie9- check\nvar wrap = function (set) {\n return MSIE ? function (fn, time /* , ...args */) {\n return set(invoke(\n partial,\n [].slice.call(arguments, 2),\n // eslint-disable-next-line no-new-func\n typeof fn == 'function' ? fn : Function(fn)\n ), time);\n } : set;\n};\n$export($export.G + $export.B + $export.F * MSIE, {\n setTimeout: wrap(global.setTimeout),\n setInterval: wrap(global.setInterval)\n});\n\n},{\"33\":33,\"40\":40,\"46\":46,\"88\":88}],327:[function(_dereq_,module,exports){\n_dereq_(254);\n_dereq_(191);\n_dereq_(193);\n_dereq_(192);\n_dereq_(195);\n_dereq_(197);\n_dereq_(202);\n_dereq_(196);\n_dereq_(194);\n_dereq_(204);\n_dereq_(203);\n_dereq_(199);\n_dereq_(200);\n_dereq_(198);\n_dereq_(190);\n_dereq_(201);\n_dereq_(205);\n_dereq_(206);\n_dereq_(157);\n_dereq_(159);\n_dereq_(158);\n_dereq_(208);\n_dereq_(207);\n_dereq_(178);\n_dereq_(188);\n_dereq_(189);\n_dereq_(179);\n_dereq_(180);\n_dereq_(181);\n_dereq_(182);\n_dereq_(183);\n_dereq_(184);\n_dereq_(185);\n_dereq_(186);\n_dereq_(187);\n_dereq_(161);\n_dereq_(162);\n_dereq_(163);\n_dereq_(164);\n_dereq_(165);\n_dereq_(166);\n_dereq_(167);\n_dereq_(168);\n_dereq_(169);\n_dereq_(170);\n_dereq_(171);\n_dereq_(172);\n_dereq_(173);\n_dereq_(174);\n_dereq_(175);\n_dereq_(176);\n_dereq_(177);\n_dereq_(241);\n_dereq_(246);\n_dereq_(253);\n_dereq_(244);\n_dereq_(236);\n_dereq_(237);\n_dereq_(242);\n_dereq_(247);\n_dereq_(249);\n_dereq_(232);\n_dereq_(233);\n_dereq_(234);\n_dereq_(235);\n_dereq_(238);\n_dereq_(239);\n_dereq_(240);\n_dereq_(243);\n_dereq_(245);\n_dereq_(248);\n_dereq_(250);\n_dereq_(251);\n_dereq_(252);\n_dereq_(152);\n_dereq_(154);\n_dereq_(153);\n_dereq_(156);\n_dereq_(155);\n_dereq_(140);\n_dereq_(138);\n_dereq_(145);\n_dereq_(142);\n_dereq_(148);\n_dereq_(150);\n_dereq_(137);\n_dereq_(144);\n_dereq_(134);\n_dereq_(149);\n_dereq_(132);\n_dereq_(147);\n_dereq_(146);\n_dereq_(139);\n_dereq_(143);\n_dereq_(131);\n_dereq_(133);\n_dereq_(136);\n_dereq_(135);\n_dereq_(151);\n_dereq_(141);\n_dereq_(224);\n_dereq_(230);\n_dereq_(225);\n_dereq_(226);\n_dereq_(227);\n_dereq_(228);\n_dereq_(229);\n_dereq_(209);\n_dereq_(160);\n_dereq_(231);\n_dereq_(266);\n_dereq_(267);\n_dereq_(255);\n_dereq_(256);\n_dereq_(261);\n_dereq_(264);\n_dereq_(265);\n_dereq_(259);\n_dereq_(262);\n_dereq_(260);\n_dereq_(263);\n_dereq_(257);\n_dereq_(258);\n_dereq_(210);\n_dereq_(211);\n_dereq_(212);\n_dereq_(213);\n_dereq_(214);\n_dereq_(217);\n_dereq_(215);\n_dereq_(216);\n_dereq_(218);\n_dereq_(219);\n_dereq_(220);\n_dereq_(221);\n_dereq_(223);\n_dereq_(222);\n_dereq_(270);\n_dereq_(268);\n_dereq_(269);\n_dereq_(311);\n_dereq_(314);\n_dereq_(313);\n_dereq_(315);\n_dereq_(316);\n_dereq_(312);\n_dereq_(317);\n_dereq_(318);\n_dereq_(292);\n_dereq_(295);\n_dereq_(291);\n_dereq_(289);\n_dereq_(290);\n_dereq_(293);\n_dereq_(294);\n_dereq_(276);\n_dereq_(310);\n_dereq_(275);\n_dereq_(309);\n_dereq_(321);\n_dereq_(323);\n_dereq_(274);\n_dereq_(308);\n_dereq_(320);\n_dereq_(322);\n_dereq_(273);\n_dereq_(319);\n_dereq_(272);\n_dereq_(277);\n_dereq_(278);\n_dereq_(279);\n_dereq_(280);\n_dereq_(281);\n_dereq_(283);\n_dereq_(282);\n_dereq_(284);\n_dereq_(285);\n_dereq_(286);\n_dereq_(288);\n_dereq_(287);\n_dereq_(297);\n_dereq_(298);\n_dereq_(299);\n_dereq_(300);\n_dereq_(302);\n_dereq_(301);\n_dereq_(304);\n_dereq_(303);\n_dereq_(305);\n_dereq_(306);\n_dereq_(307);\n_dereq_(271);\n_dereq_(296);\n_dereq_(326);\n_dereq_(325);\n_dereq_(324);\nmodule.exports = _dereq_(23);\n\n},{\"131\":131,\"132\":132,\"133\":133,\"134\":134,\"135\":135,\"136\":136,\"137\":137,\"138\":138,\"139\":139,\"140\":140,\"141\":141,\"142\":142,\"143\":143,\"144\":144,\"145\":145,\"146\":146,\"147\":147,\"148\":148,\"149\":149,\"150\":150,\"151\":151,\"152\":152,\"153\":153,\"154\":154,\"155\":155,\"156\":156,\"157\":157,\"158\":158,\"159\":159,\"160\":160,\"161\":161,\"162\":162,\"163\":163,\"164\":164,\"165\":165,\"166\":166,\"167\":167,\"168\":168,\"169\":169,\"170\":170,\"171\":171,\"172\":172,\"173\":173,\"174\":174,\"175\":175,\"176\":176,\"177\":177,\"178\":178,\"179\":179,\"180\":180,\"181\":181,\"182\":182,\"183\":183,\"184\":184,\"185\":185,\"186\":186,\"187\":187,\"188\":188,\"189\":189,\"190\":190,\"191\":191,\"192\":192,\"193\":193,\"194\":194,\"195\":195,\"196\":196,\"197\":197,\"198\":198,\"199\":199,\"200\":200,\"201\":201,\"202\":202,\"203\":203,\"204\":204,\"205\":205,\"206\":206,\"207\":207,\"208\":208,\"209\":209,\"210\":210,\"211\":211,\"212\":212,\"213\":213,\"214\":214,\"215\":215,\"216\":216,\"217\":217,\"218\":218,\"219\":219,\"220\":220,\"221\":221,\"222\":222,\"223\":223,\"224\":224,\"225\":225,\"226\":226,\"227\":227,\"228\":228,\"229\":229,\"23\":23,\"230\":230,\"231\":231,\"232\":232,\"233\":233,\"234\":234,\"235\":235,\"236\":236,\"237\":237,\"238\":238,\"239\":239,\"240\":240,\"241\":241,\"242\":242,\"243\":243,\"244\":244,\"245\":245,\"246\":246,\"247\":247,\"248\":248,\"249\":249,\"250\":250,\"251\":251,\"252\":252,\"253\":253,\"254\":254,\"255\":255,\"256\":256,\"257\":257,\"258\":258,\"259\":259,\"260\":260,\"261\":261,\"262\":262,\"263\":263,\"264\":264,\"265\":265,\"266\":266,\"267\":267,\"268\":268,\"269\":269,\"270\":270,\"271\":271,\"272\":272,\"273\":273,\"274\":274,\"275\":275,\"276\":276,\"277\":277,\"278\":278,\"279\":279,\"280\":280,\"281\":281,\"282\":282,\"283\":283,\"284\":284,\"285\":285,\"286\":286,\"287\":287,\"288\":288,\"289\":289,\"290\":290,\"291\":291,\"292\":292,\"293\":293,\"294\":294,\"295\":295,\"296\":296,\"297\":297,\"298\":298,\"299\":299,\"300\":300,\"301\":301,\"302\":302,\"303\":303,\"304\":304,\"305\":305,\"306\":306,\"307\":307,\"308\":308,\"309\":309,\"310\":310,\"311\":311,\"312\":312,\"313\":313,\"314\":314,\"315\":315,\"316\":316,\"317\":317,\"318\":318,\"319\":319,\"320\":320,\"321\":321,\"322\":322,\"323\":323,\"324\":324,\"325\":325,\"326\":326}],328:[function(_dereq_,module,exports){\n(function (global){\n/**\n * Copyright (c) 2014, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * https://raw.github.com/facebook/regenerator/master/LICENSE file. An\n * additional grant of patent rights can be found in the PATENTS file in\n * the same directory.\n */\n\n!(function(global) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n var inModule = typeof module === \"object\";\n var runtime = global.regeneratorRuntime;\n if (runtime) {\n if (inModule) {\n // If regeneratorRuntime is defined globally and we're in a module,\n // make the exports object identical to regeneratorRuntime.\n module.exports = runtime;\n }\n // Don't bother evaluating the rest of this file if the runtime was\n // already defined globally.\n return;\n }\n\n // Define the runtime globally (as expected by generated code) as either\n // module.exports (if we're in a module) or a new, empty object.\n runtime = global.regeneratorRuntime = inModule ? module.exports : {};\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n runtime.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunctionPrototype[toStringTagSymbol] =\n GeneratorFunction.displayName = \"GeneratorFunction\";\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n prototype[method] = function(arg) {\n return this._invoke(method, arg);\n };\n });\n }\n\n runtime.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n runtime.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n if (!(toStringTagSymbol in genFun)) {\n genFun[toStringTagSymbol] = \"GeneratorFunction\";\n }\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n runtime.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return Promise.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return Promise.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration. If the Promise is rejected, however, the\n // result for this iteration will be rejected with the same\n // reason. Note that rejections of yielded Promises are not\n // thrown back into the generator function, as is the case\n // when an awaited Promise is rejected. This difference in\n // behavior between yield and await is important, because it\n // allows the consumer to decide what to do with the yielded\n // rejection (swallow it and continue, manually .throw it back\n // into the generator, abandon iteration, whatever). With\n // await, by contrast, there is no opportunity to examine the\n // rejection reason outside the generator function, so the\n // only option is to throw it from the await expression, and\n // let the generator function handle the exception.\n result.value = unwrapped;\n resolve(result);\n }, reject);\n }\n }\n\n if (typeof global.process === \"object\" && global.process.domain) {\n invoke = global.process.domain.bind(invoke);\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new Promise(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n runtime.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n runtime.async = function(innerFn, outerFn, self, tryLocsList) {\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList)\n );\n\n return runtime.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n if (delegate.iterator.return) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n Gp[toStringTagSymbol] = \"Generator\";\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n runtime.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n runtime.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n})(\n // Among the various tricks for obtaining a reference to the global\n // object, this seems to be the most reliable technique that does not\n // use indirect eval (which violates Content Security Policy).\n typeof global === \"object\" ? global :\n typeof window === \"object\" ? window :\n typeof self === \"object\" ? self : this\n);\n\n}).call(this,typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n},{}]},{},[1]);\n"]} \ No newline at end of file diff --git a/misago/static/misago/js/misago.js b/misago/static/misago/js/misago.js index 15211a5cc1..aa5f14be5a 100644 --- a/misago/static/misago/js/misago.js +++ b/misago/static/misago/js/misago.js @@ -15,11 +15,11 @@ providers:e.search.providers})),l["default"].createElement("div",{className:"col type:"button",className:"btn btn-link",onClick:this.onClick},c["default"].createElement("span",{className:"material-icon"},"done"),gettext("Approve"))):null}}]),t}(c["default"].Component),_=a.Merge=function(e){function t(){var e,a,n,r;o(this,t);for(var s=arguments.length,i=Array(s),u=0;u1&&this.props.selection.find(function(e){return e.acl.can_merge});return e?c["default"].createElement("li",null,c["default"].createElement("button",{type:"button",className:"btn btn-link",onClick:this.onClick},c["default"].createElement("span",{className:"material-icon"},"call_merge"),gettext("Merge"))):null}}]),t}(c["default"].Component),E=a.Move=function(e){function t(){var e,a,n,r;o(this,t);for(var s=arguments.length,i=Array(s),u=0;u1)return!0;var a=!1;return t.forEach(function(e){if(!e.is_event){var t=e.acl.can_approve&&e.is_unapproved||e.acl.can_delete||!e.is_hidden&&e.acl.can_hide||e.acl.can_move||e.acl.can_merge||e.acl.can_protect||e.is_hidden&&e.acl.can_unhide||e.acl.can_unprotect;t&&(a=!0)}}),a}Object.defineProperty(a,"__esModule",{value:!0});var o=Object.assign||function(e){for(var t=1;t1){var t="";return e.posts.previous&&(t=e.posts.previous+"/"),d["default"].createElement(f.Link,{className:"btn btn-default btn-block btn-outline btn-icon",to:e.thread.url.index+t,title:gettext("Go to previous page")},d["default"].createElement("span",{className:"material-icon"},"chevron_left"))}return d["default"].createElement("span",{className:"btn btn-default btn-block btn-outline btn-icon disabled",title:gettext("Go to previous page")},d["default"].createElement("span",{className:"material-icon"},"chevron_left"))}function s(e){if(e.posts.isLoaded&&e.posts.more){var t="";return e.posts.next&&(t=e.posts.next+"/"),d["default"].createElement(f.Link,{className:"btn btn-default btn-block btn-outline btn-icon",to:e.thread.url.index+t,title:gettext("Go to next page")},d["default"].createElement("span",{className:"material-icon"},"chevron_right"))}return d["default"].createElement("span",{className:"btn btn-default btn-block btn-outline btn-icon disabled",title:gettext("Go to next page")},d["default"].createElement("span",{className:"material-icon"},"chevron_right"))}function i(e){return e.posts.isLoaded&&e.posts.last?d["default"].createElement(f.Link,{className:"btn btn-default btn-block btn-outline btn-icon",to:e.thread.url.index+e.posts.last+"/",title:gettext("Go to last page")},d["default"].createElement("span",{className:"material-icon"},"last_page")):d["default"].createElement("span",{className:"btn btn-default btn-block btn-outline btn-icon disabled",title:gettext("Go to last page")},d["default"].createElement("span",{className:"material-icon"},"last_page"))}function u(e){var t=null;return e.more?(t=ngettext("There is %(more)s more post in this thread.","There are %(more)s more posts in this thread.",e.more),t=interpolate(t,{more:e.more},!0)):t=gettext("There are no more posts in this thread."),d["default"].createElement("p",null,t)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e){return d["default"].createElement("nav",{className:"misago-pagination pull-left"},d["default"].createElement(r,e),d["default"].createElement(u,{more:e.posts.more}))},a.Pager=r,a.FirstPage=o,a.PreviousPage=l,a.NextPage=s,a.LastPage=i,a.More=u;var c=e("react"),d=n(c),f=e("react-router")},{react:"react","react-router":"react-router"}],221:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e){return o["default"].createElement("button",{className:e.className||"btn btn-primary btn-outline",onClick:e.onClick,type:"button"},o["default"].createElement("span",{className:"material-icon"},"chat"),gettext("Reply"))};var r=e("react"),o=n(r)},{react:"react"}],222:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){return{participants:e.participants,poll:e.poll,posts:e.posts,thread:e.thread,tick:e.tick.tick,user:e.auth.user}}function o(){var e=c["default"].get("THREAD"),t=e.url.index.replace(e.slug+"-"+e.pk,":slug");return[{path:t,component:(0,l.connect)(r)(i["default"])},{path:t+":page/",component:(0,l.connect)(r)(i["default"])}]}Object.defineProperty(a,"__esModule",{value:!0}),a.select=r,a.paths=o;var l=e("react-redux"),s=e("./route"),i=n(s),u=e("../../index"),c=n(u)},{"../../index":291,"./route":223,"react-redux":"react-redux"}],223:[function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t["default"]=e,t}function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(a,"__esModule",{value:!0});var i=Object.assign||function(e){for(var t=1;t=0,isBusy:e.busyThreads.indexOf(t.id)>=0,key:t.id})})))};var r=e("react"),o=n(r),l=e("./diff-message"),s=n(l),i=e("../thread/ready"),u=n(i)},{"../thread/ready":239,"./diff-message":228,react:"react"}],232:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){var t=e.display,a=e.textClassName;return t?d["default"].createElement("span",{className:"thread-detail-hidden"},d["default"].createElement("span",{className:"material-icon"},"visibility_off"),d["default"].createElement("span",{className:a},gettext("Hidden"))):null}function o(e){var t=e.display,a=e.textClassName;return t?d["default"].createElement("span",{className:"thread-detail-closed"},d["default"].createElement("span",{className:"material-icon"},"lock_outline"),d["default"].createElement("span",{className:a},gettext("Closed"))):null}function l(e){var t=e.display,a=e.textClassName;return t?d["default"].createElement("span",{className:"thread-detail-poll"},d["default"].createElement("span",{className:"material-icon"},"assessment"),d["default"].createElement("span",{className:a},gettext("Poll"))):null}function s(e){var t=e.replies,a=e.forceFullText,n=ngettext("%(replies)s reply","%(replies)s replies",t),r="",o="";return a?(r="detail-text hide",o="detail-text"):(r="detail-text visible-xs-inline-block",o="detail-text hidden-xs"),d["default"].createElement("span",{className:"thread-detail-replies"},d["default"].createElement("span",{className:"material-icon"},"forum"),d["default"].createElement("span",{className:r},t),d["default"].createElement("span",{className:o},interpolate(n,{replies:t},!0)))}function i(e){var t=e.datetime,a=e.url;return d["default"].createElement("a",{className:"visible-sm-inline-block thread-detail-last-reply",href:a,title:t.format("LLL")},t.fromNow(!0))}function u(e){var t=e.posterName,a=e.url,n="visible-sm-inline-block item-title thread-last-poster";return a?d["default"].createElement("a",{className:n,href:a},t):d["default"].createElement("span",{className:n},t)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e){var t=e.category,a=e.isBusy,n=e.showOptions,c=e.isSelected,f=e.thread,h="col-xs-12 col-sm-12";n&&(h=f.moderation.length?"col-xs-6 col-sm-12":"col-xs-9 col-sm-12");var v=0;f.is_hidden&&(v+=1),f.is_closed&&(v+=1),f.has_poll&&(v+=1);var b=n&&3===v,y="detail-text hidden-xs";return b&&(y+=" hidden-sm"),d["default"].createElement("div",{className:"row thread-details-bottom"},d["default"].createElement("div",{className:h},d["default"].createElement(p["default"],{className:"item-title thread-detail-category hidden-xs",category:t}),d["default"].createElement(r,{textClassName:y,display:f.is_hidden}),d["default"].createElement(o,{textClassName:y,display:f.is_closed}),d["default"].createElement(l,{textClassName:y,display:f.has_poll}),d["default"].createElement(s,{forceFullText:!n||v<2,replies:f.replies}),d["default"].createElement(i,{datetime:f.last_post_on,url:f.url.last_post}),d["default"].createElement(u,{posterName:f.last_poster_name,url:f.url.last_poster})),d["default"].createElement(m.OptionsXs,{disabled:a,display:n,isSelected:c,thread:f}))},a.HiddenLabel=r,a.ClosedLabel=o,a.PollLabel=l,a.RepliesLabel=s,a.LastReplyLabel=i,a.LastPoster=u;var c=e("react"),d=n(c),f=e("./category"),p=n(f),m=e("../options")},{"../options":237,"./category":233,react:"react"}],233:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e){var t=e.category,a=e.className;return t?(t.css_class&&(a+=" thread-detail-category-"+t.css_class),o["default"].createElement("a",{className:a,href:t.url.index},t.name)):null};var r=e("react"),o=n(r)},{react:"react"}],234:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(a,"__esModule",{value:!0}),a.TopDetails=a.BottomDetails=void 0;var r=e("./bottom"),o=n(r),l=e("./top"),s=n(l);a.BottomDetails=o["default"],a.TopDetails=s["default"]},{"./bottom":232,"./top":235}],235:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){var t=e.isRead,a=e.url;return t?null:c["default"].createElement("a",{className:"thread-detail-new",href:a},c["default"].createElement("span",{className:"material-icon"},"comment"),c["default"].createElement("span",{className:"detail-text"},gettext("New posts")))}function o(e){var t=e.weight;if(0===t)return null;var a="thread-detail-pinned-globally",n="bookmark",r=gettext("Pinned globally");return 1===t&&(a="thread-detail-pinned-locally",n="bookmark_border",r=gettext("Pinned locally")),c["default"].createElement("span",{className:a},c["default"].createElement("span",{className:"material-icon"},n),c["default"].createElement("span",{className:"detail-text"},r))}function l(e){var t=e.posts,a=e.thread;if(!t&&!a)return null;var n="thread-detail-unapproved-posts",r="remove_circle_outline",o=gettext("Unapproved posts");return a&&(n="thread-detail-unapproved",r="remove_circle",o=gettext("Unapproved")),c["default"].createElement("span",{className:n},c["default"].createElement("span",{className:"material-icon"},r),c["default"].createElement("span",{className:"detail-text"},o))}function s(e){var t=e.datetime,a=e.url;return c["default"].createElement("a",{className:"visible-xs-inline-block thread-detail-last-reply",href:a,title:t.format("LLL")},t.fromNow(!0))}function i(e){var t=e.posterName,a=e.url;return a?c["default"].createElement("a",{className:"visible-xs-inline-block item-title thread-last-poster",href:a},t):c["default"].createElement("span",{className:"visible-xs-inline-block item-title thread-last-poster"},t)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e){var t=e.category,a=e.thread;return c["default"].createElement("div",{className:"thread-details-top"},c["default"].createElement(r,{isRead:a.is_read,url:a.url.new_post}),c["default"].createElement(o,{weight:a.weight}),c["default"].createElement(l,{thread:a.is_unapproved,posts:a.has_unapproved_posts}),c["default"].createElement(f["default"],{className:"item-title thread-detail-category visible-xs-inline-block",category:t}),c["default"].createElement(s,{datetime:a.last_post_on,url:a.url.last_post}),c["default"].createElement(i,{posterName:a.last_poster_name,url:a.url.last_poster}))},a.NewLabel=r,a.PinnedLabel=o,a.UnapprovedLabel=l,a.LastReplyLabel=s,a.LastPoster=i;var u=e("react"),c=n(u),d=e("./category"),f=n(d)},{"./category":233,react:"react"}],236:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){var t=e.datetime,a=e.url;return l["default"].createElement("a",{className:"thread-last-reply",href:a,title:t.format("LLL")},t.fromNow(!0))}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e){var t=e.thread;return l["default"].createElement("div",{className:"media"},l["default"].createElement("div",{className:"media-left"},l["default"].createElement(c["default"],{className:"thread-last-poster-avatar",title:t.last_poster_name,url:t.url.last_poster},l["default"].createElement(i["default"],{className:"media-object",size:40,user:t.last_poster}))),l["default"].createElement("div",{className:"media-body"},l["default"].createElement(c["default"],{className:"item-title thread-last-poster",url:t.url.last_poster},t.last_poster_name),l["default"].createElement(r,{datetime:t.last_post_on,url:t.url.last_post})))},a.Timestamp=r;var o=e("react"),l=n(o),s=e("../../avatar"),i=n(s),u=e("./user-url"),c=n(u)},{"../../avatar":3,"./user-url":244,react:"react"}],237:[function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t["default"]=e,t}function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function i(e){var t=e.display,a=e.disabled,n=e.isSelected,r=e.thread;if(!t)return null;var o="col-sm-2 col-md-2 hidden-xs";return r.moderation.length&&(o="col-sm-3 col-md-2 hidden-xs"),f["default"].createElement("div",{className:o},f["default"].createElement("div",{className:"row thread-options"},f["default"].createElement(v["default"],{thread:r,disabled:a}),f["default"].createElement(m["default"],{thread:r,disabled:a}),f["default"].createElement(E,{thread:r,disabled:a,isSelected:n})))}function u(e){var t=e.display,a=e.disabled,n=e.isSelected,r=e.thread;if(!t)return null;var o="";return o+=r.moderation.length?"col-xs-6":"col-xs-3",o+=" visible-xs-block thread-options-xs",f["default"].createElement("div",{className:o},f["default"].createElement("div",{className:"row thread-options"},f["default"].createElement(v["default"],{thread:r,disabled:a}),f["default"].createElement(m["default"],{thread:r,disabled:a}),f["default"].createElement(E,{thread:r,disabled:a,isSelected:n})))}Object.defineProperty(a,"__esModule",{value:!0}),a.Checkbox=void 0;var c=function(){function e(e,t){for(var a=0;at.last_post?-1:e.last_postt.weight?-1:2===t.weight&&e.weightt.weight?-1:e.weight2&&void 0!==arguments[2]?arguments[2]:null;n.props.threads.forEach(function(e){n.props.freezeThread(e.id)});var r=n.props.threads.map(function(e){return e.id});e.push({op:"add",path:"acl",value:!0}),g["default"].patch(n.props.api,{ids:r,ops:e}).then(function(e){n.props.threads.forEach(function(e){n.props.freezeThread(e.id)}),e.forEach(function(e){n.props.updateThread(e)}),O["default"].success(t),a&&a()},function(e){if(n.props.threads.forEach(function(e){n.props.freezeThread(e.id)}),400!==e.status)return O["default"].apiError(e);var t=[],a={};n.props.threads.forEach(function(e){a[e.id]=e}),e.forEach(function(e){var n=e.id,r=e.detail;"undefined"!=typeof a[n]&&t.push({errors:r,thread:a[n]})}),E["default"].show(c["default"].createElement(f["default"],{errors:t}))})},n.pinGlobally=function(){n.callApi([{op:"replace",path:"weight",value:2}],gettext("Selected threads were pinned globally."))},n.pinLocally=function(){n.callApi([{op:"replace",path:"weight",value:1}],gettext("Selected threads were pinned locally."))},n.unpin=function(){n.callApi([{op:"replace",path:"weight",value:0}],gettext("Selected threads were unpinned."))},n.approve=function(){n.callApi([{op:"replace",path:"is-unapproved",value:!1}],gettext("Selected threads were approved."))},n.open=function(){n.callApi([{op:"replace",path:"is-closed",value:!1}],gettext("Selected threads were opened."))},n.close=function(){n.callApi([{op:"replace",path:"is-closed",value:!0}],gettext("Selected threads were closed."))},n.unhide=function(){n.callApi([{op:"replace",path:"is-hidden",value:!1}],gettext("Selected threads were unhidden."))},n.hide=function(){n.callApi([{op:"replace",path:"is-hidden",value:!0}],gettext("Selected threads were hidden."))},n.move=function(){E["default"].show(c["default"].createElement(v["default"],{callApi:n.callApi,categories:n.props.categories,categoriesMap:n.props.categoriesMap,route:n.props.route,user:n.props.user}))},n.merge=function(){var e=[];if(n.props.threads.forEach(function(t){t.acl.can_merge||e.append({id:t.id,title:t.title,errors:[gettext("You don't have permission to merge this thread with others.")]})}),n.props.threads.length<2)O["default"].info(gettext("You have to select at least two threads to merge."));else{if(e.length)return void E["default"].show(c["default"].createElement(f["default"],{errors:e}));E["default"].show(c["default"].createElement(m["default"],n.props))}},n["delete"]=function(){if(confirm(gettext("Are you sure you want to delete selected threads?"))){n.props.threads.map(function(e){n.props.freezeThread(e.id)});var e=n.props.threads.map(function(e){return e.id});g["default"]["delete"](n.props.api,e).then(function(){n.props.threads.map(function(e){n.props.freezeThread(e.id),n.props.deleteThread(e)}),O["default"].success(gettext("Selected threads were deleted."))},function(e){400===e.status?!function(){var t=e.map(function(e){return e.id});n.props.threads.map(function(e){n.props.freezeThread(e.id),t.indexOf(e.id)===-1&&n.props.deleteThread(e)}),E["default"].show(c["default"].createElement(f["default"],{errors:e}))}():O["default"].apiError(e)})}},r=a,l(n,r)}return s(t,e),i(t,[{key:"getPinGloballyButton",value:function(){return this.props.moderation.can_pin_globally?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.pinGlobally,type:"button"},c["default"].createElement("span",{className:"material-icon"},"bookmark"),gettext("Pin threads globally"))):null}},{key:"getPinLocallyButton",value:function(){return this.props.moderation.can_pin?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.pinLocally,type:"button"},c["default"].createElement("span",{className:"material-icon"},"bookmark_border"),gettext("Pin threads locally"))):null}},{key:"getUnpinButton",value:function(){return this.props.moderation.can_pin?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.unpin,type:"button"},c["default"].createElement("span",{className:"material-icon"},"panorama_fish_eye"),gettext("Unpin threads"))):null}},{key:"getMoveButton",value:function(){return this.props.moderation.can_move?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.move,type:"button"},c["default"].createElement("span",{className:"material-icon"},"arrow_forward"),gettext("Move threads"))):null}},{key:"getMergeButton",value:function(){return this.props.moderation.can_merge?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.merge,type:"button"},c["default"].createElement("span",{className:"material-icon"},"call_merge"),gettext("Merge threads"))):null}},{key:"getApproveButton",value:function(){return this.props.moderation.can_approve?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.approve,type:"button"},c["default"].createElement("span",{className:"material-icon"},"done"),gettext("Approve threads"))):null}},{key:"getOpenButton",value:function(){return this.props.moderation.can_close?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.open,type:"button"},c["default"].createElement("span",{className:"material-icon"},"lock_open"),gettext("Open threads"))):null}},{key:"getCloseButton",value:function(){return this.props.moderation.can_close?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.close,type:"button"},c["default"].createElement("span",{className:"material-icon"},"lock_outline"),gettext("Close threads"))):null}},{key:"getUnhideButton",value:function(){return this.props.moderation.can_unhide?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.unhide,type:"button"},c["default"].createElement("span",{className:"material-icon"},"visibility"),gettext("Unhide threads"))):null}},{key:"getHideButton",value:function(){return this.props.moderation.can_hide?c["default"].createElement("li",null,c["default"].createElement("button",{onClick:this.hide,type:"button",className:"btn btn-link"},c["default"].createElement("span",{className:"material-icon"},"visibility_off"),gettext("Hide threads"))):null}},{key:"getDeleteButton",value:function(){return this.props.moderation.can_delete?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this["delete"],type:"button"},c["default"].createElement("span",{className:"material-icon"},"clear"),gettext("Delete threads"))):null}},{key:"render",value:function(){return c["default"].createElement("ul",{className:this.props.className},this.getPinGloballyButton(),this.getPinLocallyButton(),this.getUnpinButton(),this.getMoveButton(),this.getMergeButton(),this.getApproveButton(),this.getOpenButton(),this.getCloseButton(),this.getUnhideButton(),this.getHideButton(),this.getDeleteButton())}}]),t}(c["default"].Component));a["default"]=x},{"../../../reducers/selection":345,"../../../services/ajax":352,"../../../services/modal":358,"../../../services/snackbar":363,"../../../services/store":364,"../../../utils/countdown":369,"./errors-list":251,"./merge":252,"./move":253,react:"react"}],251:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function s(e){var t=e.errors,a=e.thread;return c["default"].createElement("li",null,c["default"].createElement("h5",null,a.title),t.map(function(e,t){return c["default"].createElement("p",null,e)}))}Object.defineProperty(a,"__esModule",{value:!0});var i=function(){function e(e,t){for(var a=0;a0){var t=a.acl[e.id],n=!t.can_start_threads||e.is_closed&&!t.can_close_threads;a.categoryChoices.push({value:e.id,disabled:n,level:e.level-1,label:e.name}),n||a.state.category||(a.state.category=e.id)}}),a.isHiddenChoices=[{value:0,icon:"visibility",label:gettext("No")},{value:1,icon:"visibility_off",label:gettext("Yes")}],a.isClosedChoices=[{value:!1,icon:"lock_outline",label:gettext("No")},{value:!0,icon:"lock",label:gettext("Yes")}],a}return s(t,e),i(t,[{key:"clean",value:function(){return!!this.isValid()||(A["default"].error(gettext("Form contains errors.")),this.setState({errors:this.validate()}),!1)}},{key:"send",value:function(){return S["default"].post(w["default"].get("MERGE_THREADS_API"),this.getFormdata())}},{key:"getWeightChoices",value:function(){var e=[{value:0,icon:"remove",label:gettext("Not pinned")},{value:1,icon:"bookmark_border",label:gettext("Pinned locally")}];return 2==this.acl[this.state.category].can_pin_threads&&e.push({value:2,icon:"bookmark",label:gettext("Pinned globally")}),e}},{key:"renderWeightField",value:function(){return this.acl[this.state.category].can_pin_threads?c["default"].createElement(v["default"],{label:gettext("Thread weight"),"for":"id_weight"},c["default"].createElement(_["default"],{id:"id_weight",onChange:this.bindInput("weight"),value:this.state.weight,choices:this.getWeightChoices()})):null}},{key:"renderHiddenField",value:function(){return this.acl[this.state.category].can_hide_threads?c["default"].createElement(v["default"],{label:gettext("Hide thread"),"for":"id_is_hidden"},c["default"].createElement(_["default"],{id:"id_is_closed",onChange:this.bindInput("is_hidden"),value:this.state.is_hidden,choices:this.isHiddenChoices})):null}},{key:"renderClosedField",value:function(){return this.acl[this.state.category].can_close_threads?c["default"].createElement(v["default"],{label:gettext("Close thread"),"for":"id_is_closed"},c["default"].createElement(_["default"],{id:"id_is_closed",onChange:this.bindInput("is_closed"),value:this.state.is_closed,choices:this.isClosedChoices})):null}},{key:"renderForm",value:function(){return c["default"].createElement("form",{onSubmit:this.handleSubmit},c["default"].createElement("div",{className:"modal-body"},c["default"].createElement(v["default"],{label:gettext("Thread title"),"for":"id_title",validation:this.state.errors.title},c["default"].createElement("input",{id:"id_title",className:"form-control",type:"text",onChange:this.bindInput("title"),value:this.state.title})),c["default"].createElement("div",{className:"clearfix"}),c["default"].createElement(v["default"],{label:gettext("Category"),"for":"id_category",validation:this.state.errors.category},c["default"].createElement(y["default"],{id:"id_category",onChange:this.onCategoryChange,value:this.state.category,choices:this.categoryChoices})),c["default"].createElement("div",{className:"clearfix"}),this.renderWeightField(),this.renderHiddenField(),this.renderClosedField()),c["default"].createElement("div",{className:"modal-footer"},c["default"].createElement("button",{className:"btn btn-default","data-dismiss":"modal",disabled:this.state.isLoading,type:"button"},gettext("Cancel")),c["default"].createElement(f["default"],{className:"btn-primary",loading:this.state.isLoading},gettext("Merge threads"))))}},{key:"renderCantMergeMessage",value:function(){return c["default"].createElement("div",{className:"modal-body"},c["default"].createElement("div",{className:"message-icon"},c["default"].createElement("span",{className:"material-icon"},"info_outline")),c["default"].createElement("div",{className:"message-body"},c["default"].createElement("p",{className:"lead"},gettext("You can't move threads because there are no categories you are allowed to move them to.")),c["default"].createElement("p",null,gettext("You need permission to start threads in category to be able to merge threads to it.")),c["default"].createElement("button",{className:"btn btn-default","data-dismiss":"modal",type:"button"},gettext("Ok"))))}},{key:"getClassName",value:function(){return this.state.category?"modal-dialog":"modal-dialog modal-message"}},{key:"render",value:function(){return c["default"].createElement("div",{className:this.getClassName(),role:"document"},c["default"].createElement("div",{className:"modal-content"},c["default"].createElement("div",{className:"modal-header"},c["default"].createElement("button",{type:"button",className:"close","data-dismiss":"modal","aria-label":gettext("Close")},c["default"].createElement("span",{"aria-hidden":"true"},"×")),c["default"].createElement("h4",{className:"modal-title"},gettext("Merge threads"))),this.state.category?this.renderForm():this.renderCantMergeMessage()))}}]),t}(m["default"]);a["default"]=H},{"../../../index":291,"../../../reducers/selection":345,"../../../reducers/threads":348,"../../../services/ajax":352,"../../../services/modal":358,"../../../services/snackbar":363,"../../../services/store":364,"../../../utils/validators":380,"../../button":5,"../../category-select":18,"../../form":52,"../../form-group":51,"../../merge-polls":55,"../../select":203,"./errors-list":251,react:"react"}],253:[function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t["default"]=e,t}function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(a,"__esModule",{value:!0});var i=function(){function e(e,t){for(var a=0;a0){var t=n[e.id],r=!t.can_start_threads||e.is_closed&&!t.can_close_threads;a.categoryChoices.push({value:e.id,disabled:r,level:e.level-1,label:e.name}),r||a.state.category||(a.state.category=e.id)}}),a}return s(t,e),i(t,[{key:"getClassName",value:function(){return this.state.category?"modal-dialog":"modal-dialog modal-message"}},{key:"renderForm",value:function(){return c["default"].createElement("form",{onSubmit:this.handleSubmit},c["default"].createElement("div",{className:"modal-body"},c["default"].createElement(m["default"],{label:gettext("New category"),"for":"id_new_category"},c["default"].createElement(v["default"],{id:"id_new_category",onChange:this.bindInput("category"),value:this.state.category,choices:this.categoryChoices}))),c["default"].createElement("div",{className:"modal-footer"},c["default"].createElement("button",{className:"btn btn-default", -"data-dismiss":"modal",disabled:this.state.isLoading,type:"button"},gettext("Cancel")),c["default"].createElement("button",{className:"btn btn-primary"},gettext("Move threads"))))}},{key:"renderCantMoveMessage",value:function(){return c["default"].createElement("div",{className:"modal-body"},c["default"].createElement("div",{className:"message-icon"},c["default"].createElement("span",{className:"material-icon"},"info_outline")),c["default"].createElement("div",{className:"message-body"},c["default"].createElement("p",{className:"lead"},gettext("You can't move threads because there are no categories you are allowed to move them to.")),c["default"].createElement("p",null,gettext("You need permission to start threads in category to be able to move threads to it.")),c["default"].createElement("button",{className:"btn btn-default","data-dismiss":"modal",type:"button"},gettext("Ok"))))}},{key:"render",value:function(){return c["default"].createElement("div",{className:this.getClassName(),role:"document"},c["default"].createElement("div",{className:"modal-content"},c["default"].createElement("div",{className:"modal-header"},c["default"].createElement("button",{type:"button",className:"close","data-dismiss":"modal","aria-label":gettext("Close")},c["default"].createElement("span",{"aria-hidden":"true"},"×")),c["default"].createElement("h4",{className:"modal-title"},gettext("Move threads"))),this.state.category?this.renderForm():this.renderCantMoveMessage()))}}]),t}(f["default"]);a["default"]=k},{"../../../reducers/selection":345,"../../../reducers/threads":348,"../../../services/modal":358,"../../../services/store":364,"../../category-select":18,"../../form":52,"../../form-group":51,react:"react"}],254:[function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t["default"]=e,t}function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(a,"__esModule",{value:!0});var i=function(){function e(e,t){for(var a=0;a1&&void 0!==arguments[1]?arguments[1]:1;S["default"].get(this.props.options.api,{category:e,list:this.props.route.list.type,page:a||1},"threads").then(function(n){t.state.isMounted&&(1===a?D["default"].dispatch((0,C.hydrate)(n.results)):D["default"].dispatch((0,C.append)(n.results,t.getSorting())),t.setState({isLoaded:!0,isBusy:!1,moderation:(0,y.getModerationActions)(D["default"].getState().threads),subcategories:n.subcategories,count:n.count,more:n.more,page:n.page,pages:n.pages}),t.startPolling(e))},function(e){A["default"].apiError(e)})}},{key:"startPolling",value:function(e){L["default"].start({poll:"threads",url:this.props.options.api,data:{category:e,list:this.props.route.list.type},frequency:12e4,update:this.pollResponse})}},{key:"componentDidMount",value:function(){this.setPageTitle(),x["default"].has("THREADS")&&(D["default"].dispatch((0,C.hydrate)(x["default"].pop("THREADS").results)),this.setState({isLoaded:!0})),D["default"].dispatch(P.none())}},{key:"componentWillUnmount",value:function(){this.state.isMounted=!1,L["default"].stop("threads")}},{key:"getTitle",value:function(){return this.props.options.title?this.props.options.title:(0,y.getTitle)(this.props.route)}},{key:"setPageTitle",value:function(){this.props.route.category.level||!x["default"].get("THREADS_ON_INDEX")?B["default"].set((0,y.getPageTitle)(this.props.route)):this.props.options.title?B["default"].set(this.props.options.title):x["default"].get("SETTINGS").forum_index_title?document.title=x["default"].get("SETTINGS").forum_index_title:document.title=x["default"].get("SETTINGS").forum_name}},{key:"getSorting",value:function(){return this.props.route.category.level?p.compareWeight:p.compareGlobalWeight}},{key:"getMoreButton",value:function(){return this.state.more?c["default"].createElement("div",{className:"pager-more"},c["default"].createElement(f["default"],{className:"btn btn-default btn-outline",loading:this.state.isBusy||this.state.busyThreads.length,onClick:this.loadMore},gettext("Show more"))):null}},{key:"getClassName",value:function(){var e="page page-threads";return e+=" page-threads-"+this.props.route.list.type,this.props.route.category.css_class&&(e+=" page-threads-"+this.props.route.category.css_class),e}},{key:"render",value:function(){return c["default"].createElement("div",{className:this.getClassName()},c["default"].createElement(b["default"],{categories:this.props.route.categoriesMap,disabled:!this.state.isLoaded,startThread:this.props.options.startThread,threads:this.props.threads,title:this.getTitle(),toggleNav:this.toggleNav,route:this.props.route,user:this.props.user}),c["default"].createElement(h["default"],{api:this.props.options.api,route:this.props.route,subcategories:this.state.subcategories,user:this.props.user,pageLead:this.props.options.pageLead,threads:this.props.threads,threadsCount:this.state.count,moderation:this.state.moderation,selection:this.props.selection,busyThreads:this.state.busyThreads,addThreads:this.addThreads,freezeThread:this.freezeThread,deleteThread:this.deleteThread,updateThread:this.updateThread,isLoaded:this.state.isLoaded,isBusy:this.state.isBusy},c["default"].createElement(_["default"],{category:this.props.route.category,categories:this.props.route.categoriesMap,list:this.props.route.list,selection:this.props.selection,threads:this.props.threads,diffSize:this.state.diff.results.length,applyDiff:this.applyDiff,showOptions:!!this.props.user.id,isLoaded:this.state.isLoaded,busyThreads:this.state.busyThreads},c["default"].createElement(w["default"],{category:this.props.route.category,emptyMessage:this.props.options.emptyMessage,list:this.props.route.list})),this.getMoreButton()))}}]),t}(k["default"]);a["default"]=F},{"../../index":291,"../../reducers/selection":345,"../../reducers/threads":348,"../../services/ajax":352,"../../services/page-title":360,"../../services/polls":361,"../../services/snackbar":363,"../../services/store":364,"../../utils/sets":378,"../button":5,"../threads-list":227,"../with-dropdown":288,"./compare":246,"./container":247,"./header":248,"./list-empty":249,"./utils":259,react:"react"}],258:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(a,"__esModule",{value:!0});var s=function(){function e(e,t){for(var a=0;a=0})}},{key:"getModerationButton",value:function(){return this.showModerationOptions()?u["default"].createElement("div",{className:"col-xs-6 col-sm-3 col-md-2"},u["default"].createElement("div",{className:"btn-group btn-group-justified"},u["default"].createElement("div",{className:"btn-group dropdown"},u["default"].createElement("button",{type:"button",className:"btn btn-default btn-outline dropdown-toggle","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false",disabled:this.props.disabled||!this.props.selection.length},u["default"].createElement("span",{className:"material-icon"},"settings"),gettext("Options")),u["default"].createElement(p["default"],{addThreads:this.props.addThreads,api:this.props.api,categories:this.props.categories,categoriesMap:this.props.categoriesMap,className:"dropdown-menu dropdown-menu-right stick-to-bottom",deleteThread:this.props.deleteThread,freezeThread:this.props.freezeThread,moderation:this.props.moderation,route:this.props.route,threads:this.getSelectedThreads(),updateThread:this.props.updateThread,user:this.props.user})))):null}},{key:"getSelectionButton",value:function(){return this.showModerationOptions()?u["default"].createElement("div",{className:"col-xs-3 col-sm-2 col-md-1"},u["default"].createElement("div",{className:"btn-group btn-group-justified"},u["default"].createElement("div",{className:"btn-group dropdown"},u["default"].createElement("button",{type:"button",className:"btn btn-default btn-outline btn-icon dropdown-toggle","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false",disabled:this.props.disabled},u["default"].createElement("span",{className:"material-icon"},"select_all")),u["default"].createElement(h["default"],{className:"dropdown-menu dropdown-menu-right stick-to-bottom",threads:this.props.threads})))):null}},{key:"render",value:function(){return u["default"].createElement("div",{className:"row row-toolbar row-toolbar-bottom-margin"},u["default"].createElement("div",{className:"col-xs-3 col-sm-3 col-md-2 dropdown"},this.getCategoryPicker()),u["default"].createElement("div",{className:"hidden-xs col-sm-4 col-md-7"}),this.getModerationButton(),this.getSelectionButton())}}]),t}(u["default"].Component);a["default"]=v},{"./category-picker":245,"./moderation/controls":250,"./moderation/selection":254,react:"react"}],259:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){return e.category.level?e.list.path?{title:e.list.longName,parent:e.category.name}:{title:e.category.name}:c["default"].get("THREADS_ON_INDEX")?e.list.path?{title:e.list.longName}:null:e.list.path?{title:e.list.longName,parent:gettext("Threads")}:{title:gettext("Threads")}}function o(e){return e.category.level?e.category.name:c["default"].get("THREADS_ON_INDEX")?c["default"].get("SETTINGS").forum_index_title?c["default"].get("SETTINGS").forum_index_title:c["default"].get("SETTINGS").forum_name:gettext("Threads")}function l(e,t){return[e.title===t.title,e.weight===t.weight,e.category===t.category,e.last_post===t.last_post,e.last_poster_name===t.last_poster_name].indexOf(!1)>=0}function s(e,t){var a={};return e.forEach(function(e){a[e.id]=e}),t.filter(function(e){return!a[e.id]||l(a[e.id],e)})}function i(e){var t={allow:!1,can_approve:0,can_close:0,can_delete:0,can_hide:0,can_merge:0,can_move:0,can_pin:0,can_pin_globally:0,can_unhide:0};return e.forEach(function(e){e.is_unapproved&&e.acl.can_approve>t.can_approve&&(t.can_approve=e.acl.can_approve),e.acl.can_close>t.can_close&&(t.can_close=e.acl.can_close),e.acl.can_delete>t.can_delete&&(t.can_delete=e.acl.can_delete),e.acl.can_hide>t.can_hide&&(t.can_hide=e.acl.can_hide),e.acl.can_merge>t.can_merge&&(t.can_merge=e.acl.can_merge),e.acl.can_move>t.can_move&&(t.can_move=e.acl.can_move),e.acl.can_pin>t.can_pin&&(t.can_pin=e.acl.can_pin),e.acl.can_pin_globally>t.can_pin_globally&&(t.can_pin_globally=e.acl.can_pin_globally),e.acl.can_unhide>t.can_unhide&&(t.can_unhide=e.acl.can_unhide),t.allow=t.can_approve||t.can_close||t.can_delete||t.can_hide||t.can_merge||t.can_move||t.can_pin||t.can_pin_globally||t.can_unhide}),t}Object.defineProperty(a,"__esModule",{value:!0}),a.getPageTitle=r,a.getTitle=o,a.isThreadChanged=l,a.diffThreads=s,a.getModerationActions=i;var u=e("../../index"),c=n(u)},{"../../index":291}],260:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(a,"__esModule",{value:!0}),a.CompactGuestNav=a.GuestNav=a.GuestMenu=void 0;var s=function(){function e(e,t){for(var a=0;a0&&p["default"].createElement("span",{className:"badge"},t.unread_private_threads))):null}function c(e){return{user:e.auth.user}}Object.defineProperty(a,"__esModule",{value:!0}),a.CompactUserNav=a.UserMenu=void 0;var d=function(){function e(e,t){for(var a=0;at.last_post?-1:e.last_postt.weight?-1:2===t.weight&&e.weightt.weight?-1:e.weight2&&void 0!==arguments[2]?arguments[2]:null;n.props.threads.forEach(function(e){n.props.freezeThread(e.id)});var r=n.props.threads.map(function(e){return e.id});e.push({op:"add",path:"acl",value:!0}),g["default"].patch(n.props.api,{ids:r,ops:e}).then(function(e){n.props.threads.forEach(function(e){n.props.freezeThread(e.id)}),e.forEach(function(e){n.props.updateThread(e)}),O["default"].success(t),a&&a()},function(e){if(n.props.threads.forEach(function(e){n.props.freezeThread(e.id)}),400!==e.status)return O["default"].apiError(e);var t=[],a={};n.props.threads.forEach(function(e){a[e.id]=e}),e.forEach(function(e){var n=e.id,r=e.detail;"undefined"!=typeof a[n]&&t.push({errors:r,thread:a[n]})}),E["default"].show(c["default"].createElement(f["default"],{errors:t}))})},n.pinGlobally=function(){n.callApi([{op:"replace",path:"weight",value:2}],gettext("Selected threads were pinned globally."))},n.pinLocally=function(){n.callApi([{op:"replace",path:"weight",value:1}],gettext("Selected threads were pinned locally."))},n.unpin=function(){n.callApi([{op:"replace",path:"weight",value:0}],gettext("Selected threads were unpinned."))},n.approve=function(){n.callApi([{op:"replace",path:"is-unapproved",value:!1}],gettext("Selected threads were approved."))},n.open=function(){n.callApi([{op:"replace",path:"is-closed",value:!1}],gettext("Selected threads were opened."))},n.close=function(){n.callApi([{op:"replace",path:"is-closed",value:!0}],gettext("Selected threads were closed."))},n.unhide=function(){n.callApi([{op:"replace",path:"is-hidden",value:!1}],gettext("Selected threads were unhidden."))},n.hide=function(){n.callApi([{op:"replace",path:"is-hidden",value:!0}],gettext("Selected threads were hidden."))},n.move=function(){E["default"].show(c["default"].createElement(v["default"],{callApi:n.callApi,categories:n.props.categories,categoriesMap:n.props.categoriesMap,route:n.props.route,user:n.props.user}))},n.merge=function(){var e=[];if(n.props.threads.forEach(function(t){t.acl.can_merge||e.append({id:t.id,title:t.title,errors:[gettext("You don't have permission to merge this thread with others.")]})}),n.props.threads.length<2)O["default"].info(gettext("You have to select at least two threads to merge."));else{if(e.length)return void E["default"].show(c["default"].createElement(f["default"],{errors:e}));E["default"].show(c["default"].createElement(m["default"],n.props))}},n["delete"]=function(){if(confirm(gettext("Are you sure you want to delete selected threads?"))){n.props.threads.map(function(e){n.props.freezeThread(e.id)});var e=n.props.threads.map(function(e){return e.id});g["default"]["delete"](n.props.api,e).then(function(){n.props.threads.map(function(e){n.props.freezeThread(e.id),n.props.deleteThread(e)}),O["default"].success(gettext("Selected threads were deleted."))},function(e){if(400===e.status){var t=e.map(function(e){return e.id});n.props.threads.map(function(e){n.props.freezeThread(e.id),t.indexOf(e.id)===-1&&n.props.deleteThread(e)}),E["default"].show(c["default"].createElement(f["default"],{errors:e}))}else O["default"].apiError(e)})}},r=a,l(n,r)}return s(t,e),i(t,[{key:"getPinGloballyButton",value:function(){return this.props.moderation.can_pin_globally?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.pinGlobally,type:"button"},c["default"].createElement("span",{className:"material-icon"},"bookmark"),gettext("Pin threads globally"))):null}},{key:"getPinLocallyButton",value:function(){return this.props.moderation.can_pin?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.pinLocally,type:"button"},c["default"].createElement("span",{className:"material-icon"},"bookmark_border"),gettext("Pin threads locally"))):null}},{key:"getUnpinButton",value:function(){return this.props.moderation.can_pin?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.unpin,type:"button"},c["default"].createElement("span",{className:"material-icon"},"panorama_fish_eye"),gettext("Unpin threads"))):null}},{key:"getMoveButton",value:function(){return this.props.moderation.can_move?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.move,type:"button"},c["default"].createElement("span",{className:"material-icon"},"arrow_forward"),gettext("Move threads"))):null}},{key:"getMergeButton",value:function(){return this.props.moderation.can_merge?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.merge,type:"button"},c["default"].createElement("span",{className:"material-icon"},"call_merge"),gettext("Merge threads"))):null}},{key:"getApproveButton",value:function(){return this.props.moderation.can_approve?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.approve,type:"button"},c["default"].createElement("span",{className:"material-icon"},"done"),gettext("Approve threads"))):null}},{key:"getOpenButton",value:function(){return this.props.moderation.can_close?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.open,type:"button"},c["default"].createElement("span",{className:"material-icon"},"lock_open"),gettext("Open threads"))):null}},{key:"getCloseButton",value:function(){return this.props.moderation.can_close?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.close,type:"button"},c["default"].createElement("span",{className:"material-icon"},"lock_outline"),gettext("Close threads"))):null}},{key:"getUnhideButton",value:function(){return this.props.moderation.can_unhide?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this.unhide,type:"button"},c["default"].createElement("span",{className:"material-icon"},"visibility"),gettext("Unhide threads"))):null}},{key:"getHideButton",value:function(){return this.props.moderation.can_hide?c["default"].createElement("li",null,c["default"].createElement("button",{onClick:this.hide,type:"button",className:"btn btn-link"},c["default"].createElement("span",{className:"material-icon"},"visibility_off"),gettext("Hide threads"))):null}},{key:"getDeleteButton",value:function(){return this.props.moderation.can_delete?c["default"].createElement("li",null,c["default"].createElement("button",{className:"btn btn-link",onClick:this["delete"],type:"button"},c["default"].createElement("span",{className:"material-icon"},"clear"),gettext("Delete threads"))):null}},{key:"render",value:function(){return c["default"].createElement("ul",{className:this.props.className},this.getPinGloballyButton(),this.getPinLocallyButton(),this.getUnpinButton(),this.getMoveButton(),this.getMergeButton(),this.getApproveButton(),this.getOpenButton(),this.getCloseButton(),this.getUnhideButton(),this.getHideButton(),this.getDeleteButton())}}]),t}(c["default"].Component));a["default"]=x},{"../../../reducers/selection":345,"../../../services/ajax":352,"../../../services/modal":358,"../../../services/snackbar":363,"../../../services/store":364,"../../../utils/countdown":369,"./errors-list":251,"./merge":252,"./move":253,react:"react"}],251:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function s(e){var t=e.errors,a=e.thread;return c["default"].createElement("li",null,c["default"].createElement("h5",null,a.title),t.map(function(e,t){return c["default"].createElement("p",null,e)}))}Object.defineProperty(a,"__esModule",{value:!0});var i=function(){function e(e,t){for(var a=0;a0){var t=a.acl[e.id],n=!t.can_start_threads||e.is_closed&&!t.can_close_threads;a.categoryChoices.push({value:e.id,disabled:n,level:e.level-1,label:e.name}),n||a.state.category||(a.state.category=e.id)}}),a.isHiddenChoices=[{value:0,icon:"visibility",label:gettext("No")},{value:1,icon:"visibility_off",label:gettext("Yes")}],a.isClosedChoices=[{value:!1,icon:"lock_outline",label:gettext("No")},{value:!0,icon:"lock",label:gettext("Yes")}],a}return s(t,e),i(t,[{key:"clean",value:function(){return!!this.isValid()||(A["default"].error(gettext("Form contains errors.")),this.setState({errors:this.validate()}),!1)}},{key:"send",value:function(){return S["default"].post(w["default"].get("MERGE_THREADS_API"),this.getFormdata())}},{key:"getWeightChoices",value:function(){var e=[{value:0,icon:"remove",label:gettext("Not pinned")},{value:1,icon:"bookmark_border",label:gettext("Pinned locally")}];return 2==this.acl[this.state.category].can_pin_threads&&e.push({value:2,icon:"bookmark",label:gettext("Pinned globally")}),e}},{key:"renderWeightField",value:function(){return this.acl[this.state.category].can_pin_threads?c["default"].createElement(v["default"],{label:gettext("Thread weight"),"for":"id_weight"},c["default"].createElement(_["default"],{id:"id_weight",onChange:this.bindInput("weight"),value:this.state.weight,choices:this.getWeightChoices()})):null}},{key:"renderHiddenField",value:function(){return this.acl[this.state.category].can_hide_threads?c["default"].createElement(v["default"],{label:gettext("Hide thread"),"for":"id_is_hidden"},c["default"].createElement(_["default"],{id:"id_is_closed",onChange:this.bindInput("is_hidden"),value:this.state.is_hidden,choices:this.isHiddenChoices})):null}},{key:"renderClosedField",value:function(){return this.acl[this.state.category].can_close_threads?c["default"].createElement(v["default"],{label:gettext("Close thread"),"for":"id_is_closed"},c["default"].createElement(_["default"],{id:"id_is_closed",onChange:this.bindInput("is_closed"),value:this.state.is_closed,choices:this.isClosedChoices})):null}},{key:"renderForm",value:function(){return c["default"].createElement("form",{onSubmit:this.handleSubmit},c["default"].createElement("div",{className:"modal-body"},c["default"].createElement(v["default"],{label:gettext("Thread title"),"for":"id_title",validation:this.state.errors.title},c["default"].createElement("input",{id:"id_title",className:"form-control",type:"text",onChange:this.bindInput("title"),value:this.state.title})),c["default"].createElement("div",{className:"clearfix"}),c["default"].createElement(v["default"],{label:gettext("Category"),"for":"id_category",validation:this.state.errors.category},c["default"].createElement(y["default"],{id:"id_category",onChange:this.onCategoryChange,value:this.state.category,choices:this.categoryChoices})),c["default"].createElement("div",{className:"clearfix"}),this.renderWeightField(),this.renderHiddenField(),this.renderClosedField()),c["default"].createElement("div",{className:"modal-footer"},c["default"].createElement("button",{className:"btn btn-default","data-dismiss":"modal",disabled:this.state.isLoading,type:"button"},gettext("Cancel")),c["default"].createElement(f["default"],{className:"btn-primary",loading:this.state.isLoading},gettext("Merge threads"))))}},{key:"renderCantMergeMessage",value:function(){return c["default"].createElement("div",{className:"modal-body"},c["default"].createElement("div",{className:"message-icon"},c["default"].createElement("span",{className:"material-icon"},"info_outline")),c["default"].createElement("div",{className:"message-body"},c["default"].createElement("p",{className:"lead"},gettext("You can't move threads because there are no categories you are allowed to move them to.")),c["default"].createElement("p",null,gettext("You need permission to start threads in category to be able to merge threads to it.")),c["default"].createElement("button",{className:"btn btn-default","data-dismiss":"modal",type:"button"},gettext("Ok"))))}},{key:"getClassName",value:function(){return this.state.category?"modal-dialog":"modal-dialog modal-message"}},{key:"render",value:function(){return c["default"].createElement("div",{className:this.getClassName(),role:"document"},c["default"].createElement("div",{className:"modal-content"},c["default"].createElement("div",{className:"modal-header"},c["default"].createElement("button",{type:"button",className:"close","data-dismiss":"modal","aria-label":gettext("Close")},c["default"].createElement("span",{"aria-hidden":"true"},"×")),c["default"].createElement("h4",{className:"modal-title"},gettext("Merge threads"))),this.state.category?this.renderForm():this.renderCantMergeMessage()))}}]),t}(m["default"]);a["default"]=H},{"../../../index":291,"../../../reducers/selection":345,"../../../reducers/threads":348,"../../../services/ajax":352,"../../../services/modal":358,"../../../services/snackbar":363,"../../../services/store":364,"../../../utils/validators":380,"../../button":5,"../../category-select":18,"../../form":52,"../../form-group":51,"../../merge-polls":55,"../../select":203,"./errors-list":251,react:"react"}],253:[function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t["default"]=e,t}function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(a,"__esModule",{value:!0});var i=function(){function e(e,t){for(var a=0;a0){var t=n[e.id],r=!t.can_start_threads||e.is_closed&&!t.can_close_threads;a.categoryChoices.push({value:e.id,disabled:r,level:e.level-1,label:e.name}),r||a.state.category||(a.state.category=e.id)}}),a}return s(t,e),i(t,[{key:"getClassName",value:function(){return this.state.category?"modal-dialog":"modal-dialog modal-message"}},{key:"renderForm",value:function(){return c["default"].createElement("form",{onSubmit:this.handleSubmit},c["default"].createElement("div",{className:"modal-body"},c["default"].createElement(m["default"],{label:gettext("New category"),"for":"id_new_category"},c["default"].createElement(v["default"],{id:"id_new_category",onChange:this.bindInput("category"),value:this.state.category,choices:this.categoryChoices}))),c["default"].createElement("div",{className:"modal-footer"},c["default"].createElement("button",{className:"btn btn-default", +"data-dismiss":"modal",disabled:this.state.isLoading,type:"button"},gettext("Cancel")),c["default"].createElement("button",{className:"btn btn-primary"},gettext("Move threads"))))}},{key:"renderCantMoveMessage",value:function(){return c["default"].createElement("div",{className:"modal-body"},c["default"].createElement("div",{className:"message-icon"},c["default"].createElement("span",{className:"material-icon"},"info_outline")),c["default"].createElement("div",{className:"message-body"},c["default"].createElement("p",{className:"lead"},gettext("You can't move threads because there are no categories you are allowed to move them to.")),c["default"].createElement("p",null,gettext("You need permission to start threads in category to be able to move threads to it.")),c["default"].createElement("button",{className:"btn btn-default","data-dismiss":"modal",type:"button"},gettext("Ok"))))}},{key:"render",value:function(){return c["default"].createElement("div",{className:this.getClassName(),role:"document"},c["default"].createElement("div",{className:"modal-content"},c["default"].createElement("div",{className:"modal-header"},c["default"].createElement("button",{type:"button",className:"close","data-dismiss":"modal","aria-label":gettext("Close")},c["default"].createElement("span",{"aria-hidden":"true"},"×")),c["default"].createElement("h4",{className:"modal-title"},gettext("Move threads"))),this.state.category?this.renderForm():this.renderCantMoveMessage()))}}]),t}(f["default"]);a["default"]=k},{"../../../reducers/selection":345,"../../../reducers/threads":348,"../../../services/modal":358,"../../../services/store":364,"../../category-select":18,"../../form":52,"../../form-group":51,react:"react"}],254:[function(e,t,a){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(t[a]=e[a]);return t["default"]=e,t}function r(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(a,"__esModule",{value:!0});var i=function(){function e(e,t){for(var a=0;a1&&void 0!==arguments[1]?arguments[1]:1;S["default"].get(this.props.options.api,{category:e,list:this.props.route.list.type,page:a||1},"threads").then(function(n){t.state.isMounted&&(1===a?D["default"].dispatch((0,C.hydrate)(n.results)):D["default"].dispatch((0,C.append)(n.results,t.getSorting())),t.setState({isLoaded:!0,isBusy:!1,moderation:(0,y.getModerationActions)(D["default"].getState().threads),subcategories:n.subcategories,count:n.count,more:n.more,page:n.page,pages:n.pages}),t.startPolling(e))},function(e){A["default"].apiError(e)})}},{key:"startPolling",value:function(e){L["default"].start({poll:"threads",url:this.props.options.api,data:{category:e,list:this.props.route.list.type},frequency:12e4,update:this.pollResponse})}},{key:"componentDidMount",value:function(){this.setPageTitle(),x["default"].has("THREADS")&&(D["default"].dispatch((0,C.hydrate)(x["default"].pop("THREADS").results)),this.setState({isLoaded:!0})),D["default"].dispatch(P.none())}},{key:"componentWillUnmount",value:function(){this.state.isMounted=!1,L["default"].stop("threads")}},{key:"getTitle",value:function(){return this.props.options.title?this.props.options.title:(0,y.getTitle)(this.props.route)}},{key:"setPageTitle",value:function(){this.props.route.category.level||!x["default"].get("THREADS_ON_INDEX")?B["default"].set((0,y.getPageTitle)(this.props.route)):this.props.options.title?B["default"].set(this.props.options.title):x["default"].get("SETTINGS").forum_index_title?document.title=x["default"].get("SETTINGS").forum_index_title:document.title=x["default"].get("SETTINGS").forum_name}},{key:"getSorting",value:function(){return this.props.route.category.level?p.compareWeight:p.compareGlobalWeight}},{key:"getMoreButton",value:function(){return this.state.more?c["default"].createElement("div",{className:"pager-more"},c["default"].createElement(f["default"],{className:"btn btn-default btn-outline",loading:this.state.isBusy||this.state.busyThreads.length,onClick:this.loadMore},gettext("Show more"))):null}},{key:"getClassName",value:function(){var e="page page-threads";return e+=" page-threads-"+this.props.route.list.type,this.props.route.category.css_class&&(e+=" page-threads-"+this.props.route.category.css_class),e}},{key:"render",value:function(){return c["default"].createElement("div",{className:this.getClassName()},c["default"].createElement(b["default"],{categories:this.props.route.categoriesMap,disabled:!this.state.isLoaded,startThread:this.props.options.startThread,threads:this.props.threads,title:this.getTitle(),toggleNav:this.toggleNav,route:this.props.route,user:this.props.user}),c["default"].createElement(h["default"],{api:this.props.options.api,route:this.props.route,subcategories:this.state.subcategories,user:this.props.user,pageLead:this.props.options.pageLead,threads:this.props.threads,threadsCount:this.state.count,moderation:this.state.moderation,selection:this.props.selection,busyThreads:this.state.busyThreads,addThreads:this.addThreads,freezeThread:this.freezeThread,deleteThread:this.deleteThread,updateThread:this.updateThread,isLoaded:this.state.isLoaded,isBusy:this.state.isBusy},c["default"].createElement(_["default"],{category:this.props.route.category,categories:this.props.route.categoriesMap,list:this.props.route.list,selection:this.props.selection,threads:this.props.threads,diffSize:this.state.diff.results.length,applyDiff:this.applyDiff,showOptions:!!this.props.user.id,isLoaded:this.state.isLoaded,busyThreads:this.state.busyThreads},c["default"].createElement(w["default"],{category:this.props.route.category,emptyMessage:this.props.options.emptyMessage,list:this.props.route.list})),this.getMoreButton()))}}]),t}(k["default"]);a["default"]=F},{"../../index":291,"../../reducers/selection":345,"../../reducers/threads":348,"../../services/ajax":352,"../../services/page-title":360,"../../services/polls":361,"../../services/snackbar":363,"../../services/store":364,"../../utils/sets":378,"../button":5,"../threads-list":227,"../with-dropdown":288,"./compare":246,"./container":247,"./header":248,"./list-empty":249,"./utils":259,react:"react"}],258:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(a,"__esModule",{value:!0});var s=function(){function e(e,t){for(var a=0;a=0})}},{key:"getModerationButton",value:function(){return this.showModerationOptions()?u["default"].createElement("div",{className:"col-xs-6 col-sm-3 col-md-2"},u["default"].createElement("div",{className:"btn-group btn-group-justified"},u["default"].createElement("div",{className:"btn-group dropdown"},u["default"].createElement("button",{type:"button",className:"btn btn-default btn-outline dropdown-toggle","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false",disabled:this.props.disabled||!this.props.selection.length},u["default"].createElement("span",{className:"material-icon"},"settings"),gettext("Options")),u["default"].createElement(p["default"],{addThreads:this.props.addThreads,api:this.props.api,categories:this.props.categories,categoriesMap:this.props.categoriesMap,className:"dropdown-menu dropdown-menu-right stick-to-bottom",deleteThread:this.props.deleteThread,freezeThread:this.props.freezeThread,moderation:this.props.moderation,route:this.props.route,threads:this.getSelectedThreads(),updateThread:this.props.updateThread,user:this.props.user})))):null}},{key:"getSelectionButton",value:function(){return this.showModerationOptions()?u["default"].createElement("div",{className:"col-xs-3 col-sm-2 col-md-1"},u["default"].createElement("div",{className:"btn-group btn-group-justified"},u["default"].createElement("div",{className:"btn-group dropdown"},u["default"].createElement("button",{type:"button",className:"btn btn-default btn-outline btn-icon dropdown-toggle","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false",disabled:this.props.disabled},u["default"].createElement("span",{className:"material-icon"},"select_all")),u["default"].createElement(h["default"],{className:"dropdown-menu dropdown-menu-right stick-to-bottom",threads:this.props.threads})))):null}},{key:"render",value:function(){return u["default"].createElement("div",{className:"row row-toolbar row-toolbar-bottom-margin"},u["default"].createElement("div",{className:"col-xs-3 col-sm-3 col-md-2 dropdown"},this.getCategoryPicker()),u["default"].createElement("div",{className:"hidden-xs col-sm-4 col-md-7"}),this.getModerationButton(),this.getSelectionButton())}}]),t}(u["default"].Component);a["default"]=v},{"./category-picker":245,"./moderation/controls":250,"./moderation/selection":254,react:"react"}],259:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){return e.category.level?e.list.path?{title:e.list.longName,parent:e.category.name}:{title:e.category.name}:c["default"].get("THREADS_ON_INDEX")?e.list.path?{title:e.list.longName}:null:e.list.path?{title:e.list.longName,parent:gettext("Threads")}:{title:gettext("Threads")}}function o(e){return e.category.level?e.category.name:c["default"].get("THREADS_ON_INDEX")?c["default"].get("SETTINGS").forum_index_title?c["default"].get("SETTINGS").forum_index_title:c["default"].get("SETTINGS").forum_name:gettext("Threads")}function l(e,t){return[e.title===t.title,e.weight===t.weight,e.category===t.category,e.last_post===t.last_post,e.last_poster_name===t.last_poster_name].indexOf(!1)>=0}function s(e,t){var a={};return e.forEach(function(e){a[e.id]=e}),t.filter(function(e){return!a[e.id]||l(a[e.id],e)})}function i(e){var t={allow:!1,can_approve:0,can_close:0,can_delete:0,can_hide:0,can_merge:0,can_move:0,can_pin:0,can_pin_globally:0,can_unhide:0};return e.forEach(function(e){e.is_unapproved&&e.acl.can_approve>t.can_approve&&(t.can_approve=e.acl.can_approve),e.acl.can_close>t.can_close&&(t.can_close=e.acl.can_close),e.acl.can_delete>t.can_delete&&(t.can_delete=e.acl.can_delete),e.acl.can_hide>t.can_hide&&(t.can_hide=e.acl.can_hide),e.acl.can_merge>t.can_merge&&(t.can_merge=e.acl.can_merge),e.acl.can_move>t.can_move&&(t.can_move=e.acl.can_move),e.acl.can_pin>t.can_pin&&(t.can_pin=e.acl.can_pin),e.acl.can_pin_globally>t.can_pin_globally&&(t.can_pin_globally=e.acl.can_pin_globally),e.acl.can_unhide>t.can_unhide&&(t.can_unhide=e.acl.can_unhide),t.allow=t.can_approve||t.can_close||t.can_delete||t.can_hide||t.can_merge||t.can_move||t.can_pin||t.can_pin_globally||t.can_unhide}),t}Object.defineProperty(a,"__esModule",{value:!0}),a.getPageTitle=r,a.getTitle=o,a.isThreadChanged=l,a.diffThreads=s,a.getModerationActions=i;var u=e("../../index"),c=n(u)},{"../../index":291}],260:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(a,"__esModule",{value:!0}),a.CompactGuestNav=a.GuestNav=a.GuestMenu=void 0;var s=function(){function e(e,t){for(var a=0;a0&&p["default"].createElement("span",{className:"badge"},t.unread_private_threads))):null}function c(e){return{user:e.auth.user}}Object.defineProperty(a,"__esModule",{value:!0}),a.CompactUserNav=a.UserMenu=void 0;var d=function(){function e(e,t){for(var a=0;a0,key:e})})))}}]),t}(u["default"].Component);a["default"]=f},{"./change-preview":264,react:"react"}],268:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(a,"__esModule",{value:!0});var s=function(){function e(e,t){for(var a=0;a0,key:e})})))))}}]),t}(c["default"].Component);a["default"]=h},{"../../../utils/random":375,"./list-item-preview":277,react:"react"}],280:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(a,"__esModule",{value:!0});var s=function(){function e(e,t){for(var a=0;a0?u["default"].createElement(h["default"],{users:this.props.users,trackedPeriod:this.state.trackedPeriod,count:this.state.count}):u["default"].createElement(d["default"],{trackedPeriod:this.state.trackedPeriod}):u["default"].createElement(p["default"],null)}}]),t}(u["default"].Component);a["default"]=N},{"../../../index":291,"../../../reducers/users":351,"../../../services/page-title":360,"../../../services/polls":361,"../../../services/store":364,"./list-empty":276,"./list-preview":279,"./list-ready":280,react:"react"}],282:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e){var t=e.baseUrl,a=e.lists;return o["default"].createElement("ul",{className:"nav nav-pills"},a.map(function(e){var a=c(t,e);return o["default"].createElement(i["default"],{path:a,key:a},o["default"].createElement(l.Link,{to:a},e.name))}))};var r=e("react"),o=n(r),l=e("react-router"),s=e("../li"),i=n(s),u=e("../../index"),c=(n(u),function(e,t){var a=e;return a+="rank"===t.component?t.slug:t.component,a+"/"})},{"../../index":291,"../li":53,react:"react","react-router":"react-router"}],283:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(a,"__esModule",{value:!0});var s=function(){function e(e,t){for(var a=0;a1){var t="";return e.previous&&(t=e.previous+"/"),d["default"].createElement(f.Link,{className:"btn btn-default btn-block btn-icon btn-outline",onClick:m["default"],to:e.baseUrl+t,title:gettext("Go to previous page")},d["default"].createElement("span",{className:"material-icon"},"chevron_left"))}return d["default"].createElement("span",{className:"btn btn-default btn-block btn-icon btn-outline disabled",title:gettext("Go to previous page")},d["default"].createElement("span",{className:"material-icon"},"chevron_left"))}function s(e){if(e.isLoaded&&e.more){var t="";return e.next&&(t=e.next+"/"),d["default"].createElement(f.Link,{className:"btn btn-default btn-block btn-icon btn-outline",onClick:m["default"],to:e.baseUrl+t,title:gettext("Go to next page")},d["default"].createElement("span",{className:"material-icon"},"chevron_right"))}return d["default"].createElement("span",{className:"btn btn-default btn-block btn-icon btn-outline disabled",title:gettext("Go to next page")},d["default"].createElement("span",{className:"material-icon"},"chevron_right"))}function i(e){return e.isLoaded&&e.last?d["default"].createElement(f.Link,{className:"btn btn-default btn-block btn-icon btn-outline",onClick:m["default"],to:e.baseUrl+e.last+"/",title:gettext("Go to last page")},d["default"].createElement("span",{className:"material-icon"},"last_page")):d["default"].createElement("span",{className:"btn btn-default btn-block btn-icon btn-outline disabled",title:gettext("Go to last page")},d["default"].createElement("span",{className:"material-icon"},"last_page"))}function u(e){var t=null;return e.more?(t=ngettext("There is %(more)s more member with this role.","There are %(more)s more members with this role.",e.more),t=interpolate(t,{more:e.more},!0)):t=gettext("There are no more members with this role."),d["default"].createElement("p",null,t)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e){return 1===e.pages?null:d["default"].createElement("div",{className:"row row-toolbar"},d["default"].createElement("div",{className:"col-xs-12 text-center visible-xs-block"},d["default"].createElement(u,{more:e.more}),d["default"].createElement("div",{className:"toolbar-vertical-spacer"})),d["default"].createElement("div",{className:"col-md-7"},d["default"].createElement("div",{className:"row"},d["default"].createElement("div",{className:"col-sm-4 col-md-5"},d["default"].createElement(r,e)),d["default"].createElement("div",{className:"col-sm-8 col-md-7 hidden-xs"},d["default"].createElement(u,{more:e.more})))))},a.Pager=r,a.FirstPage=o,a.PreviousPage=l,a.NextPage=s,a.LastPage=i,a.More=u;var c=e("react"),d=n(c),f=e("react-router"),p=e("../../../utils/reset-scroll"),m=n(p)},{"../../../utils/reset-scroll":376,react:"react","react-router":"react-router"}],286:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(a,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t0){var e=y["default"].get("USERS_LIST_URL")+this.props.route.rank.slug+"/";return c["default"].createElement(m["default"],s({baseUrl:e,users:this.props.users},this.state))}return c["default"].createElement("p",{className:"lead"},gettext("There are no users with this rank at the moment."))}return c["default"].createElement(v["default"],null)}},{key:"render",value:function(){return c["default"].createElement("div",{className:this.getClassName()},c["default"].createElement("div",{className:"container"},this.getRankDescription(),this.getComponent()))}}]),t}(c["default"].Component);a["default"]=x},{"../../../index":291,"../../../reducers/users":351,"../../../services/page-title":360,"../../../services/polls":361,"../../../services/store":364,"../../page-lead":85,"./list":284,"./list-loading":283,react:"react"}],287:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function s(e){return{tick:e.tick.tick,user:e.auth.user,users:e.users}}function i(){var e=[];return O["default"].get("USERS_LISTS").forEach(function(t){"rank"===t.component?(e.push({path:O["default"].get("USERS_LIST_URL")+t.slug+"/:page/",component:(0,f.connect)(s)(g["default"]),rank:t}),e.push({path:O["default"].get("USERS_LIST_URL")+t.slug+"/",component:(0,f.connect)(s)(g["default"]),rank:t})):"active-posters"===t.component&&e.push({path:O["default"].get("USERS_LIST_URL")+t.component+"/",component:(0,f.connect)(s)(b["default"]),extra:{name:t.name}})}),e}Object.defineProperty(a,"__esModule",{value:!0});var u=function(){function e(e,t){for(var a=0;a0&&void 0!==arguments[0]&&arguments[0];return{type:d,soft:e}}function l(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case u:var a=Object.assign({},e);return a.user=Object.assign({},e.user,t.patch),a;case c:return Object.assign({},e,{signedIn:t.user});case d:return Object.assign({},e,{isAuthenticated:!1,isAnonymous:!0,signedOut:!t.soft});case s.UPDATE_AVATAR:if(e.isAuthenticated&&e.user.id===t.userId){var n=Object.assign({},e);return n.user=Object.assign({},e.user,{avatars:t.avatars}),n}return e;case s.UPDATE_USERNAME:if(e.isAuthenticated&&e.user.id===t.userId){var r=Object.assign({},e);return r.user=Object.assign({},e.user,{username:t.username,slug:t.slug}),r}return e;default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.SIGN_OUT=a.SIGN_IN=a.PATCH_USER=a.initialState=void 0,a.patch=n,a.signIn=r,a.signOut=o,a["default"]=l;var s=e("./users"),i=a.initialState={signedIn:!1,signedOut:!1},u=a.PATCH_USER="PATCH_USER",c=a.SIGN_IN="SIGN_IN",d=a.SIGN_OUT="SIGN_OUT"},{"./users":351}],338:[function(e,t,a){"use strict";function n(e){return{type:o,state:e}}function r(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case o:return t.state;default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.replace=n,a["default"]=r;var o=a.REPLACE_PARTICIPANTS="REPLACE_PARTICIPANTS"},{}],339:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){var t=!1;for(var a in e.choices){var n=e.choices[a];if(n.selected){t=!0;break}}return Object.assign({},e,{posted_on:(0,f["default"])(e.posted_on),hasSelectedChoices:t,endsOn:e.length?(0,f["default"])(e.posted_on).add(e.length,"days"):null,isBusy:!1})}function o(){return{type:p}}function l(){return{type:m}}function s(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return{type:v,state:t?e:r(e)}}function i(e){return{type:b,data:e}}function u(){return{type:h}}function c(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case p:return Object.assign({},e,{isBusy:!0});case m:return Object.assign({},e,{isBusy:!1});case h:return{isBusy:!1};case v:return t.state;case b:return Object.assign({},e,t.data);default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.UPDATE_POLL=a.REPLACE_POLL=a.REMOVE_POLL=a.RELEASE_POLL=a.BUSY_POLL=void 0,a.hydrate=r,a.busy=o,a.release=l,a.replace=s,a.update=i,a.remove=u,a["default"]=c;var d=e("moment"),f=n(d),p=a.BUSY_POLL="BUSY_POLL",m=a.RELEASE_POLL="RELEASE_POLL",h=a.REMOVE_POLL="REMOVE_POLL",v=a.REPLACE_POLL="REPLACE_POLL",b=a.UPDATE_POLL="UPDATE_POLL"},{moment:"moment"}],340:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){return Object.assign({},e,{posted_on:(0,u["default"])(e.posted_on),updated_on:(0,u["default"])(e.updated_on),hidden_on:(0,u["default"])(e.hidden_on),attachments:e.attachments?e.attachments.map(o):null,poster:e.poster?(0,c.hydrateUser)(e.poster):null,isSelected:!1,isBusy:!1,isDeleted:!1})}function o(e){return Object.assign({},e,{uploaded_on:(0,u["default"])(e.uploaded_on)})}function l(e,t){return{type:d,post:e,patch:t}}function s(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case d:return e.id==t.post.id?Object.assign({},e,t.patch):e;default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.PATCH_POST=void 0,a.hydrate=r,a.hydrateAttachment=o,a.patch=l,a["default"]=s;var i=e("moment"),u=n(i),c=e("./users"),d=a.PATCH_POST="PATCH_POST"},{"./users":351,moment:"moment"}],341:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){return{type:b,post:e}}function o(e){return{type:y,post:e}}function l(){return{type:g}}function s(e){return Object.assign({},e,{results:e.results.map(m.hydrate),isLoaded:!0,isBusy:!1,isSelected:!1})}function i(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return{type:_,state:t?e:s(e)}}function u(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return{type:v,state:t?e:s(e)}}function c(){return{type:E}}function d(e){return{type:w,update:e}}function f(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,a=function(){switch(t.type){case b:var a=e.results.map(function(e){return e.id==t.post.id?Object.assign({},e,{isSelected:!0}):e});return{v:Object.assign({},e,{results:a})};case y:var n=e.results.map(function(e){return e.id==t.post.id?Object.assign({},e,{isSelected:!1}):e});return{v:Object.assign({},e,{results:n})};case g:var r=e.results.map(function(e){return Object.assign({},e,{isSelected:!1})});return{v:Object.assign({},e,{results:r})};case v:var o=e.results.slice(),l=e.results.map(function(e){return e.id});return t.state.results.map(function(e){l.indexOf(e.id)===-1&&o.push(e)}),{v:Object.assign({},t.state,{results:o})};case _:return{v:t.state};case E:return{v:Object.assign({},e,{isLoaded:!1})};case w:return{v:Object.assign({},e,t.update)};case m.PATCH_POST:var s=e.results.map(function(e){return(0,h["default"])(e,t)});return{v:Object.assign({},e,{results:s})};default:return{v:e}}}();if("object"===("undefined"==typeof a?"undefined":p(a)))return a.v}Object.defineProperty(a,"__esModule",{value:!0}),a.UPDATE_POSTS=a.UNLOAD_POSTS=a.LOAD_POSTS=a.DESELECT_POSTS=a.DESELECT_POST=a.SELECT_POST=a.APPEND_POSTS=void 0;var p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};a.select=r,a.deselect=o,a.deselectAll=l,a.hydrate=s,a.load=i,a.append=u,a.unload=c,a.update=d,a["default"]=f;var m=e("./post"),h=n(m),v=a.APPEND_POSTS="APPEND_POSTS",b=a.SELECT_POST="SELECT_POST",y=a.DESELECT_POST="DESELECT_POST",g=a.DESELECT_POSTS="DESELECT_POSTS",_=a.LOAD_POSTS="LOAD_POSTS",E=a.UNLOAD_POSTS="UNLOAD_POSTS",w=a.UPDATE_POSTS="UPDATE_POSTS"},{"./post":340}],342:[function(e,t,a){"use strict";function n(e){return{type:o,newState:e}}function r(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case o:return t.newState;default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.load=n,a["default"]=r;var o=a.LOAD_DETAILS="LOAD_DETAILS"},{}],343:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){return{type:c,profile:e}}function o(e){return{type:d,patch:e}}function l(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case c:return Object.assign({},t.profile,{joined_on:(0,i["default"])(t.profile.joined_on),status:(0,u.hydrateStatus)(t.profile.status)});case d:return Object.assign({},e,t.patch);case u.UPDATE_AVATAR:return e.id===t.userId?Object.assign({},e,{avatars:t.avatars}):e;case u.UPDATE_USERNAME:return e.id===t.userId?Object.assign({},e,{username:t.username,slug:t.slug}):e;default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.PATCH_PROFILE=a.HYDRATE_PROFILE=void 0,a.hydrate=r,a.patch=o,a["default"]=l;var s=e("moment"),i=n(s),u=e("./users"),c=a.HYDRATE_PROFILE="HYDRATE_PROFILE",d=a.PATCH_PROFILE="PATCH_PROFILE"},{"./users":351,moment:"moment"}],344:[function(e,t,a){"use strict";function n(e){return{type:s,state:{isLoading:!1,providers:e}}}function r(e){return{type:i,update:e}}function o(e){return{type:u,provider:e}}function l(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case s:return t.state;case i:return Object.assign({},e,t.update);case u:return Object.assign({},e,{providers:e.providers.map(function(e){return e.id===t.provider.id?t.provider:e})});default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.replace=n,a.update=r,a.updateProvider=o,a["default"]=l;var s=a.REPLACE_SEARCH="REPLACE_SEARCH",i=a.UPDATE_SEARCH="UPDATE_SEARCH",u=a.UPDATE_SEARCH_PROVIDER="UPDATE_SEARCH_PROVIDER";a.initialState={isLoading:!1,query:"",providers:[]}},{}],345:[function(e,t,a){"use strict";function n(e){return{type:i,items:e}}function r(){return{type:u}}function o(e){return{type:c,item:e}}function l(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case i:return t.items;case u:return[];case c:return(0,s.toggle)(e,t.item);default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.SELECT_ITEM=a.SELECT_NONE=a.SELECT_ALL=void 0,a.all=n,a.none=r,a.item=o,a["default"]=l;var s=e("../utils/sets"),i=a.SELECT_ALL="SELECT_ALL",u=a.SELECT_NONE="SELECT_NONE",c=a.SELECT_ITEM="SELECT_ITEM"},{"../utils/sets":378}],346:[function(e,t,a){"use strict";function n(e,t){return{type:s,message:e,messageType:t}}function r(){return{type:i}}function o(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return t.type===s?{type:t.messageType,message:t.message,isVisible:!0}:t.type===i?Object.assign({},e,{isVisible:!1}):e}Object.defineProperty(a,"__esModule",{value:!0}),a.showSnackbar=n,a.hideSnackbar=r,a["default"]=o;var l=a.initialState={type:"info",message:"",isVisible:!1},s=a.SHOW_SNACKBAR="SHOW_SNACKBAR",i=a.HIDE_SNACKBAR="HIDE_SNACKBAR"},{}],347:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){return Object.assign({},e,{started_on:(0,f["default"])(e.started_on),last_post_on:(0,f["default"])(e.last_post_on),isBusy:!1})}function o(){return{type:m}}function l(){return{type:h}}function s(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return{type:v,state:t?e:r(e)}}function i(e){return{type:b,data:e}}function u(e){return{type:y,data:e}}function c(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case m:return Object.assign({},e,{isBusy:!0});case h:return Object.assign({},e,{isBusy:!1});case p.REMOVE_POLL:return Object.assign({},e,{poll:null});case p.REPLACE_POLL:return Object.assign({},e,{poll:t.state});case v:return t.state;case b:return Object.assign({},e,t.data);case y:var a=Object.assign({},e.acl,t.data);return Object.assign({},e,{acl:a});default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.UPDATE_THREAD_ACL=a.UPDATE_THREAD=a.REPLACE_THREAD=a.RELEASE_THREAD=a.BUSY_THREAD=void 0,a.hydrate=r,a.busy=o,a.release=l,a.replace=s,a.update=i,a.updateAcl=u,a["default"]=c;var d=e("moment"),f=n(d),p=e("./poll"),m=a.BUSY_THREAD="BUSY_THREAD",h=a.RELEASE_THREAD="RELEASE_THREAD",v=a.REPLACE_THREAD="REPLACE_THREAD",b=a.UPDATE_THREAD="UPDATE_THREAD",y=a.UPDATE_THREAD_ACL="UPDATE_THREAD_ACL"},{"./poll":339,moment:"moment"}],348:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e,t){return{type:b,items:e,sorting:t}}function o(e){return{type:y,thread:e}}function l(e,t){return{type:g,category:e,categoriesMap:t}}function s(e){return{type:_,items:e}}function i(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return{type:E,thread:e,patch:t,sorting:a}}function u(e){return{type:w,sorting:e}}function c(e){var t=[];return O.forEach(function(a){e[a]&&t.push(a)}),t}function d(e){return Object.assign({},e,{started_on:(0,m["default"])(e.started_on),last_post_on:(0,m["default"])(e.last_post_on),moderation:c(e.acl)})}function f(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case b:var a=(0,v["default"])(t.items.map(d),e);return a.sort(t.sorting);case y:return e.filter(function(e){return e.id!==t.thread.id});case g:return e.filter(function(e){var a=t.categoriesMap[e.category];return a.lft>=t.category.lft&&a.rght<=t.category.rght||2==e.weight});case _:return t.items.map(d);case E:var n=e.map(function(e){return e.id===t.thread.id?Object.assign({},e,t.patch):e});return t.sorting?n.sort(t.sorting):n;case w:return e.sort(t.sorting);default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.MODERATION_PERMISSIONS=a.SORT_THREADS=a.PATCH_THREAD=a.HYDRATE_THREADS=a.FILTER_THREADS=a.DELETE_THREAD=a.APPEND_THREADS=void 0,a.append=r,a.deleteThread=o,a.filterThreads=l,a.hydrate=s,a.patch=i,a.sort=u,a.getThreadModerationOptions=c,a.hydrateThread=d,a["default"]=f;var p=e("moment"),m=n(p),h=e("../utils/concat-unique"),v=n(h),b=a.APPEND_THREADS="APPEND_THREADS",y=a.DELETE_THREAD="DELETE_THREAD",g=a.FILTER_THREADS="FILTER_THREADS",_=a.HYDRATE_THREADS="HYDRATE_THREADS",E=a.PATCH_THREAD="PATCH_THREAD",w=a.SORT_THREADS="SORT_THREADS",O=a.MODERATION_PERMISSIONS=["can_announce","can_approve","can_close","can_hide","can_move","can_merge","can_pin","can_review"]; -},{"../utils/concat-unique":368,moment:"moment"}],349:[function(e,t,a){"use strict";function n(){return{type:l}}function r(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return t.type===l?Object.assign({},e,{tick:e.tick+1}):e}Object.defineProperty(a,"__esModule",{value:!0}),a.doTick=n,a["default"]=r;var o=a.initialState={tick:0},l=a.TICK="TICK"},{}],350:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e,t,a){return{type:m,change:e,user:t,changedBy:a}}function o(e){return{type:h,items:e}}function l(e){return{type:v,items:e}}function s(e){return Object.assign({},e,{changed_on:(0,c["default"])(e.changed_on)})}function i(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case m:var a=e.slice();return a.unshift({id:Math.floor(Date.now()/1e3),changed_by:t.changedBy,changed_by_username:t.changedBy.username,changed_on:(0,c["default"])(),new_username:t.change.username,old_username:t.user.username}),a;case h:return(0,p["default"])(e,t.items.map(s));case v:return t.items.map(s);case d.UPDATE_AVATAR:return e.map(function(e){return e=Object.assign({},e),e.changed_by&&e.changed_by.id===t.userId&&(e.changed_by=Object.assign({},e.changed_by,{avatars:t.avatars})),e});case d.UPDATE_USERNAME:return e.map(function(e){return e=Object.assign({},e),e.changed_by&&e.changed_by.id===t.userId&&(e.changed_by=Object.assign({},e.changed_by,{username:t.username,slug:t.slug})),Object.assign({},e)});default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.HYDRATE_HISTORY=a.APPEND_HISTORY=a.ADD_NAME_CHANGE=void 0,a.addNameChange=r,a.append=o,a.hydrate=l,a.hydrateNamechange=s,a["default"]=i;var u=e("moment"),c=n(u),d=e("./users"),f=e("../utils/concat-unique"),p=n(f),m=a.ADD_NAME_CHANGE="ADD_NAME_CHANGE",h=a.APPEND_HISTORY="APPEND_HISTORY",v=a.HYDRATE_HISTORY="HYDRATE_HISTORY"},{"../utils/concat-unique":368,"./users":351,moment:"moment"}],351:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){return{type:h,items:e}}function o(e){return{type:v,items:e}}function l(e){return e?Object.assign({},e,{last_click:e.last_click?(0,f["default"])(e.last_click):null,banned_until:e.banned_until?(0,f["default"])(e.banned_until):null}):null}function s(e){return Object.assign({},e,{joined_on:(0,f["default"])(e.joined_on),status:l(e.status)})}function i(e,t){return{type:b,userId:e.id,avatars:t}}function u(e,t,a){return{type:y,userId:e.id,username:t,slug:a}}function c(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case h:return(0,m["default"])(e,t.items.map(s));case v:return t.items.map(s);case b:return e.map(function(e){return e=Object.assign({},e),e.id===t.userId&&(e.avatars=t.avatars),e});default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.UPDATE_USERNAME=a.UPDATE_AVATAR=a.HYDRATE_USERS=a.APPEND_USERS=void 0,a.append=r,a.hydrate=o,a.hydrateStatus=l,a.hydrateUser=s,a.updateAvatar=i,a.updateUsername=u,a["default"]=c;var d=e("moment"),f=n(d),p=e("../utils/concat-unique"),m=n(p),h=a.APPEND_USERS="APPEND_USERS",v=a.HYDRATE_USERS="HYDRATE_USERS",b=a.UPDATE_AVATAR="UPDATE_AVATAR",y=a.UPDATE_USERNAME="UPDATE_USERNAME"},{"../utils/concat-unique":368,moment:"moment"}],352:[function(e,t,a){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(a,"__esModule",{value:!0});var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o=function(){function e(e,t){for(var a=0;a1&&void 0!==arguments[1]&&arguments[1];this._included.indexOf(e)===-1&&(this._included.push(e),this._include(e,t))}},{key:"_include",value:function(e,t){$.ajax({url:(t?"":this._staticUrl)+e,cache:!0,dataType:"script"})}}]),e}();a["default"]=new o},{}],356:[function(e,t,a){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(a,"__esModule",{value:!0});var r=function(){function e(e,t){for(var a=0;a0){var r=t.substr(t.indexOf("?")+1),s=r.split("&").filter(function(e){return"t="===e.substr(0,2)})[0];if(s){var i=s.substr(2).split("m");"s"===i[0].substr(-1)?n+=parseInt(i[0].substr(0,i[0].length-1)):(n+=60*parseInt(i[0]),i[1]&&"s"===i[1].substr(-1)&&(n+=parseInt(i[1].substr(0,i[1].length-1))))}}return{start:n,video:a}}function o(e){var t=e;return"https://"===e.substr(0,8)?t=t.substr(8):"http://"===e.substr(0,7)&&(t=t.substr(7)),"www."===t.substr(0,4)&&(t=t.substr(4)),t}function l(e){if(e.indexOf("youtu")===-1)return null;var t=e.match(i);return t?t[1]:null}Object.defineProperty(a,"__esModule",{value:!0});var s=function(){function e(e,t){for(var a=0;acode"),a=0;aa"),a=0;a');$(e).replaceWith(n),n.wrap('
')}}]),e}();a["default"]=new u},{}],360:[function(e,t,a){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(a,"__esModule",{value:!0});var r=function(){function e(e,t){for(var a=0;a1){var a=interpolate(gettext("page: %(page)s"),{page:e.page},!0);t+=" ("+a+")"}e.parent&&(t+=" | "+e.parent),document.title=t+" | "+this._forumName}}]),e}();a["default"]=new o},{}],361:[function(e,t,a){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(a,"__esModule",{value:!0});var r=function(){function e(e,t){for(var a=0;a0&&void 0!==arguments[0]?arguments[0]:0;n+=1,n>200?a():"undefined"==typeof zxcvbn?window.setTimeout(function(){r(n)},200):(e._isLoaded=!0,t())};n()})}},{key:"_loadedPromise",value:function(){return new Promise(function(e){e()})}}]),e}();a["default"]=new o},{}],366:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e,t){if(u["default"].render(s["default"].createElement(c.Provider,{store:v["default"].getStore()},s["default"].createElement(y,{message:e.message,expires:e.expires_on?(0,o["default"])(e.expires_on):null})),document.getElementById("page-mount")),"undefined"==typeof t||t){var a=m["default"].get("SETTINGS").forum_name;document.title=gettext("You are banned")+" | "+a,window.history.pushState({},"",m["default"].get("BANNED_URL"))}};var r=e("moment"),o=n(r),l=e("react"),s=n(l),i=e("react-dom"),u=n(i),c=e("react-redux"),d=e("../components/banned-page"),f=n(d),p=e("../index"),m=n(p),h=e("../services/store"),v=n(h),b=function(e){return e.tick},y=(0,c.connect)(b)(f["default"])},{"../components/banned-page":4,"../index":291,"../services/store":364,moment:"moment",react:"react","react-dom":"react-dom","react-redux":"react-redux"}],367:[function(e,t,a){"use strict";Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e,t){var a=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=[],r=[];if(e.forEach(function(e){r.push(e),r.length===t&&(n.push(r),r=[])}),a!==!1&&r.length>0&&r.length"']/g,function(e){return n[e]})};var n={"&":"&","<":"<",">":">",'"':""","'":"'"}},{}],371:[function(e,t,a){"use strict";function n(e){return e.toFixed(1)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e){return e>1073741824?n(e/1073741824)+" GB":e>1048576?n(e/1048576)+" MB":e>1024?n(e/1024)+" KB":n(e)+" B"},a.roundSize=n},{}],372:[function(e,t,a){"use strict";Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e){return n.test($.trim(e))};var n=new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i")},{}],373:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e,t){var a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],n=document.getElementById(t),r=e.props?e:o["default"].createElement(e,null);n&&(a?s["default"].render(o["default"].createElement(i.Provider,{store:c["default"].getStore()},r),n):s["default"].render(r,n))};var r=e("react"),o=n(r),l=e("react-dom"),s=n(l),i=e("react-redux"),u=e("../services/store"),c=n(u)},{"../services/store":364,react:"react","react-dom":"react-dom","react-redux":"react-redux"}],374:[function(e,t,a){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(a,"__esModule",{value:!0});var r=function(){function e(e,t){for(var a=0;a0&&a.length!==r.length;)o-=1,e.forEach(t);return n}}]),e}();a["default"]=o},{}],375:[function(e,t,a){"use strict";function n(e,t){return Math.floor(Math.random()*(t-e+1))+e}function r(e,t){for(var a=new Array(n(e,t)),r=0;r=0?e.filter(function(e){return e!==t}):e}function o(e,t){if(e.indexOf(t)===-1){var a=e.slice();return a.push(t),a}return e.filter(function(e){return e!==t})}Object.defineProperty(a,"__esModule",{value:!0}),a.push=n,a.remove=r,a.toggle=o},{}],379:[function(e,t,a){"use strict";Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e,t){if(e=(e+"").toLowerCase(),t=(t+"").toLowerCase(),t.length<=0)return 0;for(var a=0,n=0,r=t.length;;){if(n=e.indexOf(t,n),!(n>=0))break;a+=1,n+=r}return a}},{}],380:[function(e,t,a){"use strict";function n(){return function(e){if(0===$.trim(e).length)return gettext("This field is required.")}}function r(e){return function(t){if(!d.test(t))return e||gettext("Enter a valid email address.")}}function o(e,t){return function(a){var n="",r=$.trim(a).length;if(re)return n=t?t(e,r):ngettext("Ensure this value has at most %(limit_value)s character (it has %(show_value)s).","Ensure this value has at most %(limit_value)s characters (it has %(show_value)s).",e),interpolate(n,{limit_value:e,show_value:r},!0)}}function s(e){var t=function(e){return ngettext("Username must be at least %(limit_value)s character long.","Username must be at least %(limit_value)s characters long.",e)};return o(e,t)}function i(e){var t=function(e){return ngettext("Username cannot be longer than %(limit_value)s character.","Username cannot be longer than %(limit_value)s characters.",e)};return l(e,t)}function u(){return function(e){if(!f.test($.trim(e)))return gettext("Username can only contain latin alphabet letters and digits.")}}function c(e){return function(t){var a=t.length;if(a()[\]\.,;:\s@\"]+(\.[^<>()[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i,f=new RegExp("^[0-9a-z]+$","i")},{}]},{},[291,292,293,294,295,310,311,312,313,314,315,316,317,333,334,335,336,296,297,298,299,300,301,302,303,304,305,306,307,308,309,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332]); +u["default"].addInitializer({name:"component:profile",initializer:r,after:"reducer:profile-hydrate"})},{"../../components/profile/root":188,"../../index":291,"../../utils/routed-component":377,"react-redux":"react-redux"}],301:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){document.getElementById("request-activation-link-mount")&&(0,c["default"])(i["default"],"request-activation-link-mount",!1)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../components/request-activation-link"),i=n(s),u=e("../../utils/mount-component"),c=n(u);l["default"].addInitializer({name:"component:request-activation-link",initializer:r,after:"store"})},{"../../components/request-activation-link":193,"../../index":291,"../../utils/mount-component":373}],302:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){document.getElementById("request-password-reset-mount")&&(0,c["default"])(i["default"],"request-password-reset-mount",!1)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../components/request-password-reset"),i=n(s),u=e("../../utils/mount-component"),c=n(u);l["default"].addInitializer({name:"component:request-password-reset",initializer:r,after:"store"})},{"../../components/request-password-reset":194,"../../index":291,"../../utils/mount-component":373}],303:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){document.getElementById("reset-password-form-mount")&&(0,c["default"])(i["default"],"reset-password-form-mount",!1)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../.."),l=n(o),s=e("../../components/reset-password-form"),i=n(s),u=e("../../utils/mount-component"),c=n(u);l["default"].addInitializer({name:"component:reset-password-form",initializer:r,after:"store"})},{"../..":291,"../../components/reset-password-form":195,"../../utils/mount-component":373}],304:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){"misago:search"===e.get("CURRENT_LINK")&&(0,c["default"])({paths:(0,l["default"])(i["default"].get("SEARCH_PROVIDERS"))})}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../components/search"),l=n(o),s=e("../.."),i=n(s),u=e("../../utils/routed-component"),c=n(u);i["default"].addInitializer({name:"component:search",initializer:r,after:"store"})},{"../..":291,"../../components/search":197,"../../utils/routed-component":377}],305:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){(0,c["default"])((0,o.connect)(i.select)(i.Snackbar),"snackbar-mount")}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("react-redux"),l=e("../../index"),s=n(l),i=e("../../components/snackbar"),u=e("../../utils/mount-component"),c=n(u);s["default"].addInitializer({name:"component:snackbar",initializer:r,after:"snackbar"})},{"../../components/snackbar":205,"../../index":291,"../../utils/mount-component":373,"react-redux":"react-redux"}],306:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){e.has("THREAD")&&e.has("POSTS")&&(0,u["default"])({paths:(0,o.paths)()})}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../components/thread/root"),l=e("../../index"),s=n(l),i=e("../../utils/routed-component"),u=n(i);s["default"].addInitializer({name:"component:thread",initializer:r,after:"store"})},{"../../components/thread/root":222,"../../index":291,"../../utils/routed-component":377}],307:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){e.has("THREADS")&&e.has("CATEGORIES")&&(0,c["default"])({paths:(0,l.paths)(e.get("user"),o(e))})}function o(e){var t=e.get("CURRENT_LINK");return t.substr(0,d.length)===d?{api:e.get("PRIVATE_THREADS_API"),startThread:{mode:"START_PRIVATE",submit:i["default"].get("PRIVATE_THREADS_API")},title:gettext("Private threads"),pageLead:gettext("Private threads are threads which only those that started them and those they have invited may see and participate in."),emptyMessage:gettext("You aren't participating in any private threads.")}:{api:e.get("THREADS_API")}}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r,a.getListOptions=o;var l=e("../../components/threads/root"),s=e("../../index"),i=n(s),u=e("../../utils/routed-component"),c=n(u),d="misago:private-threads";i["default"].addInitializer({name:"component:threads",initializer:r,after:"store"})},{"../../components/threads/root":256,"../../index":291,"../../utils/routed-component":377}],308:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){(0,c["default"])((0,o.connect)(i.select)(i.UserMenu),"user-menu-mount"),(0,c["default"])((0,o.connect)(i.select)(i.CompactUserMenu),"user-menu-compact-mount")}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("react-redux"),l=e("../../index"),s=n(l),i=e("../../components/user-menu/root"),u=e("../../utils/mount-component"),c=n(u);s["default"].addInitializer({name:"component:user-menu",initializer:r,after:"store"})},{"../../components/user-menu/root":261,"../../index":291,"../../utils/mount-component":373,"react-redux":"react-redux"}],309:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){e.has("USERS_LISTS")&&(0,c["default"])({root:i["default"].get("USERS_LIST_URL"),component:l["default"],paths:(0,o.paths)()})}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../components/users/root"),l=n(o),s=e("../../index"),i=n(s),u=e("../../utils/routed-component"),c=n(u);i["default"].addInitializer({name:"component:users",initializer:r,after:"store"})},{"../../components/users/root":287,"../../index":291,"../../utils/routed-component":377}],310:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){i["default"].init(e.get("STATIC_URL"))}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../index"),l=n(o),s=e("../services/include"),i=n(s);l["default"].addInitializer({name:"include",initializer:r})},{"../index":291,"../services/include":355}],311:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){i["default"].init("misago_")}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../index"),l=n(o),s=e("../services/local-storage"),i=n(s);l["default"].addInitializer({name:"local-storage",initializer:r})},{"../index":291,"../services/local-storage":356}],312:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){var e=document.getElementById("mobile-navbar-dropdown-mount");e&&i["default"].init(e)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../index"),l=n(o),s=e("../services/mobile-navbar-dropdown"),i=n(s);l["default"].addInitializer({name:"dropdown",initializer:r,before:"store"})},{"../index":291,"../services/mobile-navbar-dropdown":357}],313:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){var e=document.getElementById("modal-mount");e&&i["default"].init(e)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../index"),l=n(o),s=e("../services/modal"),i=n(s);l["default"].addInitializer({name:"modal",initializer:r,before:"store"})},{"../index":291,"../services/modal":358}],314:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){l["default"].locale($("html").attr("lang"))}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("moment"),l=n(o),s=e("../index"),i=n(s);i["default"].addInitializer({name:"moment",initializer:r})},{"../index":291,moment:"moment"}],315:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){i["default"].init(e.get("SETTINGS").forum_index_title,e.get("SETTINGS").forum_name)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../index"),l=n(o),s=e("../services/page-title"),i=n(s);l["default"].addInitializer({name:"page-title",initializer:r})},{"../index":291,"../services/page-title":360}],316:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){f["default"].init(i["default"],c["default"])}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../index"),l=n(o),s=e("../services/ajax"),i=n(s),u=e("../services/snackbar"),c=n(u),d=e("../services/polls"),f=n(d);l["default"].addInitializer({name:"polls",initializer:r})},{"../index":291,"../services/ajax":352,"../services/polls":361,"../services/snackbar":363}],317:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){c["default"].init(i["default"],f["default"],document.getElementById("posting-placeholder"))}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../index"),l=n(o),s=e("../services/ajax"),i=n(s),u=e("../services/posting"),c=n(u),d=e("../services/snackbar"),f=n(d);l["default"].addInitializer({name:"posting",initializer:r})},{"../index":291,"../services/ajax":352,"../services/posting":362,"../services/snackbar":363}],318:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){c["default"].addReducer("auth",i["default"],Object.assign({isAuthenticated:e.get("isAuthenticated"),isAnonymous:!e.get("isAuthenticated"),user:e.get("user")},s.initialState))}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../reducers/auth"),i=n(s),u=e("../../services/store"),c=n(u);l["default"].addInitializer({name:"reducer:auth",initializer:r,before:"store"})},{"../../index":291,"../../reducers/auth":337,"../../services/store":364}],319:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){var e=null;l["default"].has("THREAD")&&(e=l["default"].get("THREAD").participants),c["default"].addReducer("participants",i["default"],e||[])}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../reducers/participants"),i=n(s),u=e("../../services/store"),c=n(u);l["default"].addInitializer({name:"reducer:participants",initializer:r,before:"store"})},{"../../index":291,"../../reducers/participants":338,"../../services/store":364}],320:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){var e=null;e=l["default"].has("THREAD")&&l["default"].get("THREAD").poll?(0,s.hydrate)(l["default"].get("THREAD").poll):{isBusy:!1},c["default"].addReducer("poll",i["default"],e)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../reducers/poll"),i=n(s),u=e("../../services/store"),c=n(u);l["default"].addInitializer({name:"reducer:poll",initializer:r,before:"store"})},{"../../index":291,"../../reducers/poll":339,"../../services/store":364}],321:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){var e=null;e=l["default"].has("POSTS")?(0,s.hydrate)(l["default"].get("POSTS")):{isLoaded:!1,isBusy:!1},c["default"].addReducer("posts",i["default"],e)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../reducers/posts"),i=n(s),u=e("../../services/store"),c=n(u);l["default"].addInitializer({name:"reducer:posts",initializer:r,before:"store"})},{"../../index":291,"../../reducers/posts":341,"../../services/store":364}],322:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){var e=null;l["default"].has("PROFILE_DETAILS")&&(e=l["default"].get("PROFILE_DETAILS")),c["default"].addReducer("profile-details",i["default"],e||{})}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../reducers/profile-details"),i=n(s),u=e("../../services/store"),c=n(u);l["default"].addInitializer({name:"reducer:profile-details",initializer:r,before:"store"})},{"../../index":291,"../../reducers/profile-details":342,"../../services/store":364}],323:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){l["default"].has("PROFILE")&&u["default"].dispatch((0,s.hydrate)(l["default"].get("PROFILE")))}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../reducers/profile"),i=e("../../services/store"),u=n(i);l["default"].addInitializer({name:"reducer:profile-hydrate",initializer:r,after:"store"})},{"../../index":291,"../../reducers/profile":343,"../../services/store":364}],324:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){c["default"].addReducer("profile",i["default"],{})}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../reducers/profile"),i=n(s),u=e("../../services/store"),c=n(u);l["default"].addInitializer({name:"reducer:profile",initializer:r,before:"store"})},{"../../index":291,"../../reducers/profile":343,"../../services/store":364}],325:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){c["default"].addReducer("search",i["default"],Object.assign({},s.initialState,{providers:l["default"].get("SEARCH_PROVIDERS")||[],query:l["default"].get("SEARCH_QUERY")||""}))}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../.."),l=n(o),s=e("../../reducers/search"),i=n(s),u=e("../../services/store"),c=n(u);l["default"].addInitializer({name:"reducer:search",initializer:r,before:"store"})},{"../..":291,"../../reducers/search":344,"../../services/store":364}],326:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){c["default"].addReducer("selection",i["default"],[])}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../reducers/selection"),i=n(s),u=e("../../services/store"),c=n(u);l["default"].addInitializer({name:"reducer:selection",initializer:r,before:"store"})},{"../../index":291,"../../reducers/selection":345,"../../services/store":364}],327:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){c["default"].addReducer("snackbar",i["default"],s.initialState)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../reducers/snackbar"),i=n(s),u=e("../../services/store"),c=n(u);l["default"].addInitializer({name:"reducer:snackbar",initializer:r,before:"store"})},{"../../index":291,"../../reducers/snackbar":346,"../../services/store":364}],328:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){var e=null;e=l["default"].has("THREAD")?(0,s.hydrate)(l["default"].get("THREAD")):{isBusy:!1},c["default"].addReducer("thread",i["default"],e)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../reducers/thread"),i=n(s),u=e("../../services/store"),c=n(u);l["default"].addInitializer({name:"reducer:thread",initializer:r,before:"store"})},{"../../index":291,"../../reducers/thread":347,"../../services/store":364}],329:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){c["default"].addReducer("threads",i["default"],[])}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../reducers/threads"),i=n(s),u=e("../../services/store"),c=n(u);l["default"].addInitializer({name:"reducer:threads",initializer:r,before:"store"})},{"../../index":291,"../../reducers/threads":348,"../../services/store":364}],330:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){c["default"].addReducer("tick",i["default"],s.initialState)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../reducers/tick"),i=n(s),u=e("../../services/store"),c=n(u);l["default"].addInitializer({name:"reducer:tick",initializer:r,before:"store"})},{"../../index":291,"../../reducers/tick":349,"../../services/store":364}],331:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){c["default"].addReducer("username-history",i["default"],[])}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../reducers/username-history"),i=n(s),u=e("../../services/store"),c=n(u);l["default"].addInitializer({name:"reducer:username-history",initializer:r,before:"store"})},{"../../index":291,"../../reducers/username-history":350,"../../services/store":364}],332:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){c["default"].addReducer("users",i["default"],[])}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../../index"),l=n(o),s=e("../../reducers/users"),i=n(s),u=e("../../services/store"),c=n(u);l["default"].addInitializer({name:"reducer:users",initializer:r,before:"store"})},{"../../index":291,"../../reducers/users":351,"../../services/store":364}],333:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){i["default"].init(c["default"])}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../index"),l=n(o),s=e("../services/snackbar"),i=n(s),u=e("../services/store"),c=n(u);l["default"].addInitializer({name:"snackbar",initializer:r,after:"store"})},{"../index":291,"../services/snackbar":363,"../services/store":364}],334:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){i["default"].init()}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../index"),l=n(o),s=e("../services/store"),i=n(s);l["default"].addInitializer({name:"store",initializer:r,before:"_end"})},{"../index":291,"../services/store":364}],335:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){window.setInterval(function(){u["default"].dispatch((0,s.doTick)())},c)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../index"),l=n(o),s=e("../reducers/tick"),i=e("../services/store"),u=n(i),c=5e4;l["default"].addInitializer({name:"tick-start",initializer:r,after:"store"})},{"../index":291,"../reducers/tick":349,"../services/store":364}],336:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(){c["default"].init(i["default"])}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=r;var o=e("../index"),l=n(o),s=e("../services/include"),i=n(s),u=e("../services/zxcvbn"),c=n(u);l["default"].addInitializer({name:"zxcvbn",initializer:r})},{"../index":291,"../services/include":355,"../services/zxcvbn":365}],337:[function(e,t,a){"use strict";function n(e){return{type:u,patch:e}}function r(e){return{type:c,user:e}}function o(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return{type:d,soft:e}}function l(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case u:var a=Object.assign({},e);return a.user=Object.assign({},e.user,t.patch),a;case c:return Object.assign({},e,{signedIn:t.user});case d:return Object.assign({},e,{isAuthenticated:!1,isAnonymous:!0,signedOut:!t.soft});case s.UPDATE_AVATAR:if(e.isAuthenticated&&e.user.id===t.userId){var n=Object.assign({},e);return n.user=Object.assign({},e.user,{avatars:t.avatars}),n}return e;case s.UPDATE_USERNAME:if(e.isAuthenticated&&e.user.id===t.userId){var r=Object.assign({},e);return r.user=Object.assign({},e.user,{username:t.username,slug:t.slug}),r}return e;default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.SIGN_OUT=a.SIGN_IN=a.PATCH_USER=a.initialState=void 0,a.patch=n,a.signIn=r,a.signOut=o,a["default"]=l;var s=e("./users"),i=a.initialState={signedIn:!1,signedOut:!1},u=a.PATCH_USER="PATCH_USER",c=a.SIGN_IN="SIGN_IN",d=a.SIGN_OUT="SIGN_OUT"},{"./users":351}],338:[function(e,t,a){"use strict";function n(e){return{type:o,state:e}}function r(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case o:return t.state;default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.replace=n,a["default"]=r;var o=a.REPLACE_PARTICIPANTS="REPLACE_PARTICIPANTS"},{}],339:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){var t=!1;for(var a in e.choices){var n=e.choices[a];if(n.selected){t=!0;break}}return Object.assign({},e,{posted_on:(0,f["default"])(e.posted_on),hasSelectedChoices:t,endsOn:e.length?(0,f["default"])(e.posted_on).add(e.length,"days"):null,isBusy:!1})}function o(){return{type:p}}function l(){return{type:m}}function s(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return{type:v,state:t?e:r(e)}}function i(e){return{type:b,data:e}}function u(){return{type:h}}function c(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case p:return Object.assign({},e,{isBusy:!0});case m:return Object.assign({},e,{isBusy:!1});case h:return{isBusy:!1};case v:return t.state;case b:return Object.assign({},e,t.data);default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.UPDATE_POLL=a.REPLACE_POLL=a.REMOVE_POLL=a.RELEASE_POLL=a.BUSY_POLL=void 0,a.hydrate=r,a.busy=o,a.release=l,a.replace=s,a.update=i,a.remove=u,a["default"]=c;var d=e("moment"),f=n(d),p=a.BUSY_POLL="BUSY_POLL",m=a.RELEASE_POLL="RELEASE_POLL",h=a.REMOVE_POLL="REMOVE_POLL",v=a.REPLACE_POLL="REPLACE_POLL",b=a.UPDATE_POLL="UPDATE_POLL"},{moment:"moment"}],340:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){return Object.assign({},e,{posted_on:(0,u["default"])(e.posted_on),updated_on:(0,u["default"])(e.updated_on),hidden_on:(0,u["default"])(e.hidden_on),attachments:e.attachments?e.attachments.map(o):null,poster:e.poster?(0,c.hydrateUser)(e.poster):null,isSelected:!1,isBusy:!1,isDeleted:!1})}function o(e){return Object.assign({},e,{uploaded_on:(0,u["default"])(e.uploaded_on)})}function l(e,t){return{type:d,post:e,patch:t}}function s(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case d:return e.id==t.post.id?Object.assign({},e,t.patch):e;default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.PATCH_POST=void 0,a.hydrate=r,a.hydrateAttachment=o,a.patch=l,a["default"]=s;var i=e("moment"),u=n(i),c=e("./users"),d=a.PATCH_POST="PATCH_POST"},{"./users":351,moment:"moment"}],341:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){return{type:v,post:e}}function o(e){return{type:b,post:e}}function l(){return{type:y}}function s(e){return Object.assign({},e,{results:e.results.map(p.hydrate),isLoaded:!0,isBusy:!1,isSelected:!1})}function i(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return{type:g,state:t?e:s(e)}}function u(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return{type:h,state:t?e:s(e)}}function c(){return{type:_}}function d(e){return{type:E,update:e}}function f(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case v:var a=e.results.map(function(e){return e.id==t.post.id?Object.assign({},e,{isSelected:!0}):e});return Object.assign({},e,{results:a});case b:var n=e.results.map(function(e){return e.id==t.post.id?Object.assign({},e,{isSelected:!1}):e});return Object.assign({},e,{results:n});case y:var r=e.results.map(function(e){return Object.assign({},e,{isSelected:!1})});return Object.assign({},e,{results:r});case h:var o=e.results.slice(),l=e.results.map(function(e){return e.id});return t.state.results.map(function(e){l.indexOf(e.id)===-1&&o.push(e)}),Object.assign({},t.state,{results:o});case g:return t.state;case _:return Object.assign({},e,{isLoaded:!1});case E:return Object.assign({},e,t.update);case p.PATCH_POST:var s=e.results.map(function(e){return(0,m["default"])(e,t)});return Object.assign({},e,{results:s});default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.UPDATE_POSTS=a.UNLOAD_POSTS=a.LOAD_POSTS=a.DESELECT_POSTS=a.DESELECT_POST=a.SELECT_POST=a.APPEND_POSTS=void 0,a.select=r,a.deselect=o,a.deselectAll=l,a.hydrate=s,a.load=i,a.append=u,a.unload=c,a.update=d,a["default"]=f;var p=e("./post"),m=n(p),h=a.APPEND_POSTS="APPEND_POSTS",v=a.SELECT_POST="SELECT_POST",b=a.DESELECT_POST="DESELECT_POST",y=a.DESELECT_POSTS="DESELECT_POSTS",g=a.LOAD_POSTS="LOAD_POSTS",_=a.UNLOAD_POSTS="UNLOAD_POSTS",E=a.UPDATE_POSTS="UPDATE_POSTS"},{"./post":340}],342:[function(e,t,a){"use strict";function n(e){return{type:o,newState:e}}function r(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case o:return t.newState;default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.load=n,a["default"]=r;var o=a.LOAD_DETAILS="LOAD_DETAILS"},{}],343:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){return{type:c,profile:e}}function o(e){return{type:d,patch:e}}function l(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case c:return Object.assign({},t.profile,{joined_on:(0,i["default"])(t.profile.joined_on),status:(0,u.hydrateStatus)(t.profile.status)});case d:return Object.assign({},e,t.patch);case u.UPDATE_AVATAR:return e.id===t.userId?Object.assign({},e,{avatars:t.avatars}):e;case u.UPDATE_USERNAME:return e.id===t.userId?Object.assign({},e,{username:t.username,slug:t.slug}):e;default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.PATCH_PROFILE=a.HYDRATE_PROFILE=void 0,a.hydrate=r,a.patch=o,a["default"]=l;var s=e("moment"),i=n(s),u=e("./users"),c=a.HYDRATE_PROFILE="HYDRATE_PROFILE",d=a.PATCH_PROFILE="PATCH_PROFILE"},{"./users":351,moment:"moment"}],344:[function(e,t,a){"use strict";function n(e){return{type:s,state:{isLoading:!1,providers:e}}}function r(e){return{type:i,update:e}}function o(e){return{type:u,provider:e}}function l(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case s:return t.state;case i:return Object.assign({},e,t.update);case u:return Object.assign({},e,{providers:e.providers.map(function(e){return e.id===t.provider.id?t.provider:e})});default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.replace=n,a.update=r,a.updateProvider=o,a["default"]=l;var s=a.REPLACE_SEARCH="REPLACE_SEARCH",i=a.UPDATE_SEARCH="UPDATE_SEARCH",u=a.UPDATE_SEARCH_PROVIDER="UPDATE_SEARCH_PROVIDER";a.initialState={isLoading:!1,query:"",providers:[]}},{}],345:[function(e,t,a){"use strict";function n(e){return{type:i,items:e}}function r(){return{type:u}}function o(e){return{type:c,item:e}}function l(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case i:return t.items;case u:return[];case c:return(0,s.toggle)(e,t.item);default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.SELECT_ITEM=a.SELECT_NONE=a.SELECT_ALL=void 0,a.all=n,a.none=r,a.item=o,a["default"]=l;var s=e("../utils/sets"),i=a.SELECT_ALL="SELECT_ALL",u=a.SELECT_NONE="SELECT_NONE",c=a.SELECT_ITEM="SELECT_ITEM"},{"../utils/sets":378}],346:[function(e,t,a){"use strict";function n(e,t){return{type:s,message:e,messageType:t}}function r(){return{type:i}}function o(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return t.type===s?{type:t.messageType,message:t.message,isVisible:!0}:t.type===i?Object.assign({},e,{isVisible:!1}):e}Object.defineProperty(a,"__esModule",{value:!0}),a.showSnackbar=n,a.hideSnackbar=r,a["default"]=o;var l=a.initialState={type:"info",message:"",isVisible:!1},s=a.SHOW_SNACKBAR="SHOW_SNACKBAR",i=a.HIDE_SNACKBAR="HIDE_SNACKBAR"},{}],347:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){return Object.assign({},e,{started_on:(0,f["default"])(e.started_on),last_post_on:(0,f["default"])(e.last_post_on),isBusy:!1})}function o(){return{type:m}}function l(){return{type:h}}function s(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return{type:v,state:t?e:r(e)}}function i(e){return{type:b,data:e}}function u(e){return{type:y,data:e}}function c(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case m:return Object.assign({},e,{isBusy:!0});case h:return Object.assign({},e,{isBusy:!1});case p.REMOVE_POLL:return Object.assign({},e,{poll:null});case p.REPLACE_POLL:return Object.assign({},e,{poll:t.state});case v:return t.state;case b:return Object.assign({},e,t.data);case y:var a=Object.assign({},e.acl,t.data);return Object.assign({},e,{acl:a});default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.UPDATE_THREAD_ACL=a.UPDATE_THREAD=a.REPLACE_THREAD=a.RELEASE_THREAD=a.BUSY_THREAD=void 0,a.hydrate=r,a.busy=o,a.release=l,a.replace=s,a.update=i,a.updateAcl=u,a["default"]=c;var d=e("moment"),f=n(d),p=e("./poll"),m=a.BUSY_THREAD="BUSY_THREAD",h=a.RELEASE_THREAD="RELEASE_THREAD",v=a.REPLACE_THREAD="REPLACE_THREAD",b=a.UPDATE_THREAD="UPDATE_THREAD",y=a.UPDATE_THREAD_ACL="UPDATE_THREAD_ACL"},{"./poll":339,moment:"moment"}],348:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e,t){return{type:b,items:e,sorting:t}}function o(e){return{type:y,thread:e}}function l(e,t){return{type:g,category:e,categoriesMap:t}}function s(e){return{type:_,items:e}}function i(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return{type:E,thread:e,patch:t,sorting:a}}function u(e){return{type:w,sorting:e}}function c(e){var t=[];return O.forEach(function(a){e[a]&&t.push(a)}),t}function d(e){return Object.assign({},e,{started_on:(0,m["default"])(e.started_on),last_post_on:(0,m["default"])(e.last_post_on),moderation:c(e.acl)})}function f(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case b:var a=(0,v["default"])(t.items.map(d),e);return a.sort(t.sorting);case y:return e.filter(function(e){return e.id!==t.thread.id});case g:return e.filter(function(e){var a=t.categoriesMap[e.category];return a.lft>=t.category.lft&&a.rght<=t.category.rght||2==e.weight});case _:return t.items.map(d);case E:var n=e.map(function(e){return e.id===t.thread.id?Object.assign({},e,t.patch):e});return t.sorting?n.sort(t.sorting):n;case w:return e.sort(t.sorting);default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.MODERATION_PERMISSIONS=a.SORT_THREADS=a.PATCH_THREAD=a.HYDRATE_THREADS=a.FILTER_THREADS=a.DELETE_THREAD=a.APPEND_THREADS=void 0,a.append=r,a.deleteThread=o,a.filterThreads=l,a.hydrate=s,a.patch=i,a.sort=u,a.getThreadModerationOptions=c,a.hydrateThread=d,a["default"]=f;var p=e("moment"),m=n(p),h=e("../utils/concat-unique"),v=n(h),b=a.APPEND_THREADS="APPEND_THREADS",y=a.DELETE_THREAD="DELETE_THREAD",g=a.FILTER_THREADS="FILTER_THREADS",_=a.HYDRATE_THREADS="HYDRATE_THREADS",E=a.PATCH_THREAD="PATCH_THREAD",w=a.SORT_THREADS="SORT_THREADS",O=a.MODERATION_PERMISSIONS=["can_announce","can_approve","can_close","can_hide","can_move","can_merge","can_pin","can_review"]; +},{"../utils/concat-unique":368,moment:"moment"}],349:[function(e,t,a){"use strict";function n(){return{type:l}}function r(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return t.type===l?Object.assign({},e,{tick:e.tick+1}):e}Object.defineProperty(a,"__esModule",{value:!0}),a.doTick=n,a["default"]=r;var o=a.initialState={tick:0},l=a.TICK="TICK"},{}],350:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e,t,a){return{type:m,change:e,user:t,changedBy:a}}function o(e){return{type:h,items:e}}function l(e){return{type:v,items:e}}function s(e){return Object.assign({},e,{changed_on:(0,c["default"])(e.changed_on)})}function i(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case m:var a=e.slice();return a.unshift({id:Math.floor(Date.now()/1e3),changed_by:t.changedBy,changed_by_username:t.changedBy.username,changed_on:(0,c["default"])(),new_username:t.change.username,old_username:t.user.username}),a;case h:return(0,p["default"])(e,t.items.map(s));case v:return t.items.map(s);case d.UPDATE_AVATAR:return e.map(function(e){return e=Object.assign({},e),e.changed_by&&e.changed_by.id===t.userId&&(e.changed_by=Object.assign({},e.changed_by,{avatars:t.avatars})),e});case d.UPDATE_USERNAME:return e.map(function(e){return e=Object.assign({},e),e.changed_by&&e.changed_by.id===t.userId&&(e.changed_by=Object.assign({},e.changed_by,{username:t.username,slug:t.slug})),Object.assign({},e)});default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.HYDRATE_HISTORY=a.APPEND_HISTORY=a.ADD_NAME_CHANGE=void 0,a.addNameChange=r,a.append=o,a.hydrate=l,a.hydrateNamechange=s,a["default"]=i;var u=e("moment"),c=n(u),d=e("./users"),f=e("../utils/concat-unique"),p=n(f),m=a.ADD_NAME_CHANGE="ADD_NAME_CHANGE",h=a.APPEND_HISTORY="APPEND_HISTORY",v=a.HYDRATE_HISTORY="HYDRATE_HISTORY"},{"../utils/concat-unique":368,"./users":351,moment:"moment"}],351:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function r(e){return{type:h,items:e}}function o(e){return{type:v,items:e}}function l(e){return e?Object.assign({},e,{last_click:e.last_click?(0,f["default"])(e.last_click):null,banned_until:e.banned_until?(0,f["default"])(e.banned_until):null}):null}function s(e){return Object.assign({},e,{joined_on:(0,f["default"])(e.joined_on),status:l(e.status)})}function i(e,t){return{type:b,userId:e.id,avatars:t}}function u(e,t,a){return{type:y,userId:e.id,username:t,slug:a}}function c(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;switch(t.type){case h:return(0,m["default"])(e,t.items.map(s));case v:return t.items.map(s);case b:return e.map(function(e){return e=Object.assign({},e),e.id===t.userId&&(e.avatars=t.avatars),e});default:return e}}Object.defineProperty(a,"__esModule",{value:!0}),a.UPDATE_USERNAME=a.UPDATE_AVATAR=a.HYDRATE_USERS=a.APPEND_USERS=void 0,a.append=r,a.hydrate=o,a.hydrateStatus=l,a.hydrateUser=s,a.updateAvatar=i,a.updateUsername=u,a["default"]=c;var d=e("moment"),f=n(d),p=e("../utils/concat-unique"),m=n(p),h=a.APPEND_USERS="APPEND_USERS",v=a.HYDRATE_USERS="HYDRATE_USERS",b=a.UPDATE_AVATAR="UPDATE_AVATAR",y=a.UPDATE_USERNAME="UPDATE_USERNAME"},{"../utils/concat-unique":368,moment:"moment"}],352:[function(e,t,a){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(a,"__esModule",{value:!0});var r=function(){function e(e,t){for(var a=0;a1&&void 0!==arguments[1]&&arguments[1];this._included.indexOf(e)===-1&&(this._included.push(e),this._include(e,t))}},{key:"_include",value:function(e,t){$.ajax({url:(t?"":this._staticUrl)+e,cache:!0,dataType:"script"})}}]),e}();a["default"]=new o},{}],356:[function(e,t,a){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(a,"__esModule",{value:!0});var r=function(){function e(e,t){for(var a=0;a0){var r=t.substr(t.indexOf("?")+1),s=r.split("&").filter(function(e){return"t="===e.substr(0,2)})[0];if(s){var i=s.substr(2).split("m");"s"===i[0].substr(-1)?n+=parseInt(i[0].substr(0,i[0].length-1)):(n+=60*parseInt(i[0]),i[1]&&"s"===i[1].substr(-1)&&(n+=parseInt(i[1].substr(0,i[1].length-1))))}}return{start:n,video:a}}function o(e){var t=e;return"https://"===e.substr(0,8)?t=t.substr(8):"http://"===e.substr(0,7)&&(t=t.substr(7)),"www."===t.substr(0,4)&&(t=t.substr(4)),t}function l(e){if(e.indexOf("youtu")===-1)return null;var t=e.match(i);return t?t[1]:null}Object.defineProperty(a,"__esModule",{value:!0});var s=function(){function e(e,t){for(var a=0;acode"),a=0;aa"),a=0;a');$(e).replaceWith(n),n.wrap('
')}}]),e}();a["default"]=new u},{}],360:[function(e,t,a){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(a,"__esModule",{value:!0});var r=function(){function e(e,t){for(var a=0;a1){var a=interpolate(gettext("page: %(page)s"),{page:e.page},!0);t+=" ("+a+")"}e.parent&&(t+=" | "+e.parent),document.title=t+" | "+this._forumName}}]),e}();a["default"]=new o},{}],361:[function(e,t,a){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(a,"__esModule",{value:!0});var r=function(){function e(e,t){for(var a=0;a0&&void 0!==arguments[0]?arguments[0]:0;n+=1,n>200?a():"undefined"==typeof zxcvbn?window.setTimeout(function(){r(n)},200):(e._isLoaded=!0,t())};n()})}},{key:"_loadedPromise",value:function(){return new Promise(function(e){e()})}}]),e}();a["default"]=new o},{}],366:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e,t){if(u["default"].render(s["default"].createElement(c.Provider,{store:v["default"].getStore()},s["default"].createElement(y,{message:e.message,expires:e.expires_on?(0,o["default"])(e.expires_on):null})),document.getElementById("page-mount")),"undefined"==typeof t||t){var a=m["default"].get("SETTINGS").forum_name;document.title=gettext("You are banned")+" | "+a,window.history.pushState({},"",m["default"].get("BANNED_URL"))}};var r=e("moment"),o=n(r),l=e("react"),s=n(l),i=e("react-dom"),u=n(i),c=e("react-redux"),d=e("../components/banned-page"),f=n(d),p=e("../index"),m=n(p),h=e("../services/store"),v=n(h),b=function(e){return e.tick},y=(0,c.connect)(b)(f["default"])},{"../components/banned-page":4,"../index":291,"../services/store":364,moment:"moment",react:"react","react-dom":"react-dom","react-redux":"react-redux"}],367:[function(e,t,a){"use strict";Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e,t){var a=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=[],r=[];if(e.forEach(function(e){r.push(e),r.length===t&&(n.push(r),r=[])}),a!==!1&&r.length>0&&r.length"']/g,function(e){return n[e]})};var n={"&":"&","<":"<",">":">",'"':""","'":"'"}},{}],371:[function(e,t,a){"use strict";function n(e){return e.toFixed(1)}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e){return e>1073741824?n(e/1073741824)+" GB":e>1048576?n(e/1048576)+" MB":e>1024?n(e/1024)+" KB":n(e)+" B"},a.roundSize=n},{}],372:[function(e,t,a){"use strict";Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e){return n.test($.trim(e))};var n=new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i")},{}],373:[function(e,t,a){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e,t){var a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],n=document.getElementById(t),r=e.props?e:o["default"].createElement(e,null);n&&(a?s["default"].render(o["default"].createElement(i.Provider,{store:c["default"].getStore()},r),n):s["default"].render(r,n))};var r=e("react"),o=n(r),l=e("react-dom"),s=n(l),i=e("react-redux"),u=e("../services/store"),c=n(u)},{"../services/store":364,react:"react","react-dom":"react-dom","react-redux":"react-redux"}],374:[function(e,t,a){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(a,"__esModule",{value:!0});var r=function(){function e(e,t){for(var a=0;a0&&a.length!==r.length;)o-=1,e.forEach(t);return n}}]),e}();a["default"]=o},{}],375:[function(e,t,a){"use strict";function n(e,t){return Math.floor(Math.random()*(t-e+1))+e}function r(e,t){for(var a=new Array(n(e,t)),r=0;r=0?e.filter(function(e){return e!==t}):e}function o(e,t){if(e.indexOf(t)===-1){var a=e.slice();return a.push(t),a}return e.filter(function(e){return e!==t})}Object.defineProperty(a,"__esModule",{value:!0}),a.push=n,a.remove=r,a.toggle=o},{}],379:[function(e,t,a){"use strict";Object.defineProperty(a,"__esModule",{value:!0}),a["default"]=function(e,t){if(e=(e+"").toLowerCase(),t=(t+"").toLowerCase(),t.length<=0)return 0;for(var a=0,n=0,r=t.length;;){if(n=e.indexOf(t,n),!(n>=0))break;a+=1,n+=r}return a}},{}],380:[function(e,t,a){"use strict";function n(){return function(e){if(0===$.trim(e).length)return gettext("This field is required.")}}function r(e){return function(t){if(!d.test(t))return e||gettext("Enter a valid email address.")}}function o(e,t){return function(a){var n="",r=$.trim(a).length;if(re)return n=t?t(e,r):ngettext("Ensure this value has at most %(limit_value)s character (it has %(show_value)s).","Ensure this value has at most %(limit_value)s characters (it has %(show_value)s).",e),interpolate(n,{limit_value:e,show_value:r},!0)}}function s(e){var t=function(e){return ngettext("Username must be at least %(limit_value)s character long.","Username must be at least %(limit_value)s characters long.",e)};return o(e,t)}function i(e){var t=function(e){return ngettext("Username cannot be longer than %(limit_value)s character.","Username cannot be longer than %(limit_value)s characters.",e)};return l(e,t)}function u(){return function(e){if(!f.test($.trim(e)))return gettext("Username can only contain latin alphabet letters and digits.")}}function c(e){return function(t){var a=t.length;if(a()[\]\.,;:\s@\"]+(\.[^<>()[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i,f=new RegExp("^[0-9a-z]+$","i")},{}]},{},[291,292,293,294,295,310,311,312,313,314,315,316,317,333,334,335,336,296,297,298,299,300,301,302,303,304,305,306,307,308,309,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332]); //# sourceMappingURL=misago.js.map diff --git a/misago/static/misago/js/misago.js.map b/misago/static/misago/js/misago.js.map index f2bcbaa5f8..4ab66ae2b1 100644 --- a/misago/static/misago/js/misago.js.map +++ b/misago/static/misago/js/misago.js.map @@ -1 +1 @@ -{"version":3,"sources":["misago.js"],"names":["e","t","n","r","s","o","u","a","require","i","f","Error","code","l","exports","call","length","1","module","_interopRequireWildcard","obj","__esModule","newObj","key","Object","prototype","hasOwnProperty","_interopRequireDefault","default","_classCallCheck","instance","Constructor","TypeError","_possibleConstructorReturn","self","ReferenceError","_inherits","subClass","superClass","create","constructor","value","enumerable","writable","configurable","setPrototypeOf","__proto__","ModalHeader","props","_react2","createElement","className","aria-label","gettext","data-dismiss","type","aria-hidden","defineProperty","_createClass","defineProperties","target","descriptor","protoProps","staticProps","_react","_form","_form2","_formGroup","_formGroup2","_participants","participants","_thread","_ajax","_ajax2","_modal","_modal2","_snackbar","_snackbar2","_store","_store2","_class","_Form","this","_this","getPrototypeOf","onUsernameChange","event","changeValue","state","isLoading","username","trim","error","patch","thread","api","index","op","path","data","dispatch","updateAcl","replace","success","hide","role","onSubmit","handleSubmit","for","label","id","disabled","onChange","../reducers/participants","../reducers/thread","../services/ajax","../services/modal","../services/snackbar","../services/store","./form","./form-group","react","2","select","user","auth","signedIn","signedOut","_React$Component","apply","arguments","window","location","reload","interpolate","getMessage","onClick","refresh","Component","3","getSrc","size","resolveAvatarForSize","avatars","url","_2","get","avatar","forEach","av","size2x","alt","src","srcSet","width","height","_","..","4","_moment","_moment2","message","html","dangerouslySetInnerHTML","__html","plain","expires","isAfter","title","expires_on","format","fromNow","getReasonMessage","getExpirationMessage","moment","5","_loader","_loader2","Button","loading","children","defaultProps","./loader","6","7","_ref","categories","map","category","_category2","_category","./category","8","css_class","_listItem2","isFirst","subcategories","_listItem","./list-item","9","description","10","getClassName","is_read","getTitle","is_closed","getIcon","11","_main2","_stats2","_lastThread2","_subcategories2","_main","_lastThread","_stats","_subcategories","./last-thread","./main","./stats","./subcategories","12","LastThread","_ref2","acl","can_browse","can_see_all_threads","last_thread_title","LastPosterAvatar","href","last_thread_new","LastPosterName","last_post","last_post_on","_ref3","last_poster","last_poster_name","_avatar2","_ref4","Empty","_ref5","Message","Private","_ref6","Protected","_ref7","_ref8","_avatar","../../../avatar","13","_icon2","name","_description2","_description","_icon","./description","./icon","14","Threads","threads","ngettext","Posts","posts","15","16","17","store","tick","_blankslate","_blankslate2","_categoriesList","_categoriesList2","_index","_index2","_polls","_polls2","hydrate","assign","update","setState","startPolling","start","poll","frequency","../../index","../../services/polls","./blankslate","./categories-list","18","choices","item","repeat","level","19","_button","_button2","cropAvatar","avatarType","upload","cropit","$","deviceRatio","cropitOffset","post","crop","offset","x","y","zoom","then","onComplete","detail","rejection","status","showError","options","crop_tmp","crop_src","dataUrl","_this2","cropperWidth","getAvatarSize","initialWidth","exportZoom","imageState","getImagePath","onImageLoaded","zoomLevel","imageSize","displayedWidth","offsetX","displayedHeight","offsetY","showIndex","../../services/ajax","../../services/snackbar","../avatar","../button","20","Gallery","GalleryItem","undefined","_extends","source","_batch","_batch2","_temp","_ret","_len","args","Array","_key","concat","selection","_React$Component2","_this3","images","row","_React$Component3","_this4","image","save","response","_this5","galleries","../../utils/batch","21","setGravatar","callApi","setGenerated","gravatar","showCrop","showUpload","showGallery","userPeview","getAvatarPreview","getGravatarButton","getCropButton","getUploadButton","getGalleryButton","../loader","22","ChangeAvatarError","_crop","_crop2","_upload","_upload2","_gallery","_gallery2","_modalLoader","_modalLoader2","_users","reason","getErrorReason","component","completeFlow","updateAvatar","getBody","../../reducers/users","../../services/store","../modal-loader","./crop","./gallery","./index","./upload","23","_fileSize","_fileSize2","pickFile","document","getElementById","click","uploadFile","files","validationError","validateFile","preview","URL","createObjectURL","progress","FormData","append","uploaded","info","limit","filesize","invalidTypeMsg","allowed_mime_types","indexOf","extensionFound","loweredFilename","toLowerCase","allowed_extensions","extension","substr","extensions","join","getUploadRequirements","aria-valuenow","aria-valuemin","aria-valuemax","style","getUploadProgressLabel","getUploadProgress","renderCrop","renderUpload","../../utils/file-size","24","dropdown","toggleNav","aria-haspopup","aria-expanded","25","display","_panelMessage2","helpText","_panelMessage","../panel-message","26","_select","_select2","ev","_this$props","field","fieldname","_props","input","rows","../select","27","errors","fields","help_text","validation","_fieldInput2","_fieldInput","../form-group","./field-input","28","_defineProperty","CancelButton","onCancel","_fieldset","_fieldset2","groups","group","initial","onSuccess","apiError","../form","./fieldset","29","FormDisplay","cancel","_state","30","31","replaceSelection","execAction","32","insertCode","syntax","prompt","_action2","_action","_isUrl","../../../utils/is-url","./action","33","makeEmphasis","34","insertHr","35","insertImage","_isUrl2","36","insertLink","37","insertQuote","38","makeStriketrough","39","makeStrong","40","Preview","is_image","Image","Icon","thumbnailUrl","thumb","backgroundImage","Filename","filename","Details","uploader","USER_URL","_escapeHtml2","uploader_name","USER_SPAN","date","DATE_ABBR","absolute","uploaded_on","relative","filetype","Actions","Insert","Remove","Undo","isRemoved","onInsert","can_delete","onRemove","onUndo","_escapeHtml","insertAttachment","updateItem","newState","updatedAttachments","attachments","onAttachmentsChange","../../../..","../../../../utils/escape-html","../../../../utils/file-size","41","STRONG","filteredAttachments","filter","42","_complete2","_error2","_complete","_error","./complete","./error","43","44","max_attachment_size","_list2","_uploader2","_list","_uploader","../../..","./list","./uploader","45","_attachment2","_attachment","./attachment","46","47","getRandomKey","Math","round","Date","getTime","file","../../../services/ajax","../../../services/snackbar","48","Protect","canProtect","protect","onUnprotect","onProtect","_code","_code2","_emphasis","_emphasis2","_hr","_hr2","_image","_image2","_link","_link2","_striketrough","_striketrough2","_strong","_strong2","_quote","_quote2","_attachments","_attachments2","_uploadButton","_uploadButton2","_markupPreview","_markupPreview2","_textutils","textUtils","onPreviewClick","isPreviewLoading","show","markup","parsed","operation","getSelectionText","_replaceSelection","newValue","atwho","at","displayTpl","insertTpl","searchKey","callbacks","remoteFilter","query","callback","getJSON","q","on","flag","submitLabel","placeholder","../..","../../services/modal","./actions/code","./actions/emphasis","./actions/hr","./actions/image","./actions/link","./actions/quote","./actions/striketrough","./actions/strong","./attachments","./attachments/upload-button/","./markup-preview","./textutils","49","_misagoMarkup2","_misagoMarkup","../misago-markup","50","getTextarea","textareaId","getValue","getSelectionRange","end","getSelection","ctrl","focus","range","createRange","text","moveStart","selectionStart","selectionEnd","substring","setSelection","selectionRange","setSelectionRange","createTextRange","collapse","moveEnd","_replace","myRange","replacement","startText","51","isValidated","labelClass","htmlFor","controlClass","getFeedbackDescription","getFeedback","getHelpText","extra","52","_validators","validateRequired","required","bindInput","formErrors","validateField","preventDefault","clean","promise","send","handleSuccess","handleError","validators","optional","validatedFields","push","_name","_name2","fieldErrors","validate","requiredError","_i","_validationError","../utils/validators","53","isControlled","isActive","pathname","activeClassName","54","55","onError","onPollChange","confirmation","confirm","polls","./button","56","_oneBox","_oneBox2","render","documentNode","prevProps","prevState","nextProps","nextState","ref","node","../services/one-box","57","58","_PanelMessage","icon","./panel-message","59","filtered","section","results","count","slice","MAX_RESULTS","60","HEADER","RESULT","FOOTER","61","_input2","_input","./input","62","63","flattenProviders","flatlist","arrayLength","provider","_constants","flattenProvider","result","./constants","64","_dropdownMenu2","flatResults","_flattenResults2","_result2","_empty2","_dropdownMenu","_empty","_result","_flattenResults","./dropdown-menu","./empty","./flatten-results","./result","65","autoComplete","66","../../loader","67","encodeURI","68","69","_header2","_footer2","_footer","_header","../constants","./footer","./header","70","_thread2","_user2","_user","./thread","./user","71","poster","footer","content","posted_on","poster_name","72","rank","joined_on","73","_cleanResults","_cleanResults2","_dropdown","_dropdown2","onToggle","isOpen","setTimeout","container","querySelector","onDocumentMouseDown","closeResults","parentNode","onEscape","loadResults","intervalId","addEventListener","removeEventListener","delay","random","clearTimeout","data-toggle","./clean-results","./dropdown","74","_panelLoader2","_panelLoader","../../panel-loader","75","next_on","next_change","../../panel-message","76","usernameContent","usernameMinLength","length_min","usernameMaxLength","length_max","phrases","changes_left","name_changes_expire","_message","complete","slug","../../../utils/validators","../../button","../../form","../../form-group","77","_formLoading","_formLoading2","_formLocked","_formLocked2","_root","_root2","_usernameHistory","_pageTitle","_pageTitle2","addNameChange","updateUsername","isLoaded","set","parent","Promise","all","getChangeForm","changes","../../../index","../../../reducers/username-history","../../../reducers/users","../../../services/page-title","../../../services/store","../../username-history/root","./form-loading","./form-locked","78","_editDetails","_editDetails2","edit_details","../../services/page-title","../edit-details","79","_yesNoSwitch","_yesNoSwitch2","_auth","is_hiding_presence","limits_private_thread_invites_to","subscribe_to_started_threads","subscribe_to_replied_threads","privateThreadInvitesChoices","subscribeToChoices","iconOn","iconOff","labelOn","labelOff","../../reducers/auth","../yes-no-switch","80","SideNav","option","_reactRouter","Link","to","baseUrl","CompactNav","_li2","hideNav","_li","../li","react-router","81","username-history","paths","_reactRedux","connect","_forumOptions2","_root4","_dropdownToggle","_navs","_forumOptions","_root3","_withDropdown","_withDropdown2","_WithDropdown","../dropdown-toggle","../with-dropdown","./change-username/root","./edit-details","./forum-options","./navs","./sign-in-credentials/root","react-redux","82","new_email","password","email","lengths","change_email","83","new_password","repeat_password","change_password","84","_changeEmail","_changeEmail2","_changePassword","_changePassword2","./change-email","./change-password","85","_stringCount","_stringCount2","copy","../utils/string-count","86","87","88","_addParticipant","_addParticipant2","can_add_participants","../add-participant","89","leave","participant","remove","changeOwner","../../../reducers/participants","../../../reducers/thread","90","UserStatus","isOwner","is_owner","_makeOwner2","_remove2","_makeOwner","_remove","../../avatar","./make-owner","./remove","91","userIsOwner","_card2","_card","./card","92","_actions","confirmed","isUser","can_change_owner","./actions","93","isModerator","can_moderate_private_threads","94","getUserIsOwner","_cardsList2","utils","getParticipantsCopy","_cardsList","_utils","./add-participant","./cards-list","./utils","95","users","96","LABELS","STYLES","_zxcvbn","_zxcvbn2","_score","_password","_inputs","loaded","load","inputs","cacheStale","scorePassword","score","getScore","../services/zxcvbn","97","generateRandomHash","randomHash","toString","PollChoice","onAdd","hash","setChoices","choice","onDelete","canDelete","_temp2","_ret2","_len2","_key2","deleteItem","maxLength","98","PollPublicSwitch","isEdit","_choicesControl","_choicesControl2","_poll","_posting","_posting2","close","question","allowed_choices","allow_revotes","is_public","put","non_field_errors","../../../reducers/poll","../../../services/posting","../../yes-no-switch","./choices-control","99","PollForm","Poll","_poll2","./poll","100","PollCreation","getPoster","getPostedOn","PollLength","ends_on","getEndsOn","endsOn","PollVotes","votes","PollIsPublic","../../utils/escape-html","101","getIsPollOver","_results","_results2","_voting","_voting2","showResults","showVoting","hasSelectedChoices","isPollOver","can_vote","./results","./voting","102","proc","ceil","getVotesLabel","ChoiceVotes","UserChoice","selected","103","_info2","_chart2","_options2","_chart","_options","_info","../info","./chart","./options","104","ModalBody","_modalMessage2","ChoicesList","ChoiceDetails","VotesCount","VotesList","voters","Voter","VoteDate","voted_on","_modalMessage","hydratedData","voter","../../modal-loader","../../modal-message","105","isVisible","can_edit","can_see_votes","controls","control","ChangeVote","canVote","canChangeVote","isBusy","Delete","Edit","SeeVotes","_modal3","_modal4","seeVotes","open","submit","mode","_temp3","_ret3","_len3","_key3","deletePoll","busy","newThreadAcl","release","../../../services/modal","./modal","106","PollChoicesLeft","choicesLeft","PollAllowRevote","../../../utils/escape-html","107","_help","_help2","toggleChoice","getChoiceFromHash","deselectChoice","selectChoice","getChoicesLeft","./help","./select","108","ChoiceSelect","109","110","DiffItem","getItemClassName","cleanItem","diff","111","revertEdit","edit","canRevert","112","ModalDialog","_diff","_diff2","_toolbar","_toolbar2","_post","goToEdit","edits","isReady","hydrateEdit","hydratedPost","../../reducers/post","../modal-message","./diff","./toolbar","113","GoBackBtn","previous","GoForwardBtn","next","GoLastBtn","RevertBtn","Label","editor","editor_name","edited_on","edited_by","goLast","goForward","goBack","114","json","115","_post2","_preview2","_preview","./post","./preview","116","Default","Invalid","../../misago-markup","117","tooltip","118","_postSide2","_body2","_body","_postSide","./body","./post-side","119","120","121","_registered2","_anonymous2","_anonymous","_registered","./anonymous","./registered","122","_userTitle2","_userTitle","./user-title","123","userTitle","is_tab","124","_random","../../utils/random","125","hydrateLike","liked_on","likes","likesCount","LikesList","like","LikeDetails","liker_id","LikeDate","likedOn","./avatar","./modal-loader","./modal-message","126","_editor","_editor2","_container","_container2","_message2","loadSuccess","is_protected","can_protect","loadError","isErrored","onPostChange","getPostValidators","config","method","../../services/posting","../editor","./utils/attachments","./utils/container","./utils/loader","./utils/message","./utils/validators","127","_start2","_startPrivate2","_reply2","_edit2","_start","_startPrivate","_reply","_edit","./edit","./reply","./start","./start-private","128","appendData","newPost","context","newContext","reply","129","_usernames","_usernames2","onToChange","onTitleChange","getTitleValidators","withFirstRow","./utils/usernames","130","_categorySelect","_categorySelect2","showOptions","categoryOptions","pin","onCategoryChange","find","onClose","onOpen","onPinGlobally","onPinLocally","onUnpin","onHide","onUnhide","columns","titleStyle","../category-select","./utils/options","131","completedAttachments","attachment","132","133","./container","134","135","CloseOptions","textClassName","HideOptions","PinOptions","columnClassName","136","usernames","normalisedNames","split","removedBlanks","removedDuplicates","pos","137","getTitleLengthMin","getTitleLengthMax","post_length_max","validatePostLengthMin","validatePostLengthMax","minLength","thread_title_length_min","limitValue","limit_value","show_value","thread_title_length_max","post_length_min","138","can_hide","Unhide","Hide","is_hidden","hidden_on","hidden_by_name","hidden_by","decision","isDeleted","../../../reducers/post","139","ICON","event_type","changed_title","pinned_globally","pinned_locally","unpinned","moved","merged","approved","opened","closed","unhid","hid","changed_owner","tookover","added_participant","owner_left","participant_left","removed_participant","140","_unreadLabel2","_waypoint2","_unreadLabel","_waypoint","../waypoint","./info","./message","./unread-label","141","Hidden","event_by","event_on","Poster","DATE_URL","Ip","can_see_users_ips","poster_ip","_controls2","_controls","./controls","142","ChangedTitle","msgstring","oldTitle","ITEM_SPAN","event_context","old_title","Moved","fromCategory","ITEM_LINK","from_category","Merged","mergedThread","merged_thread","ChangedOwner","newOwner","AddedParticipant","RemovedParticipant","MESSAGE","143","144","ListItem","is_event","_event2","_event","./event","./post/preview","145","AttachmentPreview","AttachmentThumbnail","AttachmentIcon","AttachmentDetails","146","can_see_hidden","Row","../../../../utils/batch","147","HIDDEN_BY_URL","HIDDEN_BY_SPAN","HIDDEN_ON","148","approve","is_unapproved","ops","previousState","unprotect","unhide","lastLikes","last_likes","concatedLikes","finalLikes","is_liked","unlike","../../../../reducers/post","../../../../services/ajax","../../../../services/snackbar","../../../../services/store","149","Unprotect","Split","Move","Approve","PostEdits","Permalink","moderation","_move","_move2","_postChangelog","_postChangelog2","_split","_split2","permaUrl","protocol","host","isHidden","isUnedited","can_approve","_React$Component4","_temp4","_ret4","_len4","_key4","can_move","_React$Component5","_temp5","_ret5","_len5","_key5","_React$Component6","_temp6","_this6","_ret6","_len6","_key6","_React$Component7","_temp7","_this7","_ret7","_len7","_key7","_React$Component8","_temp8","_this8","_ret8","_len8","_key8","_React$Component9","_ref9","_temp9","_this9","_ret9","_len9","_key9","can_unhide","_React$Component10","_ref10","_temp10","_this10","_ret10","_len10","_key10","../../../../services/modal","../../../post-changelog","./move","./split","150","151","onUrlChange","move","new_thread","../../../button","../../../form","../../../form-group","152","Loader","Modal","ModerationForm","PostingConfig","Form","isError","misago","categoryId","can_pin_threads","weight","can_hide_threads","can_close_threads","isHiddenChoices","isClosedChoices","isValid","apiResponse","isArray","ErrorsModal","getWeightChoices","renderWeightField","renderHiddenField","renderClosedField","../../../../utils/validators","../../../category-select","../../../modal-loader","../../../select","153","FlagHidden","FlagUnapproved","FlagProtected","154","can_reply","can_see_likes","can_like","getLikesMessage","hiddenLikes","otherUsers","lastUser","usernamesList","last_user","Reply","LikesCompact","Likes","Like","actions","_postLikes","_postLikes2","hasLikes","_Likes","../../post-likes","./controls/actions","155","UnreadLabel","UnreadCompact","PostedOn","PostedOnCompact","ProtectedLabel","postAuthor","hasAcl","PostEditsCompacts","_PostEdits","../../post-changelog","../../user-status","156","_flags","./flags","157","Select","Controls","_userStatus","_userPostcount","../../../user-status","./user-postcount","158","159","160","_userStatus2","StatusIcon","_userStatus4","_userPostcount2","_userStatus3","../controls","./user-status","161","_hasVisibleTitle2","_hasVisibleTitle","./has-visible-title","162","StatusLabel","163","164","../../../utils/random","165","_posts","isSelected","deselect","can_merge_posts","../../../reducers/posts","166","waypoint","handler","direction","boundingClientRect","getBoundingClientRect","offsetBottom","top","clientHeight","documentElement","read","thread_is_read","../../reducers/thread","167","ban","has","initWithPreloadedData","pop","initWithoutPreloadedData","profile","stop","user_message","staff_message","_title","keys","getUserMessage","getStaffMessage","getPanelBody","../panel-loader","168","isAuthenticated","169","SafeValue","rel","170","_fieldValue2","_fieldValue","./field-value","171","../../edit-details","172","_field2","_field","./field","173","_group2","_emptyMessage2","_emptyMessage","_group","./empty-message","./group","174","EditButton","onEdit","showEditButton","175","_groupsList","_groupsList2","_profileDetails","_profileDetails2","_profileDetails3","editing","newDetails","profileDetails","../../../data/profile-details","../../../reducers/profile-details","./groups-list","176","emptyMessage","header","_route2","_route","./route","177","Feed","_postFeed2","LoadMoreButton","loadMore","more","_postFeed","loadItems","page","../../post-feed","178","_profile","action","is_followed","followers","follow","getLabel","../../reducers/profile","179","_quickSearch","_quickSearch2","_usersList","_usersList2","loadUsers","search","pages","setSpecialProps","PRELOADED_DATA_KEY","TITLE","API_FILTER","apiUrl","getEmptyMessage","cols","getMoreButton","getListBody","../quick-search","../users-list","180","_followers","_followers2","_Followers","./followers","181","IsDisabledMessage","getColStyle","col","colStyle","_followButton","_followButton2","_messageButton","_messageButton2","_nav","_nav2","age","can_follow","can_moderate","canFollow","canModerate","isProfileOwner","canMessage","can_start_private_threads","colsWidth","headerClassName","is_active","getFollowButton","getModerationButton","getUserStatus","getUserRank","getUserTitle","getJoinedOn","getEmail","../user-status","./follow-button","./message-button","./moderation/nav","182","183","is_avatar_locked","avatar_lock_user_message","avatar_lock_staff_message","moderate_avatar","avatar_hash","getFormBody","getModalBody","184","moderate_username","185","countdown","with_content","getButtonLabel","getDeletedBody","getForm","../../../services/polls","186","_avatarControls","_avatarControls2","_changeUsername","_changeUsername2","_deleteAccount","_deleteAccount2","showAvatarDialog","showRenameDialog","showDeleteDialog","can_moderate_avatar","can_rename","getAvatarButton","getRenameButton","getDeleteButton","./avatar-controls","./change-username","./delete-account","187","188","COMPONENTS","_banDetails","_banDetails2","_details","_details2","_feed","_follows","_follows2","_usernameHistory2","toggleModeration","follows","details","ban-details","./ban-details","./details","./feed","./follows","./username-history","189","loadChanges","../../reducers/username-history","../username-history/root","190","191","_register","_register2","_captcha","_captcha2","showRegisterForm","account_activation","criteria","../services/captcha","./register.js","192","RegisterComplete","RegisterForm","_passwordStrength","_passwordStrength2","_auth2","_bannedPage","_bannedPage2","_this$props$criteria","passwordMinLength","min_length","captcha","max_length","validator","__all__","aria-describedby","form","getLegalFootNote","activation","getLead","getSubscript","completeRegistration","signIn","../services/auth","../utils/banned-page","./password-strength","193","LinkSent","RequestLinkForm","reset","../index","194","AccountInactivePage","RequestResetForm","_reactDom","_reactDom2","showInactivePage","getActivateButton","react-dom","195","PasswordChangedPage","ResetPasswordForm","_signIn","_signIn2","showSignIn","softSignOut","./sign-in.js","196","_search","onQueryChange","providers","../../reducers/posts","../../reducers/search","197","components","_threads","_threads2","_users2","./threads","./users","198","SearchTime","time","p","_sidenav2","_sidenav","./sidenav","199","Badge","200","Blankslate","_page2","route","_page","../page","201","LoadMore","updateProvider","../../../reducers/search","202","../../users-list","203","change","getChoice","204","showActivation","val","getCsrfToken","getActivationButton","205","snackbar","Snackbar","TYPES_CLASSES","warning","snackbarClass","getSnackbarClass","206","Breadcrumb","GoBack","lastItem","207","Moderation","isSingle","ModerationControls","_breadcrumbs","_breadcrumbs2","isEditing","showModeration","isModerationVisible","../../posting/utils/validators","../moderation/thread","./breadcrumbs","208","Weight","Unapproved","has_unapproved_posts","IsHidden","IsClosed","Replies","replies","legend","LastReply","LAST_POSTER_URL","LAST_POSTER_SPAN","LAST_REPLY","209","deselectAll","ids","rollback","_errorsList2","merge","_errorsList","../../../../reducers/posts","./errors-list","210","Merge","can_merge","211","PostErrors","heading","212","visible","can_unprotect","213","214","215","_merge","_merge2","successMessage","pinGlobally","pinLocally","unpin","can_pin_globally","can_pin","can_close","getPinGloballyButton","getPinLocallyButton","getUnpinButton","getMoveButton","getMergeButton","getApproveButton","getOpenButton","getCloseButton","getUnhideButton","getHideButton","../../../../reducers/thread","./merge","216","_isVisible","_isVisible2","./is-visible","217","218","_mergePolls","_mergePolls2","handleSuccessUnmounted","other_thread","../../../merge-polls","219","ModalLoading","ModalMessage","post_set","220","Pager","FirstPage","PreviousPage","NextPage","LastPage","first","previousUrl","nextUrl","last","More","221","222","basePath","pk","223","_participants2","_postsList","_postsList2","_toolbarTop","_toolbarTop2","_toolbarBottom","_toolbarBottom2","_participants3","setPageTitle","openReplyForm","shouldFetchData","fetchData","startPollingApi","stopPollingApi","params","unload","delayed","../../reducers/participants","../../reducers/poll","../participants","../poll","../posts-list","./toolbar-bottom","./toolbar-top","224","subscription","Dropdown","dropdownClassName","Disable","Enable","Email","oldState","finalState","225","Options","_posts2","Subscription","xsClass","_subscription2","btnClassName","_replyButton2","Spacer","_paginator","_replyButton","_subscription","./moderation/posts","./paginator","./reply-button","./subscription","226","GotoMenu","is_anonymous","GotoLast","GotoNew","GotoUnapproved","CompactOptions","is_new","new_post","unapproved_post","StartPollCompact","GotoNewCompact","GotoUnapprovedCompact","GotoLastCompact","SubscriptionMenu","StartPoll","hiddenSpecialOption","can_start_poll","_StartPoll","227","diffSize","applyDiff","_ready2","activeCategory","list","busyThreads","_ready","./list/empty","./list/preview","./list/ready","228","229","_diffMessage","_diffMessage2","getDiffMessage","./diff-message","230","../thread/preview","231","../thread/ready","232","HiddenLabel","ClosedLabel","PollLabel","RepliesLabel","forceFullText","compactClassName","fullClassName","LastReplyLabel","datetime","LastPoster","posterName","statusFlags","has_poll","allFlagsVisible","OptionsXs","../options","233","234","TopDetails","BottomDetails","_bottom","_bottom2","_top","_top2","./bottom","./top","235","NewLabel","isRead","PinnedLabel","UnapprovedLabel","236","Timestamp","_userUrl2","_userUrl","./user-url","237","_full2","_compact2","Checkbox","_compact","_full","_selection","toggleSelection","../../../reducers/selection","./subscription/compact","./subscription/full","238","239","flavor","styles","starter_name","starter","_lastAction2","_lastAction","./last-action","240","_SubscriptionFull","./full","241","_props$thread","fullwidth","242","243","STATE_UPDATES","unsubscribe","notify","setSubscription","../../../../reducers/threads","244","245","Subcategory","listPath","getUrl","246","compareLastPostAge","b","compareGlobalWeight","compareWeight","247","_pageLead","_pageLead2","pageLead","categoriesMap","selectAllThreads","selectNoneThreads","addThreads","freezeThread","deleteThread","updateThread","getDisableToolbar","getCategoryDescription","getToolbar","../page-lead","248","ParentCategory","startThread","hasGoBackButton","getGoBackButton","getStartThreadButton","lists","./nav","249","special_role","250","_countdown","threadsMap","failedThreads","../../../utils/countdown","251","ThreadErrors","252","getFormdata","none","filterThreads","categoryChoices","_acl","can_start_threads","renderForm","renderCantMergeMessage","../../../reducers/threads","../../category-select","../../merge-polls","../../select","253","storeState","getState","leftThreads","acls","renderCantMoveMessage","254","selectAll","selectNone","255","256","getSelect","getLists","longName","can_see_unapproved_content_lists","routes","257","_compare","_threadsList","_threadsList2","_listEmpty","_listEmpty2","_sets","sets","loadThreads","getCategory","pollResponse","diffThreads","getSorting","getModerationActions","currentState","toggle","isMounted","getPageTitle","forum_index_title","forum_name","threadsCount","../../reducers/selection","../../reducers/threads","../../utils/sets","../threads-list","./compare","./list-empty","258","_categoryPicker","_categoryPicker2","_selection2","allow","showModerationOptions","getSelectedThreads","getCategoryPicker","getSelectionButton","./category-picker","./moderation/controls","./moderation/selection","259","isThreadChanged","current","fromDb","currentMap","260","CompactGuestNav","GuestNav","GuestMenu","_navbarSearch","_navbarSearch2","_registerButton","_registerButton2","_mobileNavbarDropdown","_mobileNavbarDropdown2","showSignInModal","_GuestMenu","showGuestMenu","../../services/mobile-navbar-dropdown","../navbar-search","../register-button","../sign-in.js","261","CompactUserMenu","UserMenu","_guestNav","_userNav","UserNav","CompactUserNav","./guest-nav","./user-nav","262","PrivateThreadsBadge","unread_private_threads","UserPrivateThreadsLink","can_use_private_threads","selectUserMenu","following","changeAvatar","logout","showConnected","showUserMenu","../change-avatar/root","263","getStatusClassName","is_banned","is_online_hidden","is_offline_hidden","is_online","is_offline","getStatusDescription","banned_until","ban_expires","last_click","getClass","getHelp","264","hiddenOnMobile","265","changed_by","changed_by_username","renderUserAvatar","renderUsername","old_username","new_username","changed_on","266","267","_changePreview","_changePreview2","./change-preview","268","_change","_change2","./change","269","_listReady","_listReady2","_listPreview","_listPreview2","./list-preview","./list-ready","270","showStatus","271","Status","JoinDate","getStatClassName","Followers","stat","272","dup","273","colClassName","274","275","Number","276","days","trackedPeriod","277","278","rankUrl","getRankName","counter","meta","279","_listItemPreview","_listItemPreview2","./list-item-preview","280","posters","getLeadMessage","281","tracked_period","282","listUrl","283","284","_pager2","_pager","./pager","285","_resetScroll2","_resetScroll","../../../utils/reset-scroll","286","_listLoading","_listLoading2","getRankDescription","getComponent","../../page-lead","./list-loading","287","./active-posters/root","./rank/root","288","289","290","../reducers/profile-details","291","global","Misago","_orderedList","_orderedList2","_initializers","_context","initializer","after","before","initOrder","orderedValues","fallback","./utils/ordered-list","292","init","addInitializer","293","setInterval","AUTH_SYNC_RATE","../reducers/auth","294","_localStorage2","_localStorage","../services/local-storage","295","_include2","_include","../services/include","296","_mountComponent2","_authMessage","_authMessage2","_mountComponent","../../components/auth-message","../../utils/mount-component","297","../../utils/banned-page","298","_categories","_categories2","../../components/categories","299","_routedComponent2","root","_routedComponent","../../components/options/root","../../utils/routed-component","300","../../components/profile/root","301","_requestActivationLink2","_requestActivationLink","../../components/request-activation-link","302","_requestPasswordReset2","_requestPasswordReset","../../components/request-password-reset","303","_resetPasswordForm2","_resetPasswordForm","../../components/reset-password-form","304","_search2","../../components/search","305","../../components/snackbar","306","../../components/thread/root","307","getListOptions","currentLink","PRIVATE_THREADS_LIST","../../components/threads/root","308","../../components/user-menu/root","309","../../components/users/root","310","311","312","element","../services/mobile-navbar-dropdown","313","314","locale","attr","315","../services/page-title","316","../services/polls","317","../services/posting","318","addReducer","isAnonymous","initialState","319","320","321","322","../../reducers/profile-details","323","324","_profile2","325","326","327","../../reducers/snackbar","328","329","330","_tick2","_tick","../../reducers/tick","331","332","333","334","335","doTick","TICK_PERIOD","../reducers/tick","336","337","PATCH_USER","SIGN_IN","signOut","soft","SIGN_OUT","UPDATE_AVATAR","userId","_newState","UPDATE_USERNAME","_newState2","338","REPLACE_PARTICIPANTS","339","add","BUSY_POLL","RELEASE_POLL","hydrated","REPLACE_POLL","UPDATE_POLL","REMOVE_POLL","340","updated_on","hydrateAttachment","hydrateUser","PATCH_POST","341","SELECT_POST","DESELECT_POST","DESELECT_POSTS","LOAD_POSTS","APPEND_POSTS","UNLOAD_POSTS","UPDATE_POSTS","selectedPosts","v","deseletedPosts","deseletedAllPosts","resultsIds","reducedPosts","_typeof","Symbol","iterator","342","LOAD_DETAILS","343","HYDRATE_PROFILE","PATCH_PROFILE","hydrateStatus","344","REPLACE_SEARCH","UPDATE_SEARCH","UPDATE_SEARCH_PROVIDER","345","itemsIds","SELECT_ALL","items","SELECT_NONE","itemId","SELECT_ITEM","../utils/sets","346","showSnackbar","SHOW_SNACKBAR","messageType","hideSnackbar","HIDE_SNACKBAR","347","started_on","BUSY_THREAD","RELEASE_THREAD","REPLACE_THREAD","UPDATE_THREAD","UPDATE_THREAD_ACL","348","sorting","APPEND_THREADS","DELETE_THREAD","FILTER_THREADS","HYDRATE_THREADS","PATCH_THREAD","sort","SORT_THREADS","getThreadModerationOptions","thread_acl","MODERATION_PERMISSIONS","perm","hydrateThread","mergedState","_concatUnique2","itemCategory","lft","rght","patchedState","_concatUnique","../utils/concat-unique","349","TICK","350","changedBy","ADD_NAME_CHANGE","APPEND_HISTORY","HYDRATE_HISTORY","hydrateNamechange","namechange","unshift","floor","now","351","APPEND_USERS","HYDRATE_USERS","352","Ajax","_cookieName","_csrfToken","_locks","cookieName","cookie","cookieRegex","RegExp","match","resolve","reject","xhr","headers","X-CSRFToken","JSON","stringify","contentType","dataType","jqXHR","responseJSON","statusText","ajax","lock","param","request","waiter","wait","processData","XMLHttpRequest","evt","lengthComputable","total","353","Auth","local","modal","_local","syncSession","watchState","watch","354","Captcha","ReCaptcha","ReCaptchaComponent","QACaptcha","NoCaptcha","BaseCaptcha","include","_BaseCaptcha","_BaseCaptcha2","kwargs","grecaptcha","sitekey","siteKey","binding","_BaseCaptcha3","recaptcha_site_key","captcha_type","../components/form-group","355","Include","staticUrl","_staticUrl","_included","script","remote","cache","356","storage","localStorage","LocalStorage","prefix","_prefix","_watchers","newValueJson","parse","watcher","oldValue","setItem","itemString","getItem","357","MobileNavbarDropdown","_element","_component","addClass","removeClass","../utils/mount-component","358","unmountComponentAtNode","359","parseYoutubeUrl","cleanedUrl","cleanUrl","video","getVideoIdFromUrl","timebit","bits","parseInt","ytRegExp","OneBox","domnode","highlightCode","embedYoutubePlayers","_youtube","codeblocks","querySelectorAll","hljs","highlightBlock","anchors","onlyChild","childNodes","youtubeMovie","swapYoutubePlayer","youtube","player","replaceWith","wrap","360","PageTitle","indexTitle","forumName","_indexTitle","_forumName","finalTitle","pageLabel","361","Polls","poolServer","_stopped","timeout","pollId","362","Posting","_isOpen","_isClosing","_placeholder","_mode","_realOpen","changeForm","animate","scrollTop","../components/poll","../components/posting","363","HIDE_ANIMATION_LENGTH","MESSAGE_SHOW_LENGTH","_timeout","alert","../reducers/snackbar","364","StoreWrapper","_redux","_reducers","_initialState","reducer","createStore","combineReducers","redux","365","Zxcvbn","_isLoaded","zxcvbn","_loadedPromise","_loadingPromise","tries","366","changeState","Provider","getStore","RedrawedBannedPage","history","pushState","../components/banned-page","367","rowWidth","padding","368","369","_callback","_count","370","m","&","<",">","\"","'","371","roundSize","toFixed","bytes","372","str","URL_PATTERN","test","373","rootElementId","connected","rootElement","finalComponent","374","OrderedList","isOrdered","_items","order","values","values_only","_order","unordered","insertItem","insertAt","ordering","ordered","splice","iterations","375","int","min","max","array","376","scrollTo","377","childRoutes","onEnter","replaceState","Router","browserHistory","378","379","string","subString","step","380","EMAIL","returnMessage","lengthMin","lengthMax","USERNAME"],"mappings":"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","file":"misago.js","sourcesContent":["(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o= size) {\n avatar = av;\n }\n });\n return avatar;\n}\n\n},{\"..\":291,\"react\":\"react\"}],4:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getReasonMessage',\n value: function getReasonMessage() {\n /* jshint ignore:start */\n if (this.props.message.html) {\n return _react2.default.createElement('div', { className: 'lead', dangerouslySetInnerHTML: {\n __html: this.props.message.html\n } });\n } else {\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.props.message.plain\n );\n }\n /* jshint ignore:end */\n }\n }, {\n key: 'getExpirationMessage',\n value: function getExpirationMessage() {\n if (this.props.expires) {\n if (this.props.expires.isAfter((0, _moment2.default)())) {\n /* jshint ignore:start */\n var title = interpolate(gettext(\"This ban expires on %(expires_on)s.\"), {\n 'expires_on': this.props.expires.format('LL, LT')\n }, true);\n\n var message = interpolate(gettext(\"This ban expires %(expires_on)s.\"), {\n 'expires_on': this.props.expires.fromNow()\n }, true);\n\n return _react2.default.createElement(\n 'abbr',\n { title: title },\n message\n );\n /* jshint ignore:end */\n } else {\n return gettext(\"This ban has expired.\");\n }\n } else {\n return gettext(\"This ban is permanent.\");\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'page page-error page-error-banned' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'message-panel' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'highlight_off'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n this.getReasonMessage(),\n _react2.default.createElement(\n 'p',\n { className: 'message-footnote' },\n this.getExpirationMessage()\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"moment\":\"moment\",\"react\":\"react\"}],5:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _loader = require('./loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar Button = function (_React$Component) {\n _inherits(Button, _React$Component);\n\n function Button() {\n _classCallCheck(this, Button);\n\n return _possibleConstructorReturn(this, (Button.__proto__ || Object.getPrototypeOf(Button)).apply(this, arguments));\n }\n\n _createClass(Button, [{\n key: 'render',\n value: function render() {\n var className = 'btn ' + this.props.className;\n var disabled = this.props.disabled;\n\n if (this.props.loading) {\n className += ' btn-loading';\n disabled = true;\n }\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'button',\n {\n className: className,\n disabled: disabled,\n onClick: this.props.onClick,\n type: this.props.onClick ? 'button' : 'submit'\n },\n this.props.children,\n this.props.loading ? _react2.default.createElement(_loader2.default, null) : null\n );\n /* jshint ignore:end */\n }\n }]);\n\n return Button;\n}(_react2.default.Component);\n\nexports.default = Button;\n\n\nButton.defaultProps = {\n className: \"btn-default\",\n\n type: \"submit\",\n\n loading: false,\n disabled: false,\n\n onClick: null\n};\n\n},{\"./loader\":54,\"react\":\"react\"}],6:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n \"div\",\n { className: \"categories-list\" },\n _react2.default.createElement(\n \"ul\",\n { className: \"list-group\" },\n _react2.default.createElement(\n \"li\",\n { className: \"list-group-item empty-message\" },\n _react2.default.createElement(\n \"p\",\n { className: \"lead\" },\n gettext(\"No categories exist or you don't have permission to see them.\")\n )\n )\n )\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],7:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var categories = _ref.categories;\n\n return _react2.default.createElement(\n 'div',\n { className: 'categories-list' },\n categories.map(function (category) {\n return _react2.default.createElement(_category2.default, {\n category: category,\n key: category.id\n });\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _category = require('./category');\n\nvar _category2 = _interopRequireDefault(_category);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./category\":8,\"react\":\"react\"}],8:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category;\n\n var className = 'list-group list-group-category';\n if (category.css_class) {\n className += ' list-group-category-has-flavor';\n className += ' list-group-category-' + category.css_class;\n }\n\n return _react2.default.createElement(\n 'ul',\n { className: className },\n _react2.default.createElement(_listItem2.default, {\n category: category,\n isFirst: true\n }),\n category.subcategories.map(function (category) {\n return _react2.default.createElement(_listItem2.default, {\n category: category,\n isFirst: false,\n key: category.id\n });\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _listItem = require('./list-item');\n\nvar _listItem2 = _interopRequireDefault(_listItem);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./list-item\":11,\"react\":\"react\"}],9:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category;\n\n if (!category.description) return null;\n\n return _react2.default.createElement(\"div\", {\n className: \"category-description\",\n dangerouslySetInnerHTML: {\n __html: category.description.html\n }\n });\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],10:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category;\n\n return _react2.default.createElement(\n 'div',\n {\n className: getClassName(category),\n title: getTitle(category)\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n getIcon(category)\n )\n );\n};\n\nexports.getClassName = getClassName;\nexports.getTitle = getTitle;\nexports.getIcon = getIcon;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction getClassName(category) {\n if (category.is_read) {\n return 'read-status item-read';\n }\n\n return 'read-status item-new';\n}\n\nfunction getTitle(category) {\n if (category.is_closed) {\n if (category.is_read) {\n return gettext(\"This category has no new posts. (closed)\");\n }\n\n return gettext(\"This category has new posts. (closed)\");\n }\n\n if (category.is_read) {\n return gettext(\"This category has no new posts.\");\n }\n\n return gettext(\"This category has new posts.\");\n}\n\nfunction getIcon(category) {\n if (category.is_closed) {\n if (category.is_read) {\n return 'lock_outline';\n }\n\n return 'lock';\n }\n\n if (category.is_read) {\n return 'chat_bubble_outline';\n }\n\n return 'chat_bubble';\n}\n\n},{\"react\":\"react\"}],11:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category,\n isFirst = _ref.isFirst;\n\n var className = 'list-group-item';\n\n if (category.description) {\n className += ' list-group-category-has-description';\n } else {\n className += ' list-group-category-no-description';\n }\n\n if (isFirst) {\n className += ' list-group-item-first';\n }\n if (category.css_class) {\n className += ' list-group-category-has-flavor';\n className += ' list-group-item-category-' + category.css_class;\n }\n\n return _react2.default.createElement(\n 'li',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(_main2.default, { category: category }),\n _react2.default.createElement(_stats2.default, { category: category }),\n _react2.default.createElement(_lastThread2.default, { category: category })\n ),\n _react2.default.createElement(_subcategories2.default, {\n category: category,\n isFirst: isFirst\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _main = require('./main');\n\nvar _main2 = _interopRequireDefault(_main);\n\nvar _lastThread = require('./last-thread');\n\nvar _lastThread2 = _interopRequireDefault(_lastThread);\n\nvar _stats = require('./stats');\n\nvar _stats2 = _interopRequireDefault(_stats);\n\nvar _subcategories = require('./subcategories');\n\nvar _subcategories2 = _interopRequireDefault(_subcategories);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./last-thread\":12,\"./main\":13,\"./stats\":14,\"./subcategories\":15,\"react\":\"react\"}],12:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-6 col-md-4 category-last-thread' },\n _react2.default.createElement(LastThread, { category: category }),\n _react2.default.createElement(Empty, { category: category }),\n _react2.default.createElement(Private, { category: category }),\n _react2.default.createElement(Protected, { category: category })\n );\n};\n\nexports.LastThread = LastThread;\nexports.LastPosterAvatar = LastPosterAvatar;\nexports.LastPosterName = LastPosterName;\nexports.Empty = Empty;\nexports.Private = Private;\nexports.Protected = Protected;\nexports.Message = Message;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction LastThread(_ref2) {\n var category = _ref2.category;\n\n if (!category.acl.can_browse) return null;\n if (!category.acl.can_see_all_threads) return null;\n if (!category.last_thread_title) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left hidden-xs' },\n _react2.default.createElement(LastPosterAvatar, { category: category })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'div',\n { className: 'media-heading' },\n _react2.default.createElement(\n 'a',\n {\n className: 'item-title thread-title',\n href: category.url.last_thread_new,\n title: category.last_thread_title\n },\n category.last_thread_title\n )\n ),\n _react2.default.createElement(\n 'ul',\n { className: 'list-inline' },\n _react2.default.createElement(\n 'li',\n { className: 'category-last-thread-poster' },\n _react2.default.createElement(LastPosterName, { category: category })\n ),\n _react2.default.createElement(\n 'li',\n { className: 'divider' },\n '\\u2014'\n ),\n _react2.default.createElement(\n 'li',\n { className: 'category-last-thread-date' },\n _react2.default.createElement(\n 'a',\n { href: category.url.last_post },\n category.last_post_on.fromNow()\n )\n )\n )\n )\n );\n} // jshint ignore:start\nfunction LastPosterAvatar(_ref3) {\n var category = _ref3.category;\n\n if (category.last_poster) {\n return _react2.default.createElement(\n 'a',\n {\n className: 'last-poster-avatar',\n href: category.last_poster.url,\n title: category.last_poster_name\n },\n _react2.default.createElement(_avatar2.default, {\n className: 'media-object',\n size: 40,\n user: category.last_poster\n })\n );\n }\n\n return _react2.default.createElement(\n 'span',\n {\n className: 'last-poster-avatar',\n title: category.last_poster_name\n },\n _react2.default.createElement(_avatar2.default, {\n className: 'media-object',\n size: 40\n })\n );\n}\n\nfunction LastPosterName(_ref4) {\n var category = _ref4.category;\n\n if (category.last_poster) {\n return _react2.default.createElement(\n 'a',\n {\n className: 'item-title',\n href: category.last_poster.url\n },\n category.last_poster_name\n );\n }\n\n return _react2.default.createElement(\n 'span',\n { className: 'item-title' },\n category.last_poster_name\n );\n}\n\nfunction Empty(_ref5) {\n var category = _ref5.category;\n\n if (!category.acl.can_browse) return null;\n if (!category.acl.can_see_all_threads) return null;\n if (category.last_thread_title) return null;\n\n return _react2.default.createElement(Message, {\n message: gettext(\"This category is empty. No threads were posted within it so far.\")\n });\n}\n\nfunction Private(_ref6) {\n var category = _ref6.category;\n\n if (!category.acl.can_browse) return null;\n if (category.acl.can_see_all_threads) return null;\n\n return _react2.default.createElement(Message, {\n message: gettext(\"This category is private. You can see only your own threads within it.\")\n });\n}\n\nfunction Protected(_ref7) {\n var category = _ref7.category;\n\n if (category.acl.can_browse) return null;\n\n return _react2.default.createElement(Message, {\n message: gettext(\"This category is protected. You can't browse it's contents.\")\n });\n}\n\nfunction Message(_ref8) {\n var message = _ref8.message;\n\n return _react2.default.createElement(\n 'div',\n { className: 'media category-thread-message' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'p',\n null,\n message\n )\n )\n );\n}\n\n},{\"../../../avatar\":3,\"react\":\"react\"}],13:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-6 col-md-6 category-main' },\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(_icon2.default, { category: category })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'h4',\n { className: 'media-heading' },\n _react2.default.createElement(\n 'a',\n { href: category.url.index },\n category.name\n )\n ),\n _react2.default.createElement(_description2.default, { category: category })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _description = require('./description');\n\nvar _description2 = _interopRequireDefault(_description);\n\nvar _icon = require('./icon');\n\nvar _icon2 = _interopRequireDefault(_icon);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./description\":9,\"./icon\":10,\"react\":\"react\"}],14:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-md-2 hidden-xs hidden-sm' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled category-stats' },\n _react2.default.createElement(Threads, { threads: category.threads }),\n _react2.default.createElement(Posts, { posts: category.posts })\n )\n );\n};\n\nexports.Threads = Threads;\nexports.Posts = Posts;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction Threads(_ref2) {\n var threads = _ref2.threads;\n\n var message = ngettext(\"%(threads)s thread\", \"%(threads)s threads\", threads);\n\n return _react2.default.createElement(\n 'li',\n { className: 'category-stat-threads' },\n interpolate(message, {\n 'threads': threads\n }, true)\n );\n} // jshint ignore:start\nfunction Posts(_ref3) {\n var posts = _ref3.posts;\n\n var message = ngettext(\"%(posts)s post\", \"%(posts)s posts\", posts);\n\n return _react2.default.createElement(\n 'li',\n { className: 'category-stat-posts' },\n interpolate(message, {\n 'posts': posts\n }, true)\n );\n}\n\n},{\"../../../avatar\":3,\"react\":\"react\"}],15:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category,\n isFirst = _ref.isFirst;\n\n if (isFirst) return null;\n if (category.subcategories.length === 0) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'row subcategories-list' },\n category.subcategories.map(function (category) {\n return _react2.default.createElement(_listItem2.default, {\n category: category,\n key: category.id\n });\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _listItem = require('./list-item');\n\nvar _listItem2 = _interopRequireDefault(_listItem);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./list-item\":16,\"react\":\"react\"}],16:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category;\n\n var className = 'btn btn-default btn-block btn-sm btn-subcategory';\n if (!category.is_read) {\n className += ' btn-subcategory-new';\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-4 col-md-3' },\n _react2.default.createElement(\n 'a',\n {\n className: className,\n href: category.url.index\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n getIcon(category)\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-text' },\n category.name\n )\n )\n );\n};\n\nexports.getIcon = getIcon;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction getIcon(category) {\n if (category.is_closed) {\n if (category.is_read) {\n return 'lock_outline';\n }\n\n return 'lock';\n }\n\n if (category.is_read) {\n return 'chat_bubble_outline';\n }\n\n return 'chat_bubble';\n}\n\n},{\"react\":\"react\"}],17:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.select = select;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _blankslate = require('./blankslate');\n\nvar _blankslate2 = _interopRequireDefault(_blankslate);\n\nvar _categoriesList = require('./categories-list');\n\nvar _categoriesList2 = _interopRequireDefault(_categoriesList);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _polls = require('../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar hydrate = function hydrate(category) {\n return Object.assign({}, category, {\n last_post_on: category.last_post_on ? (0, _moment2.default)(category.last_post_on) : null,\n subcategories: category.subcategories.map(hydrate)\n });\n};\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.update = function (data) {\n _this.setState({\n categories: data.map(hydrate)\n });\n };\n\n _this.state = {\n categories: _index2.default.get('CATEGORIES').map(hydrate)\n };\n\n _this.startPolling(_index2.default.get('CATEGORIES_API'));\n return _this;\n }\n\n _createClass(_class, [{\n key: 'startPolling',\n value: function startPolling(api) {\n _polls2.default.start({\n poll: 'categories',\n url: api,\n frequency: 180 * 1000,\n update: this.update\n });\n }\n }, {\n key: 'render',\n value: function render() {\n var categories = this.state.categories;\n\n\n if (categories.length === 0) {\n return _react2.default.createElement(_blankslate2.default, null);\n }\n\n return _react2.default.createElement(_categoriesList2.default, { categories: categories });\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction select(store) {\n return {\n 'tick': store.tick.tick\n };\n}\n\n},{\"../../index\":291,\"../../services/polls\":361,\"./blankslate\":6,\"./categories-list\":7,\"moment\":\"moment\",\"react\":\"react\"}],18:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'select',\n {\n className: props.className || 'form-control',\n disabled: props.disabled || false,\n id: props.id || null,\n onChange: props.onChange,\n value: props.value\n },\n props.choices.map(function (item) {\n return _react2.default.createElement(\n 'option',\n {\n disabled: item.disabled || false,\n key: item.value,\n value: item.value\n },\n '- - '.repeat(item.level) + item.label\n );\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],19:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.cropAvatar = function () {\n if (_this.state.isLoading) {\n return false;\n }\n\n _this.setState({\n 'isLoading': true\n });\n\n var avatarType = _this.props.upload ? 'crop_tmp' : 'crop_src';\n var cropit = $('.crop-form');\n\n var deviceRatio = cropit.cropit('exportZoom');\n var cropitOffset = cropit.cropit('offset');\n\n _ajax2.default.post(_this.props.user.api.avatar, {\n avatar: avatarType,\n crop: {\n offset: {\n x: cropitOffset.x * deviceRatio,\n y: cropitOffset.y * deviceRatio\n },\n zoom: cropit.cropit('zoom') * deviceRatio\n }\n }).then(function (data) {\n _this.props.onComplete(data);\n _snackbar2.default.success(data.detail);\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n _this.setState({\n isLoading: false\n });\n } else {\n _this.props.showError(rejection);\n }\n });\n };\n\n _this.state = {\n isLoading: false,\n deviceRatio: 1\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'getAvatarSize',\n value: function getAvatarSize() {\n if (this.props.upload) {\n return this.props.options.crop_tmp.size;\n } else {\n return this.props.options.crop_src.size;\n }\n }\n }, {\n key: 'getImagePath',\n value: function getImagePath() {\n if (this.props.upload) {\n return this.props.dataUrl;\n } else {\n return this.props.options.crop_src.url;\n }\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n var cropit = $('.crop-form');\n var cropperWidth = this.getAvatarSize();\n\n var initialWidth = cropit.width();\n while (initialWidth < cropperWidth) {\n cropperWidth = cropperWidth / 2;\n }\n\n var deviceRatio = this.getAvatarSize() / cropperWidth;\n\n cropit.width(cropperWidth);\n\n cropit.cropit({\n width: cropperWidth,\n height: cropperWidth,\n exportZoom: deviceRatio,\n imageState: {\n src: this.getImagePath()\n },\n onImageLoaded: function onImageLoaded() {\n if (_this2.props.upload) {\n // center uploaded image\n var zoomLevel = cropit.cropit('zoom');\n var imageSize = cropit.cropit('imageSize');\n\n // is it wider than taller?\n if (imageSize.width > imageSize.height) {\n var displayedWidth = imageSize.width * zoomLevel;\n var offsetX = (displayedWidth - _this2.getAvatarSize()) / -2;\n\n cropit.cropit('offset', {\n x: offsetX,\n y: 0\n });\n } else if (imageSize.width < imageSize.height) {\n var displayedHeight = imageSize.height * zoomLevel;\n var offsetY = (displayedHeight - _this2.getAvatarSize()) / -2;\n\n cropit.cropit('offset', {\n x: 0,\n y: offsetY\n });\n } else {\n cropit.cropit('offset', {\n x: 0,\n y: 0\n });\n }\n } else {\n // use preserved crop\n var crop = _this2.props.options.crop_src.crop;\n\n if (crop) {\n cropit.cropit('zoom', crop.zoom);\n cropit.cropit('offset', {\n x: crop.x,\n y: crop.y\n });\n }\n }\n }\n });\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n $('.crop-form').cropit('disable');\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-avatar-crop' },\n _react2.default.createElement(\n 'div',\n { className: 'crop-form' },\n _react2.default.createElement('div', { className: 'cropit-preview' }),\n _react2.default.createElement('input', {\n type: 'range',\n className: 'cropit-image-zoom-input'\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-6 col-md-offset-3' },\n _react2.default.createElement(\n _button2.default,\n {\n onClick: this.cropAvatar,\n loading: this.state.isLoading,\n className: 'btn-primary btn-block'\n },\n this.props.upload ? gettext(\"Set avatar\") : gettext(\"Crop image\")\n ),\n _react2.default.createElement(\n _button2.default,\n {\n onClick: this.props.showIndex,\n disabled: this.state.isLoading,\n className: 'btn-default btn-block'\n },\n gettext(\"Cancel\")\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../avatar\":3,\"../button\":5,\"react\":\"react\"}],20:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Gallery = exports.GalleryItem = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _batch = require('../../utils/batch');\n\nvar _batch2 = _interopRequireDefault(_batch);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar GalleryItem = exports.GalleryItem = function (_React$Component) {\n _inherits(GalleryItem, _React$Component);\n\n function GalleryItem() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, GalleryItem);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = GalleryItem.__proto__ || Object.getPrototypeOf(GalleryItem)).call.apply(_ref, [this].concat(args))), _this), _this.select = function () {\n _this.props.select(_this.props.id);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n /* jshint ignore:start */\n\n\n _createClass(GalleryItem, [{\n key: 'getClassName',\n\n /* jshint ignore:end */\n\n value: function getClassName() {\n if (this.props.selection === this.props.id) {\n if (this.props.disabled) {\n return 'btn btn-avatar btn-disabled avatar-selected';\n } else {\n return 'btn btn-avatar avatar-selected';\n }\n } else if (this.props.disabled) {\n return 'btn btn-avatar btn-disabled';\n } else {\n return 'btn btn-avatar';\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: this.getClassName(),\n disabled: this.props.disabled,\n onClick: this.select\n },\n _react2.default.createElement('img', { src: this.props.url })\n );\n /* jshint ignore:end */\n }\n }]);\n\n return GalleryItem;\n}(_react2.default.Component);\n\nvar Gallery = exports.Gallery = function (_React$Component2) {\n _inherits(Gallery, _React$Component2);\n\n function Gallery() {\n _classCallCheck(this, Gallery);\n\n return _possibleConstructorReturn(this, (Gallery.__proto__ || Object.getPrototypeOf(Gallery)).apply(this, arguments));\n }\n\n _createClass(Gallery, [{\n key: 'render',\n value: function render() {\n var _this3 = this;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'avatars-gallery' },\n _react2.default.createElement(\n 'h3',\n null,\n this.props.name\n ),\n _react2.default.createElement(\n 'div',\n { className: 'avatars-gallery-images' },\n (0, _batch2.default)(this.props.images, 4, null).map(function (row, i) {\n return _react2.default.createElement(\n 'div',\n { className: 'row', key: i },\n row.map(function (item, i) {\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-3', key: i },\n item ? _react2.default.createElement(GalleryItem, _extends({\n disabled: _this3.props.disabled,\n select: _this3.props.select,\n selection: _this3.props.selection\n }, item)) : _react2.default.createElement('div', { className: 'blank-avatar' })\n );\n })\n );\n })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return Gallery;\n}(_react2.default.Component);\n\nvar _class = function (_React$Component3) {\n _inherits(_class, _React$Component3);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this4 = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this4.select = function (image) {\n _this4.setState({\n selection: image\n });\n };\n\n _this4.save = function () {\n if (_this4.state.isLoading) {\n return false;\n }\n\n _this4.setState({\n 'isLoading': true\n });\n\n _ajax2.default.post(_this4.props.user.api.avatar, {\n avatar: 'galleries',\n image: _this4.state.selection\n }).then(function (response) {\n _this4.setState({\n 'isLoading': false\n });\n\n _snackbar2.default.success(response.detail);\n _this4.props.onComplete(response);\n _this4.props.showIndex();\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n _this4.setState({\n 'isLoading': false\n });\n } else {\n _this4.props.showError(rejection);\n }\n });\n };\n\n _this4.state = {\n 'selection': null,\n 'isLoading': false\n };\n return _this4;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n var _this5 = this;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-avatar-gallery' },\n this.props.options.galleries.map(function (item, i) {\n return _react2.default.createElement(Gallery, { name: item.name,\n images: item.images,\n selection: _this5.state.selection,\n disabled: _this5.state.isLoading,\n select: _this5.select,\n key: i });\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-6 col-md-offset-3' },\n _react2.default.createElement(\n _button2.default,\n { onClick: this.save,\n loading: this.state.isLoading,\n disabled: !this.state.selection,\n className: 'btn-primary btn-block' },\n this.state.selection ? gettext(\"Save choice\") : gettext(\"Select avatar\")\n ),\n _react2.default.createElement(\n _button2.default,\n { onClick: this.props.showIndex,\n disabled: this.state.isLoading,\n className: 'btn-default btn-block' },\n gettext(\"Cancel\")\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../index\":291,\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../../utils/batch\":367,\"../avatar\":3,\"../button\":5,\"react\":\"react\"}],21:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _loader = require('../loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.setGravatar = function () {\n _this.callApi('gravatar');\n };\n\n _this.setGenerated = function () {\n _this.callApi('generated');\n };\n\n _this.state = {\n 'isLoading': false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'callApi',\n value: function callApi(avatarType) {\n var _this2 = this;\n\n if (this.state.isLoading) {\n return false;\n }\n\n this.setState({\n 'isLoading': true\n });\n\n _ajax2.default.post(this.props.user.api.avatar, {\n avatar: avatarType\n }).then(function (response) {\n _this2.setState({\n 'isLoading': false\n });\n\n _snackbar2.default.success(response.detail);\n _this2.props.onComplete(response);\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n _this2.setState({\n 'isLoading': false\n });\n } else {\n _this2.props.showError(rejection);\n }\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getGravatarButton',\n\n /* jshint ignore:end */\n\n value: function getGravatarButton() {\n if (this.props.options.gravatar) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n _button2.default,\n { onClick: this.setGravatar,\n disabled: this.state.isLoading,\n className: 'btn-default btn-block btn-avatar-gravatar' },\n gettext(\"Download my Gravatar\")\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getCropButton',\n value: function getCropButton() {\n if (!this.props.options.crop_src) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-block btn-avatar-crop',\n disabled: this.state.isLoading,\n onClick: this.props.showCrop\n },\n gettext(\"Re-crop uploaded image\")\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getUploadButton',\n value: function getUploadButton() {\n if (!this.props.options.upload) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-block btn-avatar-upload',\n disabled: this.state.isLoading,\n onClick: this.props.showUpload\n },\n gettext(\"Upload new image\")\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getGalleryButton',\n value: function getGalleryButton() {\n if (!this.props.options.galleries) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-block btn-avatar-gallery',\n disabled: this.state.isLoading,\n onClick: this.props.showGallery\n },\n gettext(\"Pick avatar from gallery\")\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getAvatarPreview',\n value: function getAvatarPreview() {\n /* jshint ignore:start */\n var userPeview = {\n id: this.props.user.id,\n avatars: this.props.options.avatars\n };\n /* jshint ignore:end */\n\n if (this.state.isLoading) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'avatar-preview preview-loading' },\n _react2.default.createElement(_avatar2.default, {\n size: '200',\n user: userPeview\n }),\n _react2.default.createElement(_loader2.default, null)\n );\n /* jshint ignore:end */\n }\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'avatar-preview' },\n _react2.default.createElement(_avatar2.default, {\n size: '200',\n user: userPeview\n })\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-avatar-index' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-5' },\n this.getAvatarPreview()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-md-7' },\n this.getGravatarButton(),\n _react2.default.createElement(\n _button2.default,\n { onClick: this.setGenerated,\n disabled: this.state.isLoading,\n className: 'btn-default btn-block btn-avatar-generate' },\n gettext(\"Generate my individual avatar\")\n ),\n this.getCropButton(),\n this.getUploadButton(),\n this.getGalleryButton()\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../avatar\":3,\"../button\":5,\"../loader\":54,\"react\":\"react\"}],22:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ChangeAvatarError = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.select = select;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _index = require('./index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _crop = require('./crop');\n\nvar _crop2 = _interopRequireDefault(_crop);\n\nvar _upload = require('./upload');\n\nvar _upload2 = _interopRequireDefault(_upload);\n\nvar _gallery = require('./gallery');\n\nvar _gallery2 = _interopRequireDefault(_gallery);\n\nvar _modalLoader = require('../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _users = require('../../reducers/users');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar ChangeAvatarError = exports.ChangeAvatarError = function (_React$Component) {\n _inherits(ChangeAvatarError, _React$Component);\n\n function ChangeAvatarError() {\n _classCallCheck(this, ChangeAvatarError);\n\n return _possibleConstructorReturn(this, (ChangeAvatarError.__proto__ || Object.getPrototypeOf(ChangeAvatarError)).apply(this, arguments));\n }\n\n _createClass(ChangeAvatarError, [{\n key: 'getErrorReason',\n value: function getErrorReason() {\n if (this.props.reason) {\n /* jshint ignore:start */\n return _react2.default.createElement('p', { dangerouslySetInnerHTML: { __html: this.props.reason } });\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'remove_circle_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.props.message\n ),\n this.getErrorReason(),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n gettext(\"Ok\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return ChangeAvatarError;\n}(_react2.default.Component);\n\nvar _class = function (_React$Component2) {\n _inherits(_class, _React$Component2);\n\n function _class() {\n var _ref;\n\n var _temp, _this2, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this2 = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this2), _this2.showError = function (error) {\n _this2.setState({\n error: error\n });\n }, _this2.showIndex = function () {\n _this2.setState({\n 'component': _index2.default\n });\n }, _this2.showUpload = function () {\n _this2.setState({\n 'component': _upload2.default\n });\n }, _this2.showCrop = function () {\n _this2.setState({\n 'component': _crop2.default\n });\n }, _this2.showGallery = function () {\n _this2.setState({\n 'component': _gallery2.default\n });\n }, _this2.completeFlow = function (options) {\n _store2.default.dispatch((0, _users.updateAvatar)(_this2.props.user, options.avatars));\n\n _this2.setState({\n 'component': _index2.default,\n options: options\n });\n }, _temp), _possibleConstructorReturn(_this2, _ret);\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this3 = this;\n\n _ajax2.default.get(this.props.user.api.avatar).then(function (options) {\n _this3.setState({\n 'component': _index2.default,\n 'options': options,\n 'error': null\n });\n }, function (rejection) {\n _this3.showError(rejection);\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getBody',\n\n /* jshint ignore:end */\n\n value: function getBody() {\n if (this.state) {\n if (this.state.error) {\n /* jshint ignore:start */\n return _react2.default.createElement(ChangeAvatarError, { message: this.state.error.detail,\n reason: this.state.error.reason });\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(this.state.component, { options: this.state.options,\n user: this.props.user,\n onComplete: this.completeFlow,\n showError: this.showError,\n showIndex: this.showIndex,\n showCrop: this.showCrop,\n showUpload: this.showUpload,\n showGallery: this.showGallery });\n /* jshint ignore:end */\n }\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_modalLoader2.default, null);\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.state && this.state.error) {\n return \"modal-dialog modal-message modal-change-avatar\";\n } else {\n return \"modal-dialog modal-change-avatar\";\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName(),\n role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Change your avatar\")\n )\n ),\n this.getBody()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction select(state) {\n return {\n 'user': state.auth.user\n };\n}\n\n},{\"../../reducers/users\":351,\"../../services/ajax\":352,\"../../services/store\":364,\"../modal-loader\":57,\"./crop\":19,\"./gallery\":20,\"./index\":21,\"./upload\":23,\"react\":\"react\"}],23:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _crop = require('./crop');\n\nvar _crop2 = _interopRequireDefault(_crop);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _fileSize = require('../../utils/file-size');\n\nvar _fileSize2 = _interopRequireDefault(_fileSize);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.pickFile = function () {\n document.getElementById('avatar-hidden-upload').click();\n };\n\n _this.uploadFile = function () {\n var image = document.getElementById('avatar-hidden-upload').files[0];\n if (!image) return;\n\n var validationError = _this.validateFile(image);\n if (validationError) {\n _snackbar2.default.error(validationError);\n return;\n }\n\n _this.setState({\n image: image,\n preview: URL.createObjectURL(image),\n progress: 0\n });\n\n var data = new FormData();\n data.append('avatar', 'upload');\n data.append('image', image);\n\n _ajax2.default.upload(_this.props.user.api.avatar, data, function (progress) {\n _this.setState({\n progress: progress\n });\n }).then(function (data) {\n _this.setState({\n options: data,\n uploaded: data.detail\n });\n\n _snackbar2.default.info(gettext(\"Your image has been uploaded and you may now crop it.\"));\n }, function (rejection) {\n if (rejection.status === 400 || rejection.status === 413) {\n _snackbar2.default.error(rejection.detail);\n _this.setState({\n isLoading: false,\n image: null,\n progress: 0\n });\n } else {\n _this.props.showError(rejection);\n }\n });\n };\n\n _this.state = {\n image: null,\n preview: null,\n progress: 0,\n uploaded: null,\n dataUrl: null\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'validateFile',\n value: function validateFile(image) {\n if (image.size > this.props.options.upload.limit) {\n return interpolate(gettext(\"Selected file is too big. (%(filesize)s)\"), {\n 'filesize': (0, _fileSize2.default)(image.size)\n }, true);\n }\n\n var invalidTypeMsg = gettext(\"Selected file type is not supported.\");\n if (this.props.options.upload.allowed_mime_types.indexOf(image.type) === -1) {\n return invalidTypeMsg;\n }\n\n var extensionFound = false;\n var loweredFilename = image.name.toLowerCase();\n this.props.options.upload.allowed_extensions.map(function (extension) {\n if (loweredFilename.substr(extension.length * -1) === extension) {\n extensionFound = true;\n }\n });\n\n if (!extensionFound) {\n return invalidTypeMsg;\n }\n\n return false;\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getUploadRequirements',\n\n /* jshint ignore:end */\n\n value: function getUploadRequirements(options) {\n var extensions = options.allowed_extensions.map(function (extension) {\n return extension.substr(1);\n });\n\n return interpolate(gettext(\"%(files)s files smaller than %(limit)s\"), {\n 'files': extensions.join(', '),\n 'limit': (0, _fileSize2.default)(options.limit)\n }, true);\n }\n }, {\n key: 'getUploadButton',\n value: function getUploadButton() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-avatar-upload' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-pick-file',\n onClick: this.pickFile\n },\n _react2.default.createElement(\n 'div',\n { className: 'material-icon' },\n 'input'\n ),\n gettext(\"Select file\")\n ),\n _react2.default.createElement(\n 'p',\n { className: 'text-muted' },\n this.getUploadRequirements(this.props.options.upload)\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getUploadProgressLabel',\n value: function getUploadProgressLabel() {\n return interpolate(gettext(\"%(progress)s % complete\"), {\n 'progress': this.state.progress\n }, true);\n }\n }, {\n key: 'getUploadProgress',\n value: function getUploadProgress() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-avatar-upload' },\n _react2.default.createElement(\n 'div',\n { className: 'upload-progress' },\n _react2.default.createElement('img', { src: this.state.preview }),\n _react2.default.createElement(\n 'div',\n { className: 'progress' },\n _react2.default.createElement(\n 'div',\n {\n className: 'progress-bar',\n role: 'progressbar',\n 'aria-valuenow': '{this.state.progress}',\n 'aria-valuemin': '0',\n 'aria-valuemax': '100',\n style: { width: this.state.progress + '%' }\n },\n _react2.default.createElement(\n 'span',\n { className: 'sr-only' },\n this.getUploadProgressLabel()\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'renderUpload',\n value: function renderUpload() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement('input', {\n type: 'file',\n id: 'avatar-hidden-upload',\n className: 'hidden-file-upload',\n onChange: this.uploadFile\n }),\n this.state.image ? this.getUploadProgress() : this.getUploadButton(),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-6 col-md-offset-3' },\n _react2.default.createElement(\n _button2.default,\n {\n onClick: this.props.showIndex,\n disabled: !!this.state.image,\n className: 'btn-default btn-block'\n },\n gettext(\"Cancel\")\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'renderCrop',\n value: function renderCrop() {\n /* jshint ignore:start */\n return _react2.default.createElement(_crop2.default, {\n options: this.state.options,\n user: this.props.user,\n upload: this.state.uploaded,\n dataUrl: this.state.preview,\n onComplete: this.props.onComplete,\n showError: this.props.showError,\n showIndex: this.props.showIndex\n });\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n if (this.state.uploaded) return this.renderCrop();\n\n return this.renderUpload();\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../../utils/file-size\":371,\"../button\":5,\"./crop\":19,\"react\":\"react\"}],24:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: \"getClassName\",\n value: function getClassName() {\n if (this.props.dropdown) {\n return \"btn btn-default btn-aligned btn-icon btn-dropdown-toggle open hidden-md hidden-lg\";\n } else {\n return \"btn btn-default btn-aligned btn-icon btn-dropdown-toggle hidden-md hidden-lg\";\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n \"button\",\n { className: this.getClassName(),\n type: \"button\",\n onClick: this.props.toggleNav,\n \"aria-haspopup\": \"true\",\n \"aria-expanded\": this.props.dropdown ? 'true' : 'false' },\n _react2.default.createElement(\n \"i\",\n { className: \"material-icon\" },\n \"menu\"\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],25:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var display = _ref.display;\n\n if (!display) return null;\n\n return _react2.default.createElement(_panelMessage2.default, {\n helpText: gettext(\"No profile details are editable at this time.\"),\n message: gettext(\"This option is currently unavailable.\")\n });\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _panelMessage = require('../panel-message');\n\nvar _panelMessage2 = _interopRequireDefault(_panelMessage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../panel-message\":87,\"react\":\"react\"}],26:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _select = require('../select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onChange = function (ev) {\n var _this$props = _this.props,\n field = _this$props.field,\n onChange = _this$props.onChange;\n\n onChange(field.fieldname, ev.target.value);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n var _props = this.props,\n disabled = _props.disabled,\n field = _props.field,\n value = _props.value;\n var input = field.input;\n\n\n if (input.type === 'select') {\n return _react2.default.createElement(_select2.default, {\n choices: input.choices,\n disabled: disabled,\n id: \"id_\" + field.fieldname,\n onChange: this.onChange,\n value: value\n });\n }\n\n if (input.type === 'textarea') {\n return _react2.default.createElement('textarea', {\n className: 'form-control',\n disabled: disabled,\n id: \"id_\" + field.fieldname,\n onChange: this.onChange,\n rows: '4',\n type: 'text',\n value: value\n });\n }\n\n if (input.type === 'text') {\n return _react2.default.createElement('input', {\n className: 'form-control',\n disabled: disabled,\n id: \"id_\" + field.fieldname,\n onChange: this.onChange,\n type: 'text',\n value: value\n });\n }\n\n return null;\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../select\":203,\"react\":\"react\"}],27:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var disabled = _ref.disabled,\n errors = _ref.errors,\n fields = _ref.fields,\n name = _ref.name,\n onChange = _ref.onChange,\n value = _ref.value;\n\n return _react2.default.createElement(\n 'fieldset',\n null,\n _react2.default.createElement(\n 'legend',\n null,\n name\n ),\n fields.map(function (field) {\n return _react2.default.createElement(\n _formGroup2.default,\n {\n 'for': \"id_\" + field.fieldname,\n helpText: field.help_text,\n key: field.fieldname,\n label: field.label,\n validation: errors[field.fieldname]\n },\n _react2.default.createElement(_fieldInput2.default, {\n disabled: disabled,\n field: field,\n onChange: onChange,\n value: value[field.fieldname]\n })\n );\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _fieldInput = require('./field-input');\n\nvar _fieldInput2 = _interopRequireDefault(_fieldInput);\n\nvar _formGroup = require('../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../form-group\":51,\"./field-input\":26,\"react\":\"react\"}],28:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.CancelButton = CancelButton;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _fieldset = require('./fieldset');\n\nvar _fieldset2 = _interopRequireDefault(_fieldset);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _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; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onChange = function (name, value) {\n _this.setState(_defineProperty({}, name, value));\n };\n\n _this.state = {\n isLoading: false,\n\n errors: {}\n };\n\n var groups = props.groups.length;\n for (var i = 0; i < groups; i++) {\n var group = props.groups[i];\n var fields = group.fields.length;\n for (var f = 0; f < fields; f++) {\n var fieldname = group.fields[f].fieldname;\n var initial = group.fields[f].initial;\n _this.state[fieldname] = initial;\n }\n }\n return _this;\n }\n\n _createClass(_class, [{\n key: 'send',\n value: function send() {\n var data = Object.assign({}, this.state, {\n errors: null,\n isLoading: null\n });\n\n return _ajax2.default.post(this.props.api, data);\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(data) {\n this.props.onSuccess(data);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n this.setState({ errors: rejection });\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n this.props.groups.map(function (group, i) {\n return _react2.default.createElement(_fieldset2.default, {\n disabled: _this2.state.isLoading,\n errors: _this2.state.errors,\n fields: group.fields,\n name: group.name,\n key: i,\n onChange: _this2.onChange,\n value: _this2.state\n });\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-footer text-right' },\n _react2.default.createElement(CancelButton, {\n disabled: this.state.isLoading,\n onCancel: this.props.onCancel\n }),\n ' ',\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Save changes\")\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\nfunction CancelButton(_ref) {\n var onCancel = _ref.onCancel,\n disabled = _ref.disabled;\n\n if (!onCancel) return null;\n\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n disabled: disabled,\n onClick: onCancel,\n type: 'button'\n },\n gettext(\"Cancel\")\n );\n}\n\n},{\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../button\":5,\"../form\":52,\"./fieldset\":27,\"react\":\"react\"}],29:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.FormDisplay = FormDisplay;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _blankslate = require('./blankslate');\n\nvar _blankslate2 = _interopRequireDefault(_blankslate);\n\nvar _loader = require('./loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n loading: true,\n groups: null\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(this.props.api).then(function (groups) {\n _this2.setState({\n loading: false,\n\n groups: groups\n });\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n if (_this2.props.cancel) {\n _this2.props.cancel();\n }\n });\n }\n }, {\n key: 'render',\n value: function render() {\n var _state = this.state,\n groups = _state.groups,\n loading = _state.loading;\n\n\n return _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Edit details\")\n )\n ),\n _react2.default.createElement(_loader2.default, { display: loading }),\n _react2.default.createElement(_blankslate2.default, { display: !loading && !groups.length }),\n _react2.default.createElement(FormDisplay, {\n api: this.props.api,\n display: !loading && groups.length,\n groups: groups,\n onCancel: this.props.onCancel,\n onSuccess: this.props.onSuccess\n })\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction FormDisplay(_ref) {\n var api = _ref.api,\n display = _ref.display,\n groups = _ref.groups,\n onCancel = _ref.onCancel,\n onSuccess = _ref.onSuccess;\n\n if (!display) return null;\n\n return _react2.default.createElement(_form2.default, {\n api: api,\n groups: groups,\n onCancel: onCancel,\n onSuccess: onSuccess\n });\n}\n\n},{\"../../services/ajax\":352,\"../../services/snackbar\":363,\"./blankslate\":25,\"./form\":28,\"./loader\":30,\"react\":\"react\"}],30:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var display = _ref.display;\n\n if (!display) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(_loader2.default, null)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _loader = require('../loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../loader\":54,\"react\":\"react\"}],31:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _this.props.replaceSelection(_this.props.execAction);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-icon ' + this.props.className,\n disabled: this.props.disabled,\n onClick: this.onClick,\n title: this.props.title,\n type: 'button'\n },\n this.props.children\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],32:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: insertCode,\n title: gettext(\"Insert code\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'functions'\n )\n );\n};\n\nexports.insertCode = insertCode;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nvar _isUrl = require('../../../utils/is-url');\n\nvar _isUrl2 = _interopRequireDefault(_isUrl);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction insertCode(selection, replace) {\n var syntax = $.trim(prompt(gettext(\"Enter name of syntax of your code (optional)\") + ':'));\n replace(\"\\n\\n```\" + syntax + '\\n' + selection + \"\\n```\\n\\n\");\n}\n\n},{\"../../../utils/is-url\":372,\"./action\":31,\"react\":\"react\"}],33:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: makeEmphasis,\n title: gettext(\"Emphase selection\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'format_italic'\n )\n );\n};\n\nexports.makeEmphasis = makeEmphasis;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction makeEmphasis(selection, replace) {\n if (selection.length) {\n replace('*' + selection + '*');\n }\n}\n\n},{\"./action\":31,\"react\":\"react\"}],34:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: insertHr,\n title: gettext(\"Insert horizontal ruler\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'remove'\n )\n );\n};\n\nexports.insertHr = insertHr;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction insertHr(selection, replace) {\n replace('\\n\\n- - - - -\\n\\n');\n}\n\n},{\"./action\":31,\"react\":\"react\"}],35:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: insertImage,\n title: gettext(\"Insert image\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'insert_photo'\n )\n );\n};\n\nexports.insertImage = insertImage;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nvar _isUrl = require('../../../utils/is-url');\n\nvar _isUrl2 = _interopRequireDefault(_isUrl);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction insertImage(selection, replace) {\n var url = '';\n var label = '';\n\n if (selection.length) {\n if ((0, _isUrl2.default)(selection)) {\n url = selection;\n } else {\n label = selection;\n }\n }\n\n url = $.trim(prompt(gettext(\"Enter link to image\") + ':', url));\n label = $.trim(prompt(gettext(\"Enter image label (optional)\") + ':', label));\n\n if (url.length) {\n if (label.length > 0) {\n replace('![' + label + '](' + url + ')');\n } else {\n replace('!(' + url + ')');\n }\n }\n}\n\n},{\"../../../utils/is-url\":372,\"./action\":31,\"react\":\"react\"}],36:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: insertLink,\n title: gettext(\"Insert link\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'insert_link'\n )\n );\n};\n\nexports.insertLink = insertLink;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nvar _isUrl = require('../../../utils/is-url');\n\nvar _isUrl2 = _interopRequireDefault(_isUrl);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction insertLink(selection, replace) {\n var url = '';\n var label = '';\n\n if (selection.length) {\n if ((0, _isUrl2.default)(selection)) {\n url = selection;\n } else {\n label = selection;\n }\n }\n\n url = $.trim(prompt(gettext(\"Enter link address\") + ':', url));\n label = $.trim(prompt(gettext(\"Enter link label (optional)\") + ':', label));\n\n if (url.length) {\n if (label.length > 0) {\n replace('[' + label + '](' + url + ')');\n } else {\n replace(url);\n }\n }\n}\n\n},{\"../../../utils/is-url\":372,\"./action\":31,\"react\":\"react\"}],37:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: insertQuote,\n title: gettext(\"Insert quote\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'format_quote'\n )\n );\n};\n\nexports.insertQuote = insertQuote;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nvar _isUrl = require('../../../utils/is-url');\n\nvar _isUrl2 = _interopRequireDefault(_isUrl);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction insertQuote(selection, replace) {\n var title = $.trim(prompt(gettext(\"Enter quote autor, prefix usernames with @\") + ':', title));\n\n if (title) {\n replace('\\n\\n[quote=\"' + title + '\"]\\n' + selection + '\\n[/quote]\\n\\n');\n } else {\n replace('\\n\\n[quote]\\n' + selection + '\\n[/quote]\\n\\n');\n }\n}\n\n},{\"../../../utils/is-url\":372,\"./action\":31,\"react\":\"react\"}],38:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: makeStriketrough,\n title: gettext(\"Striketrough selection\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'format_strikethrough'\n )\n );\n};\n\nexports.makeStriketrough = makeStriketrough;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction makeStriketrough(selection, replace) {\n if (selection.length) {\n replace('~~' + selection + '~~');\n }\n}\n\n},{\"./action\":31,\"react\":\"react\"}],39:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: makeStrong,\n title: gettext(\"Bolder selection\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'format_bold'\n )\n );\n};\n\nexports.makeStrong = makeStrong;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction makeStrong(selection, replace) {\n if (selection.length) {\n replace('**' + selection + '**');\n }\n}\n\n},{\"./action\":31,\"react\":\"react\"}],40:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.Preview = Preview;\nexports.Image = Image;\nexports.Icon = Icon;\nexports.Filename = Filename;\nexports.Details = Details;\nexports.Actions = Actions;\nexports.Insert = Insert;\nexports.Remove = Remove;\nexports.Undo = Undo;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _ = require('../../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _escapeHtml = require('../../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nvar _fileSize = require('../../../../utils/file-size');\n\nvar _fileSize2 = _interopRequireDefault(_fileSize);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar DATE_ABBR = '%(relative)s';\nvar USER_SPAN = '%(user)s';\nvar USER_URL = '%(user)s';\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onInsert = function () {\n _this.props.replaceSelection(_this.insertAttachment);\n }, _this.insertAttachment = function (selection, replace) {\n var item = _this.props.item;\n\n if (item.is_image) {\n if (item.url.thumb) {\n replace('[![' + item.filename + '](' + item.url.thumb + ')](' + item.url.index + ')');\n } else {\n replace('[![' + item.filename + '](' + item.url.index + ')](' + item.url.index + ')');\n }\n } else {\n replace('[' + item.filename + '](' + item.url.index + ')');\n }\n }, _this.onRemove = function () {\n _this.updateItem({\n isRemoved: true\n });\n }, _this.onUndo = function () {\n _this.updateItem({\n isRemoved: false\n });\n }, _this.updateItem = function (newState) {\n var updatedAttachments = _this.props.attachments.map(function (item) {\n if (item.id === _this.props.item.id) {\n return Object.assign({}, item, newState);\n } else {\n return item;\n }\n });\n _this.props.onAttachmentsChange(updatedAttachments);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'li',\n { className: 'editor-attachment-complete' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-8 col-md-9' },\n _react2.default.createElement(Preview, this.props),\n _react2.default.createElement(\n 'div',\n { className: 'editor-attachment-details' },\n _react2.default.createElement(Filename, this.props),\n _react2.default.createElement(Details, this.props)\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-4 col-md-3 xs-margin-top-half' },\n _react2.default.createElement(Actions, _extends({\n onInsert: this.onInsert,\n onRemove: this.onRemove,\n onUndo: this.onUndo\n }, this.props))\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n;\n\nfunction Preview(props) {\n if (props.item.is_image) {\n return _react2.default.createElement(Image, props);\n } else {\n return _react2.default.createElement(Icon, props);\n }\n}\n\nfunction Image(props) {\n var thumbnailUrl = props.item.url.thumb || props.item.url.index;\n\n return _react2.default.createElement(\n 'div',\n { className: 'editor-attachment-image' },\n _react2.default.createElement('a', {\n href: props.item.url.index + '?shva=1',\n style: { backgroundImage: \"url('\" + thumbnailUrl + \"?shva=1')\" },\n target: '_blank'\n })\n );\n};\n\nfunction Icon(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'editor-attachment-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'insert_drive_file'\n )\n );\n}\n\nfunction Filename(props) {\n return _react2.default.createElement(\n 'h4',\n null,\n _react2.default.createElement(\n 'a',\n {\n className: 'item-title',\n href: props.item.url.index + '?shva=1',\n target: '_blank'\n },\n props.item.filename\n )\n );\n}\n\nfunction Details(props) {\n var user = null;\n if (props.item.url.uploader) {\n user = interpolate(USER_URL, {\n url: (0, _escapeHtml2.default)(props.item.url.uploader),\n user: (0, _escapeHtml2.default)(props.item.uploader_name)\n }, true);\n } else {\n user = interpolate(USER_SPAN, {\n user: (0, _escapeHtml2.default)(props.item.uploader_name)\n }, true);\n }\n\n var date = interpolate(DATE_ABBR, {\n absolute: (0, _escapeHtml2.default)(props.item.uploaded_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(props.item.uploaded_on.fromNow())\n }, true);\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s.\")), {\n filetype: props.item.filetype,\n size: (0, _fileSize2.default)(props.item.size),\n uploader: user,\n uploaded_on: date\n }, true);\n\n return _react2.default.createElement('p', { dangerouslySetInnerHTML: { __html: message } });\n}\n\nfunction Actions(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'editor-attachment-actions' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(Insert, props),\n _react2.default.createElement(Remove, props),\n _react2.default.createElement(Undo, props)\n )\n );\n}\n\nfunction Insert(props) {\n if (!!props.item.isRemoved) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-6' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sm btn-block',\n onClick: props.onInsert,\n type: 'button'\n },\n gettext(\"Insert\")\n )\n );\n}\n\nfunction Remove(props) {\n if (!!props.item.isRemoved && props.item.acl.can_delete) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-6' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sm btn-block',\n onClick: props.onRemove,\n type: 'button'\n },\n gettext(\"Remove\")\n )\n );\n}\n\nfunction Undo(props) {\n if (!props.item.isRemoved) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sm btn-block',\n onClick: props.onUndo,\n type: 'button'\n },\n gettext(\"Undo removal\")\n )\n );\n}\n\n},{\"../../../..\":291,\"../../../../utils/escape-html\":370,\"../../../../utils/file-size\":371,\"react\":\"react\"}],41:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _escapeHtml = require('../../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar STRONG = '%(name)s';\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n var filteredAttachments = _this.props.attachments.filter(function (item) {\n return item.key !== _this.props.item.key;\n });\n _this.props.onAttachmentsChange(filteredAttachments);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n var filename = interpolate(STRONG, {\n name: (0, _escapeHtml2.default)(this.props.item.filename)\n }, true);\n\n var title = interpolate(gettext(\"Error uploading %(filename)s\"), {\n filename: filename,\n progress: this.props.item.progress + '%'\n }, true);\n\n return _react2.default.createElement(\n 'li',\n { className: 'editor-attachment-error' },\n _react2.default.createElement(\n 'div',\n { className: 'editor-attachment-error-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'warning'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'editor-attachment-error-message' },\n _react2.default.createElement('h4', { dangerouslySetInnerHTML: { __html: title + ':' } }),\n _react2.default.createElement(\n 'p',\n null,\n this.props.item.error\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sm',\n onClick: this.onClick,\n type: 'button'\n },\n gettext(\"Dismiss\")\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n;\n\n},{\"../../../../utils/escape-html\":370,\"react\":\"react\"}],42:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (props.item.id) {\n return _react2.default.createElement(_complete2.default, props);\n }\n\n if (props.item.error) {\n return _react2.default.createElement(_error2.default, props);\n }\n\n return _react2.default.createElement(_upload2.default, props);\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _complete = require('./complete');\n\nvar _complete2 = _interopRequireDefault(_complete);\n\nvar _error = require('./error');\n\nvar _error2 = _interopRequireDefault(_error);\n\nvar _upload = require('./upload');\n\nvar _upload2 = _interopRequireDefault(_upload);\n\nvar _ = require('../../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _escapeHtml = require('../../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../..\":291,\"../../../../utils/escape-html\":370,\"./complete\":40,\"./error\":41,\"./upload\":43,\"react\":\"react\"}],43:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n var filename = interpolate(STRONG, {\n name: (0, _escapeHtml2.default)(props.item.filename)\n }, true);\n\n var message = interpolate(gettext(\"Uploading %(filename)s... %(progress)s\"), {\n filename: filename,\n progress: props.item.progress + '%'\n }, true);\n\n return _react2.default.createElement(\n 'li',\n { className: 'editor-attachment-upload' },\n _react2.default.createElement(\n 'div',\n { className: 'editor-attachment-progress-bar' },\n _react2.default.createElement('div', {\n className: 'editor-attachment-progress',\n style: { width: props.item.progress + '%' }\n })\n ),\n _react2.default.createElement('p', {\n className: 'editor-attachment-upload-message',\n dangerouslySetInnerHTML: { __html: message }\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _escapeHtml = require('../../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nvar STRONG = '%(name)s';\n\n;\n\n},{\"../../../../utils/escape-html\":370,\"react\":\"react\"}],44:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (!_2.default.get('user').acl.max_attachment_size) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'editor-attachments' },\n _react2.default.createElement(_list2.default, props),\n _react2.default.createElement(_uploader2.default, props)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _list = require('./list');\n\nvar _list2 = _interopRequireDefault(_list);\n\nvar _uploader = require('./uploader');\n\nvar _uploader2 = _interopRequireDefault(_uploader);\n\nvar _ = require('../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n; // jshint ignore:start\n\n},{\"../../..\":291,\"./list\":45,\"./uploader\":47,\"react\":\"react\"}],45:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled editor-attachments-list' },\n props.attachments.map(function (item) {\n return _react2.default.createElement(_attachment2.default, _extends({ item: item, key: item.id || item.key }, props));\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _attachment = require('./attachment');\n\nvar _attachment2 = _interopRequireDefault(_attachment);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n;\n\n},{\"./attachment\":42,\"react\":\"react\"}],46:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _ = require('../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n document.getElementById('editor-upload-field').click();\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n if (!_2.default.get('user').acl.max_attachment_size) {\n return null;\n }\n\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-icon ' + this.props.className,\n disabled: this.props.disabled,\n onClick: this.onClick,\n title: gettext('Upload file'),\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'file_upload'\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n;\n\n},{\"../../..\":291,\"react\":\"react\"}],47:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.getRandomKey = getRandomKey;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _ = require('../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onChange = function (event) {\n var file = event.target.files[0];\n if (!file) {\n return;\n }\n\n var upload = {\n id: null,\n key: getRandomKey(),\n progress: 0,\n error: null,\n filename: file.name\n };\n\n _this.props.onAttachmentsChange([upload].concat(_this.props.attachments));\n\n var data = new FormData();\n data.append('upload', file);\n\n _ajax2.default.upload(_2.default.get('ATTACHMENTS_API'), data, function (progress) {\n upload.progress = progress;\n _this.props.onAttachmentsChange(_this.props.attachments.concat());\n }).then(function (data) {\n data.uploaded_on = (0, _moment2.default)(data.uploaded_on);\n Object.assign(upload, data);\n _this.props.onAttachmentsChange(_this.props.attachments.concat());\n }, function (rejection) {\n if (rejection.status === 400 || rejection.status === 413) {\n upload.error = rejection.detail;\n _this.props.onAttachmentsChange(_this.props.attachments.concat());\n } else {\n _snackbar2.default.apiError(rejection);\n }\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement('input', {\n id: 'editor-upload-field',\n onChange: this.onChange,\n type: 'file'\n });\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n;\n\nfunction getRandomKey() {\n return 'upld-' + Math.round(new Date().getTime());\n}\n\n},{\"../../..\":291,\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"moment\":\"moment\",\"react\":\"react\"}],48:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.Protect = Protect;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _code = require('./actions/code');\n\nvar _code2 = _interopRequireDefault(_code);\n\nvar _emphasis = require('./actions/emphasis');\n\nvar _emphasis2 = _interopRequireDefault(_emphasis);\n\nvar _hr = require('./actions/hr');\n\nvar _hr2 = _interopRequireDefault(_hr);\n\nvar _image = require('./actions/image');\n\nvar _image2 = _interopRequireDefault(_image);\n\nvar _link = require('./actions/link');\n\nvar _link2 = _interopRequireDefault(_link);\n\nvar _striketrough = require('./actions/striketrough');\n\nvar _striketrough2 = _interopRequireDefault(_striketrough);\n\nvar _strong = require('./actions/strong');\n\nvar _strong2 = _interopRequireDefault(_strong);\n\nvar _quote = require('./actions/quote');\n\nvar _quote2 = _interopRequireDefault(_quote);\n\nvar _attachments = require('./attachments');\n\nvar _attachments2 = _interopRequireDefault(_attachments);\n\nvar _uploadButton = require('./attachments/upload-button/');\n\nvar _uploadButton2 = _interopRequireDefault(_uploadButton);\n\nvar _markupPreview = require('./markup-preview');\n\nvar _markupPreview2 = _interopRequireDefault(_markupPreview);\n\nvar _textutils = require('./textutils');\n\nvar textUtils = _interopRequireWildcard(_textutils);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onPreviewClick = function () {\n if (_this.state.isPreviewLoading) {\n return;\n }\n\n _this.setState({\n isPreviewLoading: true\n });\n\n _ajax2.default.post(_2.default.get('PARSE_MARKUP_API'), { post: _this.props.value }).then(function (data) {\n _modal2.default.show(_react2.default.createElement(_markupPreview2.default, { markup: data.parsed }));\n\n _this.setState({\n isPreviewLoading: false\n });\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n _this.setState({\n isPreviewLoading: false\n });\n });\n };\n\n _this.replaceSelection = function (operation) {\n operation(textUtils.getSelectionText(), _this._replaceSelection);\n };\n\n _this._replaceSelection = function (newValue) {\n _this.props.onChange({\n target: {\n value: textUtils.replace(newValue)\n }\n });\n };\n\n _this.state = {\n isPreviewLoading: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n $('#editor-textarea').atwho({\n at: '@',\n displayTpl: '
  • \"\"${username}
  • ',\n insertTpl: '@${username}',\n searchKey: 'username',\n callbacks: {\n remoteFilter: function remoteFilter(query, callback) {\n $.getJSON(_2.default.get('MENTION_API'), { q: query }, callback);\n }\n }\n });\n\n $('#editor-textarea').on(\"inserted.atwho\", function (event, flag, query) {\n _this2.props.onChange(event);\n });\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'editor-border' },\n _react2.default.createElement('textarea', {\n className: 'form-control',\n value: this.props.value,\n disabled: this.props.loading,\n id: 'editor-textarea',\n onChange: this.props.onChange,\n rows: '9'\n }),\n _react2.default.createElement(\n 'div',\n { className: 'editor-footer' },\n _react2.default.createElement(\n 'div',\n { className: 'buttons-list pull-left' },\n _react2.default.createElement(_strong2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_emphasis2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_striketrough2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_hr2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_link2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_image2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_quote2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_code2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_uploadButton2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading\n })\n ),\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n onClick: this.onPreviewClick,\n type: 'button'\n },\n gettext(\"Preview\")\n ),\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-primary btn-sm pull-right',\n loading: this.props.loading\n },\n this.props.submitLabel || gettext(\"Post\")\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sm pull-right',\n disabled: this.props.loading,\n onClick: this.props.onCancel,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement('div', { className: 'clearfix visible-xs-block' }),\n _react2.default.createElement(Protect, {\n canProtect: this.props.canProtect,\n disabled: this.props.loading,\n onProtect: this.props.onProtect,\n onUnprotect: this.props.onUnprotect,\n protect: this.props.protect\n })\n ),\n _react2.default.createElement(_attachments2.default, {\n attachments: this.props.attachments,\n onAttachmentsChange: this.props.onAttachmentsChange,\n placeholder: this.props.placeholder,\n replaceSelection: this.replaceSelection\n })\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction Protect(props) {\n if (!props.canProtect) return null;\n\n var label = props.protect ? gettext('Protected') : gettext('Protect');\n\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-icon btn-default btn-protect btn-sm pull-right',\n disabled: props.disabled,\n onClick: props.protect ? props.onUnprotect : props.onProtect,\n title: label,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n props.protect ? 'lock' : 'lock_outline'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'btn-text hidden-md hidden-lg' },\n label\n )\n );\n}\n\n},{\"../..\":291,\"../../services/ajax\":352,\"../../services/modal\":358,\"../../services/snackbar\":363,\"../button\":5,\"./actions/code\":32,\"./actions/emphasis\":33,\"./actions/hr\":34,\"./actions/image\":35,\"./actions/link\":36,\"./actions/quote\":37,\"./actions/striketrough\":38,\"./actions/strong\":39,\"./attachments\":44,\"./attachments/upload-button/\":46,\"./markup-preview\":49,\"./textutils\":50,\"react\":\"react\"}],49:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog', role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Preview message\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-body markup-preview' },\n _react2.default.createElement(_misagoMarkup2.default, { markup: props.markup })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _misagoMarkup = require('../misago-markup');\n\nvar _misagoMarkup2 = _interopRequireDefault(_misagoMarkup);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../misago-markup\":56,\"react\":\"react\"}],50:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getTextarea = getTextarea;\nexports.getValue = getValue;\nexports.getSelectionRange = getSelectionRange;\nexports.getSelection = getSelection;\nexports.getSelectionText = getSelectionText;\nexports.setSelection = setSelection;\nexports._replace = _replace;\nexports.replace = replace;\nvar textareaId = exports.textareaId = 'editor-textarea';\n\nfunction getTextarea() {\n return document.getElementById(textareaId);\n}\n\nfunction getValue() {\n return document.getElementById(textareaId).value;\n}\n\nfunction getSelectionRange(start, end) {\n return {\n start: start,\n end: end\n };\n}\n\nfunction getSelection() {\n var ctrl = getTextarea();\n if (document.selection) {\n ctrl.focus();\n var range = document.selection.createRange();\n var length = range.text.length;\n range.moveStart('character', -ctrl.value.length);\n return getSelectionRange(range.text.length - length, range.text.length);\n } else if (ctrl.selectionStart || ctrl.selectionStart == '0') {\n return getSelectionRange(ctrl.selectionStart, ctrl.selectionEnd);\n }\n}\n\nfunction getSelectionText() {\n var range = getSelection();\n return $.trim(getValue().substring(range.start, range.end));\n}\n\nfunction setSelection(selectionRange) {\n var ctrl = getTextarea();\n if (ctrl.setSelectionRange) {\n ctrl.focus();\n ctrl.setSelectionRange(selectionRange.start, selectionRange.end);\n } else if (ctrl.createTextRange) {\n var range = ctrl.createTextRange();\n range.collapse(true);\n range.moveStart('character', selectionRange.start);\n range.moveEnd('character', selectionRange.end);\n range.select();\n }\n}\n\nfunction _replace(myRange, replacement) {\n var ctrl = getTextarea();\n var text = ctrl.value;\n var startText = text.substring(0, myRange.start);\n ctrl.value = text.substring(0, myRange.start) + replacement + text.substring(myRange.end);\n setSelection(getSelectionRange(startText.length + replacement.length, startText.length + replacement.length));\n return ctrl.value;\n}\n\nfunction replace(replacement) {\n return _replace(getSelection(), replacement);\n}\n\n},{}],51:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'isValidated',\n value: function isValidated() {\n return typeof this.props.validation !== \"undefined\";\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n var className = 'form-group';\n if (this.isValidated()) {\n className += ' has-feedback';\n if (this.props.validation === null) {\n className += ' has-success';\n } else {\n className += ' has-error';\n }\n }\n return className;\n }\n }, {\n key: 'getFeedback',\n value: function getFeedback() {\n var _this2 = this;\n\n if (this.props.validation) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'help-block errors' },\n this.props.validation.map(function (error, i) {\n return _react2.default.createElement(\n 'p',\n { key: _this2.props.for + 'FeedbackItem' + i },\n error\n );\n })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getFeedbackDescription',\n value: function getFeedbackDescription() {\n if (this.isValidated()) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { id: this.props.for + '_status', className: 'sr-only' },\n this.props.validation ? gettext('(error)') : gettext('(success)')\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getHelpText',\n value: function getHelpText() {\n if (this.props.helpText) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'p',\n { className: 'help-block' },\n this.props.helpText\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName() },\n _react2.default.createElement(\n 'label',\n { className: 'control-label ' + (this.props.labelClass || ''),\n htmlFor: this.props.for || '' },\n this.props.label + ':'\n ),\n _react2.default.createElement(\n 'div',\n { className: this.props.controlClass || '' },\n this.props.children,\n this.getFeedbackDescription(),\n this.getFeedback(),\n this.getHelpText(),\n this.props.extra || null\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],52:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _validators = require('../utils/validators');\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _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; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar validateRequired = (0, _validators.required)();\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.bindInput = function (name) {\n return function (event) {\n _this.changeValue(name, event.target.value);\n };\n }, _this.changeValue = function (name, value) {\n var newState = _defineProperty({}, name, value);\n\n var formErrors = _this.state.errors || {};\n formErrors[name] = _this.validateField(name, newState[name]);\n newState.errors = formErrors;\n\n _this.setState(newState);\n }, _this.handleSubmit = function (event) {\n // we don't reload page on submissions\n if (event) {\n event.preventDefault();\n }\n\n if (_this.state.isLoading) {\n return;\n }\n\n if (_this.clean()) {\n _this.setState({ isLoading: true });\n var promise = _this.send();\n\n if (promise) {\n promise.then(function (success) {\n _this.setState({ isLoading: false });\n _this.handleSuccess(success);\n }, function (rejection) {\n _this.setState({ isLoading: false });\n _this.handleError(rejection);\n });\n } else {\n _this.setState({ isLoading: false });\n }\n }\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'validate',\n value: function validate() {\n var errors = {};\n if (!this.state.validators) {\n return errors;\n }\n\n var validators = {\n required: this.state.validators.required || this.state.validators,\n optional: this.state.validators.optional || {}\n };\n\n var validatedFields = [];\n\n // add required fields to validation\n for (var name in validators.required) {\n if (validators.required.hasOwnProperty(name) && validators.required[name]) {\n validatedFields.push(name);\n }\n }\n\n // add optional fields to validation\n for (var _name in validators.optional) {\n if (validators.optional.hasOwnProperty(_name) && validators.optional[_name]) {\n validatedFields.push(_name);\n }\n }\n\n // validate fields values\n for (var i in validatedFields) {\n var _name2 = validatedFields[i];\n var fieldErrors = this.validateField(_name2, this.state[_name2]);\n\n if (fieldErrors === null) {\n errors[_name2] = null;\n } else if (fieldErrors) {\n errors[_name2] = fieldErrors;\n }\n }\n\n return errors;\n }\n }, {\n key: 'isValid',\n value: function isValid() {\n var errors = this.validate();\n for (var field in errors) {\n if (errors.hasOwnProperty(field)) {\n if (errors[field] !== null) {\n return false;\n }\n }\n }\n\n return true;\n }\n }, {\n key: 'validateField',\n value: function validateField(name, value) {\n var errors = [];\n if (!this.state.validators) {\n return errors;\n }\n\n var validators = {\n required: (this.state.validators.required || this.state.validators)[name],\n optional: (this.state.validators.optional || {})[name]\n };\n\n var requiredError = validateRequired(value) || false;\n\n if (validators.required) {\n if (requiredError) {\n errors = [requiredError];\n } else {\n for (var i in validators.required) {\n var validationError = validators.required[i](value);\n if (validationError) {\n errors.push(validationError);\n }\n }\n }\n\n return errors.length ? errors : null;\n } else if (requiredError === false && validators.optional) {\n for (var _i in validators.optional) {\n var _validationError = validators.optional[_i](value);\n if (_validationError) {\n errors.push(_validationError);\n }\n }\n\n return errors.length ? errors : null;\n }\n\n return false; // false === field wasn't validated\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'clean',\n value: function clean() {\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return null;\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n return;\n }\n }, {\n key: 'handleError',\n\n /* jshint ignore:end */\n value: function handleError(rejection) {\n _snackbar2.default.apiError(rejection);\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../services/snackbar\":363,\"../utils/validators\":380,\"react\":\"react\"}],53:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'isActive',\n value: function isActive() {\n if (this.props.isControlled) {\n return this.props.isActive;\n } else {\n if (this.props.path) {\n return document.location.pathname.indexOf(this.props.path) === 0;\n } else {\n return false;\n }\n }\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.isActive()) {\n return (this.props.className || '') + ' ' + (this.props.activeClassName || 'active');\n } else {\n return this.props.className || '';\n }\n }\n }, {\n key: 'render',\n value: function render() {\n // jshint ignore:start\n return _react2.default.createElement(\n 'li',\n { className: this.getClassName() },\n this.props.children\n );\n // jshint ignore:end\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],54:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n \"div\",\n { className: props.className || \"loader\" },\n _react2.default.createElement(\"div\", { className: \"loader-spinning-wheel\" })\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],55:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('./form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.handleSuccess = function (success) {\n _this.props.onSuccess(success);\n _modal2.default.hide();\n };\n\n _this.handleError = function (rejection) {\n _this.props.onError(rejection);\n };\n\n _this.onPollChange = function (event) {\n _this.changeValue('poll', event.target.value);\n };\n\n _this.state = {\n isLoading: false,\n\n poll: 0\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n var confirmation = confirm(gettext(\"Are you sure? This will delete other polls.\"));\n return confirmation;\n }\n }, {\n key: 'send',\n value: function send() {\n var data = Object.assign({}, this.props.data, {\n poll: this.state.poll\n });\n\n return _ajax2.default.post(this.props.api, data);\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog', role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Merge polls\")\n )\n ),\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'p',\n null,\n gettext(\"Select poll to use in merged thread. Other polls will be deleted.\")\n ),\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Poll\"),\n 'for': 'id_poll'\n },\n _react2.default.createElement(\n 'select',\n {\n className: 'form-control',\n id: 'id_poll',\n onChange: this.onPollChange,\n value: this.state.poll\n },\n this.props.polls.map(function (poll) {\n return _react2.default.createElement(\n 'option',\n { value: poll[0], key: poll[0] },\n poll[1]\n );\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Merge polls\")\n )\n )\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../services/ajax\":352,\"../services/modal\":358,\"./button\":5,\"./form\":52,\"./form-group\":51,\"react\":\"react\"}],56:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _oneBox = require('../services/one-box');\n\nvar _oneBox2 = _interopRequireDefault(_oneBox);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n _oneBox2.default.render(this.documentNode);\n }\n }, {\n key: 'componentDidUpdate',\n value: function componentDidUpdate(prevProps, prevState) {\n _oneBox2.default.render(this.documentNode);\n }\n }, {\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate(nextProps, nextState) {\n return nextProps.markup !== this.props.markup;\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n return _react2.default.createElement('article', {\n className: 'misago-markup',\n dangerouslySetInnerHTML: { __html: this.props.markup },\n ref: function ref(node) {\n _this2.documentNode = node;\n }\n });\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../services/one-box\":359,\"react\":\"react\"}],57:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _loader = require('./loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-loader' },\n _react2.default.createElement(_loader2.default, null)\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./loader\":54,\"react\":\"react\"}],58:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _panelMessage = require('./panel-message');\n\nvar _panelMessage2 = _interopRequireDefault(_panelMessage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\nvar _class = function (_PanelMessage) {\n _inherits(_class, _PanelMessage);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getHelpText',\n value: function getHelpText() {\n if (this.props.helpText) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'p',\n { className: 'help-block' },\n this.props.helpText\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n this.props.icon || 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.props.message\n ),\n this.getHelpText(),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n gettext(\"Ok\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_panelMessage2.default);\n\nexports.default = _class;\n\n},{\"./panel-message\":87,\"react\":\"react\"}],59:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (data) {\n var filtered = data.filter(function (section) {\n return section.results.count > 0;\n });\n\n return filtered.map(function (section) {\n return Object.assign({}, section, {\n count: section.results.count,\n results: section.results.results.slice(0, MAX_RESULTS)\n });\n });\n};\n\nvar MAX_RESULTS = 5;\n\n},{}],60:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nvar HEADER = exports.HEADER = 'HEADER';\nvar RESULT = exports.RESULT = 'RESULT';\nvar FOOTER = exports.FOOTER = 'FOOTER';\n\n},{}],61:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var children = _ref.children,\n onChange = _ref.onChange,\n query = _ref.query;\n\n return _react2.default.createElement(\n 'ul',\n { className: 'dropdown-menu dropdown-search-results', role: 'menu' },\n _react2.default.createElement(\n 'li',\n { className: 'form-group' },\n _react2.default.createElement(_input2.default, {\n value: query,\n onChange: onChange\n })\n ),\n children\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _input = require('./input');\n\nvar _input2 = _interopRequireDefault(_input);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./input\":65,\"react\":\"react\"}],62:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function () {\n return _react2.default.createElement(\n \"li\",\n { className: \"dropdown-search-message\" },\n gettext(\"Search returned no results.\")\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],63:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (results) {\n var flatlist = [];\n flattenProviders(results, flatlist);\n return flatlist;\n};\n\nvar _constants = require('./constants');\n\nfunction flattenProviders(results, flatlist) {\n var arrayLength = results.length;\n for (var i = 0; i < arrayLength; i++) {\n var provider = results[i];\n\n flatlist.push({\n provider: provider,\n type: _constants.HEADER\n });\n\n flattenProvider(provider, flatlist);\n }\n}\n\nfunction flattenProvider(provider, flatlist) {\n var arrayLength = provider.results.length;\n for (var i = 0; i < arrayLength; i++) {\n var result = provider.results[i];\n flatlist.push({\n provider: provider,\n result: result,\n type: _constants.RESULT\n });\n }\n\n flatlist.push({\n provider: provider,\n type: _constants.FOOTER\n });\n}\n\n},{\"./constants\":60}],64:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (_ref) {\n var isLoading = _ref.isLoading,\n onChange = _ref.onChange,\n results = _ref.results,\n query = _ref.query;\n\n if (!query.trim().length) {\n return _react2.default.createElement(_dropdownMenu2.default, { onChange: onChange, query: query });\n }\n\n if (results.length) {\n var flatResults = (0, _flattenResults2.default)(results);\n\n return _react2.default.createElement(\n _dropdownMenu2.default,\n { onChange: onChange, query: query },\n flatResults.map(function (props) {\n var type = props.type,\n provider = props.provider,\n result = props.result;\n\n\n if (type === _constants.RESULT) {\n return _react2.default.createElement(_result2.default, _extends({\n key: [provider.id, type, result.id].join('_')\n }, props));\n }\n\n return _react2.default.createElement(_result2.default, _extends({\n key: [provider.id, type].join('_'),\n query: query\n }, props));\n })\n );\n } else if (isLoading) {\n return _react2.default.createElement(\n _dropdownMenu2.default,\n { onChange: onChange, query: query },\n _react2.default.createElement(_loader2.default, null)\n );\n }\n\n return _react2.default.createElement(\n _dropdownMenu2.default,\n { onChange: onChange, query: query },\n _react2.default.createElement(_empty2.default, null)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _constants = require('./constants');\n\nvar _dropdownMenu = require('./dropdown-menu');\n\nvar _dropdownMenu2 = _interopRequireDefault(_dropdownMenu);\n\nvar _empty = require('./empty');\n\nvar _empty2 = _interopRequireDefault(_empty);\n\nvar _loader = require('./loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nvar _result = require('./result');\n\nvar _result2 = _interopRequireDefault(_result);\n\nvar _flattenResults = require('./flatten-results');\n\nvar _flattenResults2 = _interopRequireDefault(_flattenResults);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./constants\":60,\"./dropdown-menu\":61,\"./empty\":62,\"./flatten-results\":63,\"./loader\":66,\"./result\":69,\"react\":\"react\"}],65:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var value = _ref.value,\n onChange = _ref.onChange;\n\n return _react2.default.createElement(\"input\", {\n \"aria-haspopup\": \"true\",\n \"aria-expanded\": \"false\",\n autoComplete: \"off\",\n className: \"form-control\",\n value: value,\n onChange: onChange,\n placeholder: gettext(\"Search\"),\n role: \"combobox\",\n type: \"text\"\n });\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],66:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var message = _ref.message;\n\n return _react2.default.createElement(\n 'li',\n { className: 'dropdown-search-loader' },\n _react2.default.createElement(_loader2.default, null)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _loader = require('../../loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../loader\":54,\"react\":\"react\"}],67:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var provider = _ref.provider,\n query = _ref.query;\n\n var url = provider.url + '?q=' + encodeURI(query);\n var label = ngettext('See full \"%(provider)s\" results page with %(count)s result.', 'See full \"%(provider)s\" results page with %(count)s results.', provider.count);\n\n return _react2.default.createElement(\n 'li',\n { className: 'dropdown-search-footer' },\n _react2.default.createElement(\n 'a',\n { href: url },\n interpolate(label, {\n count: provider.count,\n provider: provider.name\n }, true)\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],68:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var provider = _ref.provider;\n\n return _react2.default.createElement(\n \"li\",\n { className: \"dropdown-search-header\" },\n provider.name\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],69:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var provider = _ref.provider,\n result = _ref.result,\n type = _ref.type,\n query = _ref.query;\n\n if (type === _constants.HEADER) {\n return _react2.default.createElement(_header2.default, { provider: provider });\n } else if (type === _constants.FOOTER) {\n return _react2.default.createElement(_footer2.default, { provider: provider, query: query });\n }\n\n return _react2.default.createElement(_result2.default, { provider: provider, result: result });\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _constants = require('../constants');\n\nvar _footer = require('./footer');\n\nvar _footer2 = _interopRequireDefault(_footer);\n\nvar _header = require('./header');\n\nvar _header2 = _interopRequireDefault(_header);\n\nvar _result = require('./result');\n\nvar _result2 = _interopRequireDefault(_result);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../constants\":60,\"./footer\":67,\"./header\":68,\"./result\":70,\"react\":\"react\"}],70:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var provider = _ref.provider,\n result = _ref.result;\n\n if (provider.id === 'threads') {\n return _react2.default.createElement(_thread2.default, { result: result });\n }\n\n return _react2.default.createElement(_user2.default, { result: result });\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _thread = require('./thread');\n\nvar _thread2 = _interopRequireDefault(_thread);\n\nvar _user = require('./user');\n\nvar _user2 = _interopRequireDefault(_user);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./thread\":71,\"./user\":72,\"react\":\"react\"}],71:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var result = _ref.result;\n var poster = result.poster,\n thread = result.thread;\n\n var footer = gettext(\"Posted by %(poster)s on %(posted_on)s in %(category)s.\");\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n { href: result.url.index, className: 'dropdown-search-thread' },\n _react2.default.createElement(\n 'h5',\n null,\n thread.title\n ),\n _react2.default.createElement(\n 'small',\n { className: 'dropdown-search-post-content' },\n $(result.content).text()\n ),\n _react2.default.createElement(\n 'small',\n { className: 'dropdown-search-post-footer' },\n interpolate(footer, {\n category: result.category.name,\n posted_on: (0, _moment2.default)(result.posted_on).format('LL'),\n poster: result.poster_name\n }, true)\n )\n )\n );\n};\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"moment\":\"moment\",\"react\":\"react\"}],72:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var result = _ref.result;\n var rank = result.rank;\n\n\n var detail = gettext(\"%(title)s, joined on %(joined_on)s\");\n var title = result.title || rank.title || rank.name;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n { href: result.url, className: 'dropdown-search-user' },\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(_avatar2.default, { size: 38, user: result })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'h5',\n { className: 'media-heading' },\n result.username\n ),\n _react2.default.createElement(\n 'small',\n null,\n interpolate(detail, {\n title: title,\n joined_on: (0, _moment2.default)(result.joined_on).format('LL')\n }, true)\n )\n )\n )\n )\n );\n};\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../avatar\":3,\"moment\":\"moment\",\"react\":\"react\"}],73:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _cleanResults = require('./clean-results');\n\nvar _cleanResults2 = _interopRequireDefault(_cleanResults);\n\nvar _dropdown = require('./dropdown');\n\nvar _dropdown2 = _interopRequireDefault(_dropdown);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this));\n\n _this.onToggle = function (ev) {\n _this.setState(function (prevState, props) {\n if (!prevState.isOpen) {\n window.setTimeout(function () {\n _this.container.querySelector('input').focus();\n }, 100);\n }\n\n return { isOpen: !prevState.isOpen };\n });\n };\n\n _this.onDocumentMouseDown = function (ev) {\n var closeResults = true;\n var node = ev.target;\n\n while (node !== null && node !== document) {\n if (node === _this.container) {\n closeResults = false;\n return;\n }\n\n node = node.parentNode;\n }\n\n if (closeResults) {\n _this.setState({ isOpen: false });\n }\n };\n\n _this.onEscape = function (ev) {\n if (ev.key === 'Escape') {\n _this.setState({ isOpen: false });\n }\n };\n\n _this.onChange = function (ev) {\n var query = ev.target.value;\n\n _this.setState({ query: query });\n _this.loadResults(query.trim());\n };\n\n _this.state = {\n isLoading: false,\n isOpen: false,\n query: '',\n results: []\n };\n\n _this.intervalId = null;\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n document.addEventListener('mousedown', this.onDocumentMouseDown);\n document.addEventListener('keydown', this.onEscape);\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n document.removeEventListener('mousedown', this.onDocumentMouseDown);\n document.removeEventListener('keydown', this.onEscape);\n }\n }, {\n key: 'loadResults',\n value: function loadResults(query) {\n var _this2 = this;\n\n if (!query.length) return;\n\n var delay = 300 + Math.random() * 300;\n\n if (this.intervalId) {\n window.clearTimeout(this.intervalId);\n }\n\n this.setState({ isLoading: true });\n\n this.intervalId = window.setTimeout(function () {\n _ajax2.default.get(_2.default.get('SEARCH_API'), { q: query }).then(function (data) {\n _this2.setState({\n intervalId: null,\n isLoading: false,\n results: (0, _cleanResults2.default)(data)\n });\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n\n _this2.setState({\n intervalId: null,\n isLoading: false,\n results: []\n });\n });\n }, delay);\n }\n }, {\n key: 'render',\n value: function render() {\n var _this3 = this;\n\n var className = \"navbar-search dropdown\";\n if (this.state.isOpen) className += \" open\";\n\n return _react2.default.createElement(\n 'div',\n { className: className, ref: function ref(container) {\n return _this3.container = container;\n } },\n _react2.default.createElement(\n 'a',\n {\n 'aria-haspopup': 'true',\n 'aria-expanded': 'false',\n className: 'navbar-icon',\n 'data-toggle': 'dropdown',\n href: _2.default.get('SEARCH_URL'),\n onClick: this.onToggle\n },\n _react2.default.createElement(\n 'i',\n { className: 'material-icon' },\n 'search'\n )\n ),\n _react2.default.createElement(_dropdown2.default, {\n isLoading: this.state.isLoading,\n onChange: this.onChange,\n results: this.state.results,\n query: this.state.query\n })\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../..\":291,\"../../services/ajax\":352,\"../../services/snackbar\":363,\"./clean-results\":59,\"./dropdown\":64,\"react\":\"react\"}],74:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function () {\n return _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Change username\")\n )\n ),\n _react2.default.createElement(_panelLoader2.default, null)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _panelLoader = require('../../panel-loader');\n\nvar _panelLoader2 = _interopRequireDefault(_panelLoader);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../panel-loader\":86,\"react\":\"react\"}],75:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _panelMessage = require('../../panel-message');\n\nvar _panelMessage2 = _interopRequireDefault(_panelMessage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getHelpText',\n value: function getHelpText() {\n if (this.props.options.next_on) {\n return interpolate(gettext(\"You will be able to change your username %(next_change)s.\"), { 'next_change': this.props.options.next_on.fromNow() }, true);\n } else {\n return gettext(\"You have used up available name changes.\");\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Change username\")\n )\n ),\n _react2.default.createElement(_panelMessage2.default, {\n helpText: this.getHelpText(),\n message: gettext(\"You can't change your username at the moment.\")\n })\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../panel-message\":87,\"react\":\"react\"}],76:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _validators = require('../../../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n username: '',\n\n validators: {\n username: [validators.usernameContent(), validators.usernameMinLength(props.options.length_min), validators.usernameMaxLength(props.options.length_max)]\n },\n\n isLoading: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'getHelpText',\n value: function getHelpText() {\n var phrases = [];\n\n if (this.props.options.changes_left > 0) {\n var message = ngettext(\"You can change your username %(changes_left)s more time.\", \"You can change your username %(changes_left)s more times.\", this.props.options.changes_left);\n\n phrases.push(interpolate(message, {\n 'changes_left': this.props.options.changes_left\n }, true));\n }\n\n if (this.props.user.acl.name_changes_expire > 0) {\n var _message = ngettext(\"Used changes become available again after %(name_changes_expire)s day.\", \"Used changes become available again after %(name_changes_expire)s days.\", this.props.user.acl.name_changes_expire);\n\n phrases.push(interpolate(_message, {\n 'name_changes_expire': this.props.user.acl.name_changes_expire\n }, true));\n }\n\n return phrases.length ? phrases.join(' ') : null;\n }\n }, {\n key: 'clean',\n value: function clean() {\n var errors = this.validate();\n if (errors.username) {\n _snackbar2.default.error(errors.username[0]);\n return false;\n }if (this.state.username.trim() === this.props.user.username) {\n _snackbar2.default.info(gettext(\"Your new username is same as current one.\"));\n return false;\n } else {\n return true;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.user.api.username, {\n 'username': this.state.username\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n this.setState({\n 'username': ''\n });\n\n this.props.complete(success.username, success.slug, success.options);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n _snackbar2.default.apiError(rejection);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Change username\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"New username\"), 'for': 'id_username',\n helpText: this.getHelpText() },\n _react2.default.createElement('input', { type: 'text', id: 'id_username', className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.bindInput('username'),\n value: this.state.username })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-footer' },\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Change username\")\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../utils/validators\":380,\"../../button\":5,\"../../form\":52,\"../../form-group\":51,\"react\":\"react\"}],77:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _formLoading = require('./form-loading');\n\nvar _formLoading2 = _interopRequireDefault(_formLoading);\n\nvar _formLocked = require('./form-locked');\n\nvar _formLocked2 = _interopRequireDefault(_formLocked);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _root = require('../../username-history/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _index = require('../../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _usernameHistory = require('../../../reducers/username-history');\n\nvar _users = require('../../../reducers/users');\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _pageTitle = require('../../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onComplete = function (username, slug, options) {\n _this.setState({\n options: options\n });\n\n _store2.default.dispatch((0, _usernameHistory.addNameChange)({ username: username, slug: slug }, _this.props.user, _this.props.user));\n _store2.default.dispatch((0, _users.updateUsername)(_this.props.user, username, slug));\n\n _snackbar2.default.success(gettext(\"Your username has been changed successfully.\"));\n };\n\n _this.state = {\n isLoaded: false,\n options: null\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _pageTitle2.default.set({\n title: gettext(\"Change username\"),\n parent: gettext(\"Change your options\")\n });\n\n Promise.all([_ajax2.default.get(this.props.user.api.username), _ajax2.default.get(_index2.default.get('USERNAME_CHANGES_API'), { user: this.props.user.id })]).then(function (data) {\n _store2.default.dispatch((0, _usernameHistory.hydrate)(data[1].results));\n\n _this2.setState({\n isLoaded: true,\n options: {\n changes_left: data[0].changes_left,\n length_min: data[0].length_min,\n length_max: data[0].length_max,\n next_on: data[0].next_on ? (0, _moment2.default)(data[0].next_on) : null\n }\n });\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getChangeForm',\n\n /* jshint ignore:end */\n\n value: function getChangeForm() {\n if (!this.state.isLoaded) {\n /* jshint ignore:start */\n return _react2.default.createElement(_formLoading2.default, null);\n /* jshint ignore:end */\n }\n\n if (this.state.options.changes_left === 0) {\n /* jshint ignore:start */\n return _react2.default.createElement(_formLocked2.default, { options: this.state.options });\n /* jshint ignore:end */\n }\n\n /* jshint ignore:start */\n return _react2.default.createElement(_form2.default, {\n complete: this.onComplete,\n options: this.state.options,\n user: this.props.user\n });\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n this.getChangeForm(),\n _react2.default.createElement(_root2.default, {\n changes: this.props['username-history'],\n isLoaded: this.state.isLoaded\n })\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../index\":291,\"../../../reducers/username-history\":350,\"../../../reducers/users\":351,\"../../../services/ajax\":352,\"../../../services/page-title\":360,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../username-history/root\":269,\"./form\":76,\"./form-loading\":74,\"./form-locked\":75,\"moment\":\"moment\",\"react\":\"react\"}],78:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _editDetails = require('../edit-details');\n\nvar _editDetails2 = _interopRequireDefault(_editDetails);\n\nvar _pageTitle = require('../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onSuccess = function () {\n _snackbar2.default.info(gettext(\"Your details have been updated.\"));\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: gettext(\"Edit details\"),\n parent: gettext(\"Change your options\")\n });\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(_editDetails2.default, {\n api: this.props.user.api.edit_details,\n onSuccess: this.onSuccess\n });\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../services/page-title\":360,\"../../services/snackbar\":363,\"../edit-details\":29,\"react\":\"react\"}],79:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _select = require('../select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nvar _yesNoSwitch = require('../yes-no-switch');\n\nvar _yesNoSwitch2 = _interopRequireDefault(_yesNoSwitch);\n\nvar _auth = require('../../reducers/auth');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _pageTitle = require('../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n 'isLoading': false,\n\n 'is_hiding_presence': props.user.is_hiding_presence,\n 'limits_private_thread_invites_to': props.user.limits_private_thread_invites_to,\n 'subscribe_to_started_threads': props.user.subscribe_to_started_threads,\n 'subscribe_to_replied_threads': props.user.subscribe_to_replied_threads,\n\n 'errors': {}\n };\n\n _this.privateThreadInvitesChoices = [{\n 'value': 0,\n 'icon': 'help_outline',\n 'label': gettext(\"Everybody\")\n }, {\n 'value': 1,\n 'icon': 'done_all',\n 'label': gettext(\"Users I follow\")\n }, {\n 'value': 2,\n 'icon': 'highlight_off',\n 'label': gettext(\"Nobody\")\n }];\n\n _this.subscribeToChoices = [{\n 'value': 0,\n 'icon': 'star_border',\n 'label': gettext(\"No\")\n }, {\n 'value': 1,\n 'icon': 'star_half',\n 'label': gettext(\"Notify\")\n }, {\n 'value': 2,\n 'icon': 'star',\n 'label': gettext(\"Notify with e-mail\")\n }];\n return _this;\n }\n\n _createClass(_class, [{\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.user.api.options, {\n is_hiding_presence: this.state.is_hiding_presence,\n limits_private_thread_invites_to: this.state.limits_private_thread_invites_to,\n subscribe_to_started_threads: this.state.subscribe_to_started_threads,\n subscribe_to_replied_threads: this.state.subscribe_to_replied_threads\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess() {\n _store2.default.dispatch((0, _auth.patch)({\n is_hiding_presence: this.state.is_hiding_presence,\n limits_private_thread_invites_to: this.state.limits_private_thread_invites_to,\n subscribe_to_started_threads: this.state.subscribe_to_started_threads,\n subscribe_to_replied_threads: this.state.subscribe_to_replied_threads\n }));\n _snackbar2.default.success(gettext(\"Your forum options have been changed.\"));\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(gettext(\"Please reload page and try again.\"));\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: gettext(\"Forum options\"),\n parent: gettext(\"Change your options\")\n });\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Change forum options\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'fieldset',\n null,\n _react2.default.createElement(\n 'legend',\n null,\n gettext(\"Privacy settings\")\n ),\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Hide my presence\"),\n helpText: gettext(\"If you hide your presence, only members with permission to see hidden users will see when you are online.\"),\n 'for': 'id_is_hiding_presence'\n },\n _react2.default.createElement(_yesNoSwitch2.default, {\n id: 'id_is_hiding_presence',\n disabled: this.state.isLoading,\n iconOn: 'visibility_off',\n iconOff: 'visibility',\n labelOn: gettext(\"Hide my presence from other users\"),\n labelOff: gettext(\"Show my presence to other users\"),\n onChange: this.bindInput('is_hiding_presence'),\n value: this.state.is_hiding_presence\n })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Private thread invitations\"),\n 'for': 'id_limits_private_thread_invites_to'\n },\n _react2.default.createElement(_select2.default, {\n id: 'id_limits_private_thread_invites_to',\n disabled: this.state.isLoading,\n onChange: this.bindInput('limits_private_thread_invites_to'),\n value: this.state.limits_private_thread_invites_to,\n choices: this.privateThreadInvitesChoices\n })\n )\n ),\n _react2.default.createElement(\n 'fieldset',\n null,\n _react2.default.createElement(\n 'legend',\n null,\n gettext(\"Automatic subscriptions\")\n ),\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Threads I start\"),\n 'for': 'id_subscribe_to_started_threads'\n },\n _react2.default.createElement(_select2.default, {\n id: 'id_subscribe_to_started_threads',\n disabled: this.state.isLoading,\n onChange: this.bindInput('subscribe_to_started_threads'),\n value: this.state.subscribe_to_started_threads,\n choices: this.subscribeToChoices\n })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Threads I reply to\"),\n 'for': 'id_subscribe_to_replied_threads'\n },\n _react2.default.createElement(_select2.default, {\n id: 'id_subscribe_to_replied_threads',\n disabled: this.state.isLoading,\n onChange: this.bindInput('subscribe_to_replied_threads'),\n value: this.state.subscribe_to_replied_threads,\n choices: this.subscribeToChoices\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-footer' },\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Save changes\")\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../reducers/auth\":337,\"../../services/ajax\":352,\"../../services/page-title\":360,\"../../services/snackbar\":363,\"../../services/store\":364,\"../button\":5,\"../form\":52,\"../form-group\":51,\"../select\":203,\"../yes-no-switch\":289,\"react\":\"react\"}],80:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SideNav = SideNav;\nexports.CompactNav = CompactNav;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nvar _li = require('../li');\n\nvar _li2 = _interopRequireDefault(_li);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction SideNav(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'list-group nav-side' },\n props.options.map(function (option) {\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n to: props.baseUrl + option.component + '/',\n className: 'list-group-item',\n activeClassName: 'active',\n key: option.component\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n option.icon\n ),\n option.name\n );\n })\n );\n}\n\nfunction CompactNav(props) {\n return _react2.default.createElement(\n 'ul',\n { className: props.className || \"dropdown-menu stick-to-bottom\", role: 'menu' },\n props.options.map(function (option) {\n return _react2.default.createElement(\n _li2.default,\n {\n path: props.baseUrl + option.component + '/',\n key: option.component\n },\n _react2.default.createElement(\n _reactRouter.Link,\n {\n to: props.baseUrl + option.component + '/',\n onClick: props.hideNav\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon hidden-sm' },\n option.icon\n ),\n option.name\n )\n );\n })\n );\n}\n\n},{\"../../index\":291,\"../li\":53,\"react\":\"react\",\"react-router\":\"react-router\"}],81:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.select = select;\nexports.paths = paths;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRedux = require('react-redux');\n\nvar _dropdownToggle = require('../dropdown-toggle');\n\nvar _dropdownToggle2 = _interopRequireDefault(_dropdownToggle);\n\nvar _navs = require('./navs');\n\nvar _editDetails = require('./edit-details');\n\nvar _editDetails2 = _interopRequireDefault(_editDetails);\n\nvar _forumOptions = require('./forum-options');\n\nvar _forumOptions2 = _interopRequireDefault(_forumOptions);\n\nvar _root = require('./change-username/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _root3 = require('./sign-in-credentials/root');\n\nvar _root4 = _interopRequireDefault(_root3);\n\nvar _withDropdown = require('../with-dropdown');\n\nvar _withDropdown2 = _interopRequireDefault(_withDropdown);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_WithDropdown) {\n _inherits(_class, _WithDropdown);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'page page-options' },\n _react2.default.createElement(\n 'div',\n { className: 'page-header-bg' },\n _react2.default.createElement(\n 'div',\n { className: 'page-header' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'h1',\n null,\n gettext(\"Change your options\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'page-tabs visible-xs-block visible-sm-block' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(_navs.CompactNav, {\n className: 'nav nav-pills',\n baseUrl: _index2.default.get('USERCP_URL'),\n options: _index2.default.get('USER_OPTIONS')\n })\n )\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-3 hidden-xs hidden-sm' },\n _react2.default.createElement(_navs.SideNav, {\n baseUrl: _index2.default.get('USERCP_URL'),\n options: _index2.default.get('USER_OPTIONS')\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-md-9' },\n this.props.children\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_withDropdown2.default);\n\nexports.default = _class;\nfunction select(store) {\n return {\n 'tick': store.tick.tick,\n 'user': store.auth.user,\n 'username-history': store['username-history']\n };\n}\n\nfunction paths() {\n return [{\n path: _index2.default.get('USERCP_URL') + 'forum-options/',\n component: (0, _reactRedux.connect)(select)(_forumOptions2.default)\n }, {\n path: _index2.default.get('USERCP_URL') + 'edit-details/',\n component: (0, _reactRedux.connect)(select)(_editDetails2.default)\n }, {\n path: _index2.default.get('USERCP_URL') + 'change-username/',\n component: (0, _reactRedux.connect)(select)(_root2.default)\n }, {\n path: _index2.default.get('USERCP_URL') + 'sign-in-credentials/',\n component: (0, _reactRedux.connect)(select)(_root4.default)\n }];\n}\n\n},{\"../../index\":291,\"../dropdown-toggle\":24,\"../with-dropdown\":288,\"./change-username/root\":77,\"./edit-details\":78,\"./forum-options\":79,\"./navs\":80,\"./sign-in-credentials/root\":84,\"react\":\"react\",\"react-redux\":\"react-redux\"}],82:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _validators = require('../../../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n new_email: '',\n password: '',\n\n validators: {\n new_email: [validators.email()],\n password: []\n },\n\n isLoading: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n var errors = this.validate();\n var lengths = [this.state.new_email.trim().length, this.state.password.trim().length];\n\n if (lengths.indexOf(0) !== -1) {\n _snackbar2.default.error(gettext(\"Fill out all fields.\"));\n return false;\n }\n\n if (errors.new_email) {\n _snackbar2.default.error(errors.new_email[0]);\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.user.api.change_email, {\n new_email: this.state.new_email,\n password: this.state.password\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(response) {\n this.setState({\n new_email: '',\n password: ''\n });\n\n _snackbar2.default.success(response.detail);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n if (rejection.new_email) {\n _snackbar2.default.error(rejection.new_email);\n } else {\n _snackbar2.default.error(rejection.password);\n }\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement('input', { type: 'type', style: { display: 'none' } }),\n _react2.default.createElement('input', { type: 'password', style: { display: 'none' } }),\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Change e-mail address\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"New e-mail\"), 'for': 'id_new_email' },\n _react2.default.createElement('input', { type: 'text', id: 'id_new_email', className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.bindInput('new_email'),\n value: this.state.new_email })\n ),\n _react2.default.createElement('hr', null),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Your current password\"), 'for': 'id_password' },\n _react2.default.createElement('input', { type: 'password', id: 'id_password', className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.bindInput('password'),\n value: this.state.password })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-footer' },\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Change e-mail\")\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../utils/validators\":380,\"../../button\":5,\"../../form\":52,\"../../form-group\":51,\"react\":\"react\"}],83:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n new_password: '',\n repeat_password: '',\n password: '',\n\n validators: {\n new_password: [],\n repeat_password: [],\n password: []\n },\n\n isLoading: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n var errors = this.validate();\n var lengths = [this.state.new_password.trim().length, this.state.repeat_password.trim().length, this.state.password.trim().length];\n\n if (lengths.indexOf(0) !== -1) {\n _snackbar2.default.error(gettext(\"Fill out all fields.\"));\n return false;\n }\n\n if (errors.new_password) {\n _snackbar2.default.error(errors.new_password[0]);\n return false;\n }\n\n if (this.state.new_password !== this.state.repeat_password) {\n _snackbar2.default.error(gettext(\"New passwords are different.\"));\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.user.api.change_password, {\n new_password: this.state.new_password,\n password: this.state.password\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(response) {\n this.setState({\n new_password: '',\n repeat_password: '',\n password: ''\n });\n\n _snackbar2.default.success(response.detail);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n if (rejection.new_password) {\n _snackbar2.default.error(rejection.new_password);\n } else {\n _snackbar2.default.error(rejection.password);\n }\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement('input', { type: 'type', style: { display: 'none' } }),\n _react2.default.createElement('input', { type: 'password', style: { display: 'none' } }),\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Change password\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"New password\"), 'for': 'id_new_password' },\n _react2.default.createElement('input', { type: 'password', id: 'id_new_password', className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.bindInput('new_password'),\n value: this.state.new_password })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Repeat password\"), 'for': 'id_repeat_password' },\n _react2.default.createElement('input', { type: 'password', id: 'id_repeat_password', className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.bindInput('repeat_password'),\n value: this.state.repeat_password })\n ),\n _react2.default.createElement('hr', null),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Your current password\"), 'for': 'id_password' },\n _react2.default.createElement('input', { type: 'password', id: 'id_password', className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.bindInput('password'),\n value: this.state.password })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-footer' },\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Change password\")\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../button\":5,\"../../form\":52,\"../../form-group\":51,\"react\":\"react\"}],84:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _changeEmail = require('./change-email');\n\nvar _changeEmail2 = _interopRequireDefault(_changeEmail);\n\nvar _changePassword = require('./change-password');\n\nvar _changePassword2 = _interopRequireDefault(_changePassword);\n\nvar _index = require('../../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _pageTitle = require('../../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: gettext(\"Change email or password\"),\n parent: gettext(\"Change your options\")\n });\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_changeEmail2.default, { user: this.props.user }),\n _react2.default.createElement(_changePassword2.default, { user: this.props.user }),\n _react2.default.createElement(\n 'p',\n { className: 'message-line' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'warning'\n ),\n _react2.default.createElement(\n 'a',\n { href: _index2.default.get('FORGOTTEN_PASSWORD_URL') },\n gettext(\"Change forgotten password\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../index\":291,\"../../../services/page-title\":360,\"./change-email\":82,\"./change-password\":83,\"react\":\"react\"}],85:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _stringCount = require('../utils/string-count');\n\nvar _stringCount2 = _interopRequireDefault(_stringCount);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getClassName',\n value: function getClassName() {\n if (this.props.copy && this.props.copy.length) {\n if ((0, _stringCount2.default)(this.props.copy, ' 2,\n choice: choice,\n disabled: _this2.props.disabled,\n key: choice.hash,\n onChange: _this2.onChange,\n onDelete: _this2.onDelete\n });\n })\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sm',\n disabled: this.props.disabled,\n onClick: this.onAdd,\n type: 'button'\n },\n gettext(\"Add choice\")\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\nvar PollChoice = exports.PollChoice = function (_React$Component2) {\n _inherits(PollChoice, _React$Component2);\n\n function PollChoice() {\n var _ref2;\n\n var _temp2, _this3, _ret2;\n\n _classCallCheck(this, PollChoice);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this3 = _possibleConstructorReturn(this, (_ref2 = PollChoice.__proto__ || Object.getPrototypeOf(PollChoice)).call.apply(_ref2, [this].concat(args))), _this3), _this3.onChange = function (event) {\n _this3.props.onChange(_this3.props.choice.hash, event.target.value);\n }, _this3.onDelete = function () {\n var deleteItem = confirm(gettext(\"Are you sure you want to delete this choice?\"));\n if (deleteItem) {\n _this3.props.onDelete(_this3.props.choice.hash);\n }\n }, _temp2), _possibleConstructorReturn(_this3, _ret2);\n }\n\n _createClass(PollChoice, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'li',\n { className: 'list-group-item' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn',\n disabled: !this.props.canDelete || this.props.disabled,\n onClick: this.onDelete,\n title: gettext(\"Delete this choice\"),\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'close'\n )\n ),\n _react2.default.createElement('input', {\n disabled: this.props.disabled,\n maxLength: '255',\n placeholder: gettext(\"choice label\"),\n type: 'text',\n onChange: this.onChange,\n value: this.props.choice.label\n })\n );\n }\n }]);\n\n return PollChoice;\n}(_react2.default.Component);\n\nfunction generateRandomHash() {\n var randomHash = '';\n while (randomHash.length != 12) {\n randomHash = Math.random().toString(36).replace(/[^a-zA-Z0-9]+/g, '').substr(1, 12);\n }\n return randomHash;\n}\n\n},{\"react\":\"react\"}],98:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.PollPublicSwitch = PollPublicSwitch;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _choicesControl = require('./choices-control');\n\nvar _choicesControl2 = _interopRequireDefault(_choicesControl);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _yesNoSwitch = require('../../yes-no-switch');\n\nvar _yesNoSwitch2 = _interopRequireDefault(_yesNoSwitch);\n\nvar _poll = require('../../../reducers/poll');\n\nvar poll = _interopRequireWildcard(_poll);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _posting = require('../../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.setChoices = function (choices) {\n var errors = Object.assign({}, errors, { choices: null });\n\n _this.setState({\n choices: choices,\n errors: errors\n });\n };\n\n _this.onCancel = function () {\n var cancel = confirm(gettext(\"Are you sure you want to discard poll?\"));\n if (cancel) {\n _posting2.default.close();\n }\n };\n\n var poll = props.poll || {\n question: '',\n choices: [{\n hash: 'choice-10000',\n label: ''\n }, {\n hash: 'choice-20000',\n label: ''\n }],\n length: 0,\n allowed_choices: 1,\n allow_revotes: 0,\n is_public: 0\n };\n\n _this.state = {\n isLoading: false,\n isEdit: !!poll.question,\n\n question: poll.question,\n choices: poll.choices,\n length: poll.length,\n allowed_choices: poll.allowed_choices,\n allow_revotes: poll.allow_revotes,\n is_public: poll.is_public,\n\n validators: {\n question: [],\n choices: [],\n length: [],\n allowed_choices: []\n },\n\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'send',\n value: function send() {\n var data = {\n question: this.state.question,\n choices: this.state.choices,\n length: this.state.length,\n allowed_choices: this.state.allowed_choices,\n allow_revotes: this.state.allow_revotes,\n is_public: this.state.is_public\n };\n\n if (this.state.isEdit) {\n return _ajax2.default.put(this.props.poll.api.index, data);\n } else {\n return _ajax2.default.post(this.props.thread.api.poll, data);\n }\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(data) {\n _store2.default.dispatch(poll.replace(data));\n\n if (this.state.isEdit) {\n _snackbar2.default.success(gettext(\"Poll has been edited.\"));\n } else {\n _snackbar2.default.success(gettext(\"Poll has been posted.\"));\n }\n\n _posting2.default.close();\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n if (rejection.non_field_errors) {\n rejection.allowed_choices = rejection.non_field_errors;\n }\n\n this.setState({\n 'errors': Object.assign({}, rejection)\n });\n\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'poll-form' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'fieldset',\n null,\n _react2.default.createElement(\n 'legend',\n null,\n gettext(\"Question and choices\")\n ),\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Poll question\"),\n 'for': 'id_questions',\n validation: this.state.errors.question\n },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n id: 'id_questions',\n onChange: this.bindInput('question'),\n type: 'text',\n maxLength: '255',\n value: this.state.question\n })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Available choices\"),\n validation: this.state.errors.choices\n },\n _react2.default.createElement(_choicesControl2.default, {\n choices: this.state.choices,\n disabled: this.state.isLoading,\n setChoices: this.setChoices\n })\n )\n ),\n _react2.default.createElement(\n 'fieldset',\n null,\n _react2.default.createElement(\n 'legend',\n null,\n gettext(\"Voting\")\n ),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-6' },\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Poll length\"),\n helpText: gettext(\"Enter number of days for which voting in this poll should be possible or zero to run this poll indefinitely.\"),\n 'for': 'id_length',\n validation: this.state.errors.length\n },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n id: 'id_length',\n onChange: this.bindInput('length'),\n type: 'text',\n value: this.state.length\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-6' },\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Allowed choices\"),\n 'for': 'id_allowed_choices',\n validation: this.state.errors.allowed_choices\n },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n id: 'id_allowed_choices',\n onChange: this.bindInput('allowed_choices'),\n type: 'text',\n maxLength: '255',\n value: this.state.allowed_choices\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(PollPublicSwitch, {\n bindInput: this.bindInput,\n disabled: this.state.isLoading,\n isEdit: this.state.isEdit,\n value: this.state.is_public\n }),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-6' },\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Allow vote changes\"),\n 'for': 'id_allow_revotes'\n },\n _react2.default.createElement(_yesNoSwitch2.default, {\n id: 'id_allow_revotes',\n disabled: this.state.isLoading,\n iconOn: 'check',\n iconOff: 'close',\n labelOn: gettext(\"Allow participants to change their vote\"),\n labelOff: gettext(\"Don't allow participants to change their vote\"),\n onChange: this.bindInput('allow_revotes'),\n value: this.state.allow_revotes\n })\n )\n )\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-footer text-right' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n disabled: this.state.isLoading,\n onClick: this.onCancel,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n ' ',\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-primary',\n loading: this.state.isLoading\n },\n this.state.isEdit ? gettext(\"Save changes\") : gettext(\"Post poll\")\n )\n )\n )\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\nfunction PollPublicSwitch(props) {\n if (props.isEdit) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-6' },\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Make voting public\"),\n helpText: gettext(\"Making voting public will allow everyone to access detailed list of votes, showing which users voted for which choices and at which times. This option can't be changed after poll's creation. Moderators may see voting details for all polls.\"),\n 'for': 'id_is_public'\n },\n _react2.default.createElement(_yesNoSwitch2.default, {\n id: 'id_is_public',\n disabled: props.disabled,\n iconOn: 'visibility',\n iconOff: 'visibility_off',\n labelOn: gettext(\"Votes are public\"),\n labelOff: gettext(\"Votes are hidden\"),\n onChange: props.bindInput('is_public'),\n value: props.value\n })\n )\n );\n}\n\n},{\"../../../reducers/poll\":339,\"../../../services/ajax\":352,\"../../../services/posting\":362,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../button\":5,\"../../form\":52,\"../../form-group\":51,\"../../yes-no-switch\":289,\"./choices-control\":97,\"react\":\"react\"}],99:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.PollForm = exports.Poll = undefined;\n\nvar _poll = require('./poll');\n\nvar _poll2 = _interopRequireDefault(_poll);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.Poll = _poll2.default;\nexports.PollForm = _form2.default;\n\n},{\"./form\":98,\"./poll\":101}],100:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled list-inline poll-details' },\n _react2.default.createElement(PollVotes, { votes: props.poll.votes }),\n _react2.default.createElement(PollLength, { poll: props.poll }),\n _react2.default.createElement(PollIsPublic, { poll: props.poll }),\n _react2.default.createElement(PollCreation, { poll: props.poll })\n );\n};\n\nexports.PollCreation = PollCreation;\nexports.getPoster = getPoster;\nexports.getPostedOn = getPostedOn;\nexports.PollLength = PollLength;\nexports.getEndsOn = getEndsOn;\nexports.PollVotes = PollVotes;\nexports.PollIsPublic = PollIsPublic;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _escapeHtml = require('../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nvar DATE_ABBR = '%(relative)s';\nvar USER_SPAN = '%(user)s';\nvar USER_URL = '%(user)s';\n\nfunction PollCreation(props) {\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"Posted by %(poster)s %(posted_on)s.\")), {\n poster: getPoster(props.poll),\n posted_on: getPostedOn(props.poll)\n }, true);\n\n return _react2.default.createElement('li', {\n className: 'poll-info-creation',\n dangerouslySetInnerHTML: { __html: message }\n });\n}\n\nfunction getPoster(poll) {\n if (poll.url.poster) {\n return interpolate(USER_URL, {\n url: (0, _escapeHtml2.default)(poll.url.poster),\n user: (0, _escapeHtml2.default)(poll.poster_name)\n }, true);\n }\n\n return interpolate(USER_SPAN, {\n user: (0, _escapeHtml2.default)(poll.poster_name)\n }, true);\n}\n\nfunction getPostedOn(poll) {\n return interpolate(DATE_ABBR, {\n absolute: (0, _escapeHtml2.default)(poll.posted_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(poll.posted_on.fromNow())\n }, true);\n}\n\nfunction PollLength(props) {\n if (!props.poll.length) {\n return null;\n }\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"Voting ends %(ends_on)s.\")), {\n ends_on: getEndsOn(props.poll)\n }, true);\n\n return _react2.default.createElement('li', {\n className: 'poll-info-ends-on',\n dangerouslySetInnerHTML: { __html: message }\n });\n}\n\nfunction getEndsOn(poll) {\n return interpolate(DATE_ABBR, {\n absolute: (0, _escapeHtml2.default)(poll.endsOn.format('LLL')),\n relative: (0, _escapeHtml2.default)(poll.endsOn.fromNow())\n }, true);\n}\n\nfunction PollVotes(props) {\n var message = ngettext(\"%(votes)s vote.\", \"%(votes)s votes.\", props.votes);\n var label = interpolate(message, {\n 'votes': props.votes\n }, true);\n\n return _react2.default.createElement(\n 'li',\n { className: 'poll-info-votes' },\n label\n );\n}\n\nfunction PollIsPublic(props) {\n if (!props.poll.is_public) {\n return null;\n }\n\n return _react2.default.createElement(\n 'li',\n { className: 'poll-info-public' },\n gettext(\"Votes are public.\")\n );\n}\n\n},{\"../../utils/escape-html\":370,\"react\":\"react\"}],101:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.getIsPollOver = getIsPollOver;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _results = require('./results');\n\nvar _results2 = _interopRequireDefault(_results);\n\nvar _voting = require('./voting');\n\nvar _voting2 = _interopRequireDefault(_voting);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.showResults = function () {\n _this.setState({\n showResults: true\n });\n };\n\n _this.showVoting = function () {\n _this.setState({\n showResults: false\n });\n };\n\n var showResults = true;\n if (props.user.id && !props.poll.hasSelectedChoices) {\n showResults = false;\n }\n\n _this.state = {\n showResults: showResults\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n if (!this.props.thread.poll) return null;\n\n var isPollOver = getIsPollOver(this.props.poll);\n\n if (!isPollOver && this.props.poll.acl.can_vote && !this.state.showResults) {\n return _react2.default.createElement(_voting2.default, _extends({ showResults: this.showResults }, this.props));\n } else {\n return _react2.default.createElement(_results2.default, _extends({\n isPollOver: isPollOver,\n showVoting: this.showVoting\n }, this.props));\n }\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction getIsPollOver(poll) {\n if (poll.length) {\n return (0, _moment2.default)().isAfter(poll.endsOn);\n }\n return false;\n}\n\n},{\"./results\":103,\"./voting\":107,\"moment\":\"moment\",\"react\":\"react\"}],102:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n \"div\",\n { className: \"poll-choices-bars\" },\n props.poll.choices.map(function (choice) {\n return _react2.default.createElement(PollChoice, {\n choice: choice,\n key: choice.hash,\n poll: props.poll\n });\n })\n );\n};\n\nexports.PollChoice = PollChoice;\nexports.ChoiceVotes = ChoiceVotes;\nexports.getVotesLabel = getVotesLabel;\nexports.UserChoice = UserChoice;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction PollChoice(props) {\n var proc = 0;\n if (props.choice.votes && props.poll.votes) {\n proc = Math.ceil(props.choice.votes * 100 / props.poll.votes);\n }\n\n return _react2.default.createElement(\n \"dl\",\n { className: \"dl-horizontal\" },\n _react2.default.createElement(\n \"dt\",\n null,\n props.choice.label\n ),\n _react2.default.createElement(\n \"dd\",\n null,\n _react2.default.createElement(\n \"div\",\n { className: \"progress\" },\n _react2.default.createElement(\n \"div\",\n {\n className: \"progress-bar\",\n role: \"progressbar\",\n \"aria-valuenow\": proc,\n \"aria-valuemin\": \"0\",\n \"aria-valuemax\": \"100\",\n style: { width: proc + '%' }\n },\n _react2.default.createElement(\n \"span\",\n { className: \"sr-only\" },\n getVotesLabel(props.votes, props.proc)\n )\n )\n ),\n _react2.default.createElement(\n \"ul\",\n { className: \"list-unstyled list-inline poll-chart\" },\n _react2.default.createElement(ChoiceVotes, {\n proc: proc,\n votes: props.choice.votes\n }),\n _react2.default.createElement(UserChoice, { selected: props.choice.selected })\n )\n )\n );\n}\n\nfunction ChoiceVotes(props) {\n return _react2.default.createElement(\n \"li\",\n { className: \"poll-chart-votes\" },\n getVotesLabel(props.votes, props.proc)\n );\n}\n\nfunction getVotesLabel(votes, proc) {\n var message = ngettext(\"%(votes)s vote, %(proc)s% of total.\", \"%(votes)s votes, %(proc)s% of total.\", votes);\n\n return interpolate(message, {\n 'votes': votes,\n 'proc': proc\n }, true);\n}\n\nfunction UserChoice(props) {\n if (!props.selected) return null;\n\n return _react2.default.createElement(\n \"li\",\n { className: \"poll-chart-selected\" },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"check_box\"\n ),\n gettext(\"Your choice.\")\n );\n}\n\n},{\"react\":\"react\"}],103:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-poll' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'h2',\n null,\n props.poll.question\n ),\n _react2.default.createElement(_info2.default, { poll: props.poll }),\n _react2.default.createElement(_chart2.default, { poll: props.poll }),\n _react2.default.createElement(_options2.default, {\n isPollOver: props.isPollOver,\n poll: props.poll,\n showVoting: props.showVoting,\n thread: props.thread\n })\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _chart = require('./chart');\n\nvar _chart2 = _interopRequireDefault(_chart);\n\nvar _options = require('./options');\n\nvar _options2 = _interopRequireDefault(_options);\n\nvar _info = require('../info');\n\nvar _info2 = _interopRequireDefault(_info);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../info\":100,\"./chart\":102,\"./options\":105,\"react\":\"react\"}],104:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ModalBody = ModalBody;\nexports.ChoicesList = ChoicesList;\nexports.ChoiceDetails = ChoiceDetails;\nexports.VotesCount = VotesCount;\nexports.VotesList = VotesList;\nexports.Voter = Voter;\nexports.VoteDate = VoteDate;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _modalMessage = require('../../modal-message');\n\nvar _modalMessage2 = _interopRequireDefault(_modalMessage);\n\nvar _modalLoader = require('../../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n isLoading: true,\n error: null,\n data: []\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(this.props.poll.api.votes).then(function (data) {\n var hydratedData = data.map(function (choice) {\n return Object.assign({}, choice, {\n voters: choice.voters.map(function (voter) {\n return Object.assign({}, voter, {\n voted_on: (0, _moment2.default)(voter.voted_on)\n });\n })\n });\n });\n\n _this2.setState({\n isLoading: false,\n data: hydratedData\n });\n }, function (rejection) {\n _this2.setState({\n isLoading: false,\n error: rejection.detail\n });\n });\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n {\n className: 'modal-dialog' + (this.state.error ? ' modal-message' : ' modal-sm'),\n role: 'document'\n },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: 'close',\n 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\")\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Poll votes\")\n )\n ),\n _react2.default.createElement(ModalBody, {\n data: this.state.data,\n error: this.state.error,\n isLoading: this.state.isLoading\n })\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction ModalBody(props) {\n if (props.isLoading) {\n return _react2.default.createElement(_modalLoader2.default, null);\n } else if (props.error) {\n return _react2.default.createElement(_modalMessage2.default, {\n icon: 'error_outline',\n message: props.error\n });\n }\n\n return _react2.default.createElement(ChoicesList, {\n data: props.data\n });\n}\n\nfunction ChoicesList(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-poll-votes' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled votes-details' },\n props.data.map(function (choice) {\n return _react2.default.createElement(ChoiceDetails, _extends({\n key: choice.hash\n }, choice));\n })\n )\n );\n}\n\nfunction ChoiceDetails(props) {\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'h4',\n null,\n props.label\n ),\n _react2.default.createElement(VotesCount, { votes: props.votes }),\n _react2.default.createElement(VotesList, { voters: props.voters }),\n _react2.default.createElement('hr', null)\n );\n}\n\nfunction VotesCount(props) {\n var message = ngettext(\"%(votes)s user has voted for this choice.\", \"%(votes)s users have voted for this choice.\", props.votes);\n\n var label = interpolate(message, {\n 'votes': props.votes\n }, true);\n\n return _react2.default.createElement(\n 'p',\n null,\n label\n );\n}\n\nfunction VotesList(props) {\n if (!props.voters.length) return null;\n\n return _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled' },\n props.voters.map(function (user) {\n return _react2.default.createElement(Voter, _extends({\n key: user.username\n }, user));\n })\n );\n}\n\nfunction Voter(props) {\n if (props.url) {\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n {\n className: 'item-title',\n href: props.url\n },\n props.username\n ),\n ' ',\n _react2.default.createElement(VoteDate, { voted_on: props.voted_on })\n );\n }\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'strong',\n null,\n props.username\n ),\n ' ',\n _react2.default.createElement(VoteDate, { voted_on: props.voted_on })\n );\n}\n\nfunction VoteDate(props) {\n return _react2.default.createElement(\n 'abbr',\n {\n className: 'text-muted',\n title: props.voted_on.format('LLL')\n },\n props.voted_on.fromNow()\n );\n}\n\n},{\"../../../services/ajax\":352,\"../../modal-loader\":57,\"../../modal-message\":58,\"moment\":\"moment\",\"react\":\"react\"}],105:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Delete = exports.Edit = exports.SeeVotes = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n var isPollOver = props.isPollOver,\n poll = props.poll,\n showVoting = props.showVoting,\n thread = props.thread;\n\n\n if (!isVisible(isPollOver, poll.acl, poll)) return null;\n\n var controls = [];\n\n var canVote = poll.acl.can_vote;\n var canChangeVote = !poll.hasSelectedChoices || poll.allow_revotes;\n\n if (canVote && canChangeVote) controls.push(0);\n if (poll.is_public || poll.acl.can_see_votes) controls.push(1);\n if (poll.acl.can_edit) controls.push(2);\n if (poll.acl.can_delete) controls.push(3);\n\n return _react2.default.createElement(\n 'div',\n { className: 'row poll-options' },\n _react2.default.createElement(ChangeVote, {\n controls: controls,\n isPollOver: isPollOver,\n poll: poll,\n showVoting: showVoting\n }),\n _react2.default.createElement(SeeVotes, {\n controls: controls,\n poll: poll\n }),\n _react2.default.createElement(Edit, {\n controls: controls,\n poll: poll,\n thread: thread\n }),\n _react2.default.createElement(Delete, {\n controls: controls,\n poll: poll\n })\n );\n};\n\nexports.isVisible = isVisible;\nexports.getClassName = getClassName;\nexports.ChangeVote = ChangeVote;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _modal = require('./modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _poll = require('../../../reducers/poll');\n\nvar poll = _interopRequireWildcard(_poll);\n\nvar _thread = require('../../../reducers/thread');\n\nvar thread = _interopRequireWildcard(_thread);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal3 = require('../../../services/modal');\n\nvar _modal4 = _interopRequireDefault(_modal3);\n\nvar _posting = require('../../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nfunction isVisible(isPollOver, acl, poll) {\n return poll.is_public || acl.can_delete || acl.can_edit || acl.can_see_votes || acl.can_vote && !isPollOver && (!poll.hasSelectedChoices || poll.allow_revotes);\n}\n\nfunction getClassName(controls, control) {\n var className = 'col-xs-6';\n\n if (controls.length === 1) {\n className = 'col-xs-12';\n }\n\n if (controls.length === 3 && controls[0] === control) {\n className = 'col-xs-12';\n }\n\n return className + ' col-sm-3 col-md-2';\n}\n\nfunction ChangeVote(props) {\n var canVote = props.poll.acl.can_vote;\n var canChangeVote = !props.poll.hasSelectedChoices || props.poll.allow_revotes;\n\n if (!(canVote && canChangeVote)) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: getClassName(props.controls, 0) },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-sm',\n disabled: props.poll.isBusy,\n onClick: props.showVoting\n },\n gettext(\"Vote\")\n )\n );\n}\n\nvar SeeVotes = exports.SeeVotes = function (_React$Component) {\n _inherits(SeeVotes, _React$Component);\n\n function SeeVotes() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, SeeVotes);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = SeeVotes.__proto__ || Object.getPrototypeOf(SeeVotes)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _modal4.default.show(_react2.default.createElement(_modal2.default, { poll: _this.props.poll }));\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(SeeVotes, [{\n key: 'render',\n value: function render() {\n var seeVotes = this.props.poll.is_public || this.props.poll.acl.can_see_votes;\n if (!seeVotes) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: getClassName(this.props.controls, 1) },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-sm',\n disabled: this.props.poll.isBusy,\n onClick: this.onClick\n },\n gettext(\"See votes\")\n )\n );\n }\n }]);\n\n return SeeVotes;\n}(_react2.default.Component);\n\nvar Edit = exports.Edit = function (_React$Component2) {\n _inherits(Edit, _React$Component2);\n\n function Edit() {\n var _ref2;\n\n var _temp2, _this2, _ret2;\n\n _classCallCheck(this, Edit);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, (_ref2 = Edit.__proto__ || Object.getPrototypeOf(Edit)).call.apply(_ref2, [this].concat(args))), _this2), _this2.onClick = function () {\n _posting2.default.open({\n submit: _this2.props.poll.api.index,\n\n thread: _this2.props.thread,\n poll: _this2.props.poll,\n\n mode: 'POLL'\n });\n }, _temp2), _possibleConstructorReturn(_this2, _ret2);\n }\n\n _createClass(Edit, [{\n key: 'render',\n value: function render() {\n if (!this.props.poll.acl.can_edit) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: getClassName(this.props.controls, 2) },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-sm',\n disabled: this.props.poll.isBusy,\n onClick: this.onClick\n },\n gettext(\"Edit\")\n )\n );\n }\n }]);\n\n return Edit;\n}(_react2.default.Component);\n\nvar Delete = exports.Delete = function (_React$Component3) {\n _inherits(Delete, _React$Component3);\n\n function Delete() {\n var _ref3;\n\n var _temp3, _this3, _ret3;\n\n _classCallCheck(this, Delete);\n\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _ret3 = (_temp3 = (_this3 = _possibleConstructorReturn(this, (_ref3 = Delete.__proto__ || Object.getPrototypeOf(Delete)).call.apply(_ref3, [this].concat(args))), _this3), _this3.onClick = function () {\n var deletePoll = confirm(gettext(\"Are you sure you want to delete this poll? This action is not reversible.\"));\n if (!deletePoll) return false;\n\n _store2.default.dispatch(poll.busy());\n\n _ajax2.default.delete(_this3.props.poll.api.index).then(_this3.handleSuccess, _this3.handleError);\n }, _this3.handleSuccess = function (newThreadAcl) {\n _snackbar2.default.success(\"Poll has been deleted\");\n _store2.default.dispatch(poll.remove());\n _store2.default.dispatch(thread.updateAcl(newThreadAcl));\n }, _this3.handleError = function (rejection) {\n _snackbar2.default.apiError(rejection);\n _store2.default.dispatch(poll.release());\n }, _temp3), _possibleConstructorReturn(_this3, _ret3);\n }\n\n _createClass(Delete, [{\n key: 'render',\n value: function render() {\n if (!this.props.poll.acl.can_delete) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: getClassName(this.props.controls, 3) },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-sm',\n disabled: this.props.poll.isBusy,\n onClick: this.onClick\n },\n gettext(\"Delete\")\n )\n );\n }\n }]);\n\n return Delete;\n}(_react2.default.Component);\n\n},{\"../../../reducers/poll\":339,\"../../../reducers/thread\":347,\"../../../services/ajax\":352,\"../../../services/modal\":358,\"../../../services/posting\":362,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"./modal\":104,\"react\":\"react\"}],106:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled list-inline poll-help' },\n _react2.default.createElement(PollChoicesLeft, { choicesLeft: props.choicesLeft }),\n _react2.default.createElement(PollAllowRevote, { poll: props.poll })\n );\n};\n\nexports.PollChoicesLeft = PollChoicesLeft;\nexports.PollAllowRevote = PollAllowRevote;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _escapeHtml = require('../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nvar DATE_ABBR = '%(relative)s';\nvar USER_SPAN = '%(user)s';\nvar USER_URL = '%(user)s';\n\nfunction PollChoicesLeft(_ref) {\n var choicesLeft = _ref.choicesLeft;\n\n if (choicesLeft === 0) {\n return _react2.default.createElement(\n 'li',\n { className: 'poll-help-choices-left' },\n gettext(\"You can't select any more choices.\")\n );\n }\n\n var message = ngettext(\"You can select %(choices)s more choice.\", \"You can select %(choices)s more choices.\", choicesLeft);\n\n var label = interpolate(message, {\n 'choices': choicesLeft\n }, true);\n\n return _react2.default.createElement(\n 'li',\n { className: 'poll-help-choices-left' },\n label\n );\n}\n\nfunction PollAllowRevote(props) {\n if (props.poll.allow_revotes) {\n return _react2.default.createElement(\n 'li',\n { className: 'poll-help-allow-revotes' },\n gettext(\"You can change your vote later.\")\n );\n }\n\n return _react2.default.createElement(\n 'li',\n { className: 'poll-help-no-revotes' },\n gettext(\"Votes are final.\")\n );\n}\n\n},{\"../../../utils/escape-html\":370,\"react\":\"react\"}],107:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _help = require('./help');\n\nvar _help2 = _interopRequireDefault(_help);\n\nvar _select = require('./select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nvar _utils = require('./utils');\n\nvar _info = require('../info');\n\nvar _info2 = _interopRequireDefault(_info);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _poll = require('../../../reducers/poll');\n\nvar poll = _interopRequireWildcard(_poll);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.toggleChoice = function (hash) {\n var choice = (0, _utils.getChoiceFromHash)(_this.state.choices, hash);\n\n var choices = null;\n if (!choice.selected) {\n choices = _this.selectChoice(choice, hash);\n } else {\n choices = _this.deselectChoice(choice, hash);\n }\n\n _this.setState({\n choices: choices,\n choicesLeft: (0, _utils.getChoicesLeft)(_this.props.poll, choices)\n });\n };\n\n _this.selectChoice = function (choice, hash) {\n var choicesLeft = (0, _utils.getChoicesLeft)(_this.props.poll, _this.state.choices);\n\n if (!choicesLeft) {\n for (var i in _this.state.choices.slice()) {\n var item = _this.state.choices[i];\n if (item.selected && item.hash != hash) {\n item.selected = false;\n break;\n }\n }\n }\n\n return _this.state.choices.map(function (choice) {\n return Object.assign({}, choice, {\n selected: choice.hash == hash ? true : choice.selected\n });\n });\n };\n\n _this.deselectChoice = function (choice, hash) {\n return _this.state.choices.map(function (choice) {\n return Object.assign({}, choice, {\n selected: choice.hash == hash ? false : choice.selected\n });\n });\n };\n\n _this.state = {\n isLoading: false,\n\n choices: props.poll.choices,\n choicesLeft: (0, _utils.getChoicesLeft)(props.poll, props.poll.choices)\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n if (this.state.choicesLeft === this.props.poll.allowed_choices) {\n _snackbar2.default.error(gettext(\"You need to select at least one choice\"));\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n var data = [];\n for (var i in this.state.choices.slice()) {\n var item = this.state.choices[i];\n if (item.selected) {\n data.push(item.hash);\n }\n }\n\n return _ajax2.default.post(this.props.poll.api.votes, data);\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(data) {\n _store2.default.dispatch(poll.replace(data));\n _snackbar2.default.success(gettext(\"Your vote has been saved.\"));\n\n this.props.showResults();\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-poll' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'h2',\n null,\n this.props.poll.question\n ),\n _react2.default.createElement(_info2.default, { poll: this.props.poll }),\n _react2.default.createElement(_select2.default, {\n choices: this.state.choices,\n toggleChoice: this.toggleChoice\n }),\n _react2.default.createElement(_help2.default, {\n choicesLeft: this.state.choicesLeft,\n poll: this.props.poll\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-footer' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-6 col-sm-4 col-md-2' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-primary btn-block btn-sm',\n loading: this.state.isLoading\n },\n gettext(\"Save your vote\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-6 col-sm-4 col-md-2' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-sm',\n disabled: this.state.isLoading,\n onClick: this.props.showResults,\n type: 'button'\n },\n gettext(\"See results\")\n )\n )\n )\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../reducers/poll\":339,\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../button\":5,\"../../form\":52,\"../info\":100,\"./help\":106,\"./select\":108,\"./utils\":109,\"react\":\"react\"}],108:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ChoiceSelect = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n return _react2.default.createElement(\n \"ul\",\n { className: \"list-unstyled poll-select-choices\" },\n props.choices.map(function (choice) {\n return _react2.default.createElement(ChoiceSelect, {\n choice: choice,\n key: choice.hash,\n toggleChoice: props.toggleChoice\n });\n })\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar ChoiceSelect = exports.ChoiceSelect = function (_React$Component) {\n _inherits(ChoiceSelect, _React$Component);\n\n function ChoiceSelect() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, ChoiceSelect);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = ChoiceSelect.__proto__ || Object.getPrototypeOf(ChoiceSelect)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _this.props.toggleChoice(_this.props.choice.hash);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(ChoiceSelect, [{\n key: \"render\",\n value: function render() {\n return _react2.default.createElement(\n \"li\",\n { className: \"poll-select-choice\" },\n _react2.default.createElement(\n \"button\",\n {\n className: this.props.choice.selected ? 'btn btn-selected' : 'btn',\n onClick: this.onClick,\n type: \"button\"\n },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n this.props.choice.selected ? 'check_box' : 'check_box_outline_blank'\n ),\n _react2.default.createElement(\n \"strong\",\n null,\n this.props.choice.label\n )\n )\n );\n }\n }]);\n\n return ChoiceSelect;\n}(_react2.default.Component);\n\n},{\"react\":\"react\"}],109:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getChoiceFromHash = getChoiceFromHash;\nexports.getChoicesLeft = getChoicesLeft;\nfunction getChoiceFromHash(choices, hash) {\n for (var i in choices) {\n var choice = choices[i];\n if (choice.hash === hash) {\n return choice;\n }\n }\n\n return null;\n}\n\nfunction getChoicesLeft(poll, choices) {\n var selection = [];\n for (var i in choices) {\n var choice = choices[i];\n if (choice.selected) {\n selection.push(choice);\n }\n }\n\n return poll.allowed_choices - selection.length;\n}\n\n},{}],110:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n \"div\",\n { className: \"modal-body post-changelog-diff\" },\n _react2.default.createElement(\n \"ul\",\n { className: \"list-unstyled\" },\n props.diff.map(function (item, i) {\n return _react2.default.createElement(DiffItem, { item: item, key: i });\n })\n )\n );\n};\n\nexports.DiffItem = DiffItem;\nexports.getItemClassName = getItemClassName;\nexports.cleanItem = cleanItem;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction DiffItem(props) {\n if (props.item[0] === '?') return null;\n\n return _react2.default.createElement(\n \"li\",\n { className: getItemClassName(props.item) },\n cleanItem(props.item)\n );\n}\n\nfunction getItemClassName(item) {\n var className = 'diff-item';\n if (item[0] === '-') {\n className += ' diff-item-sub';\n } else if (item[0] === '+') {\n className += ' diff-item-add';\n }\n return className;\n}\n\nfunction cleanItem(item) {\n return item.substr(2);\n}\n\n},{\"react\":\"react\"}],111:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _this.props.revertEdit(_this.props.edit.id);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n if (!this.props.canRevert) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'modal-footer visible-xs-block' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-sm btn-block',\n disabled: this.props.disabled,\n onClick: this.onClick,\n title: gettext(\"Revert post to state from before this edit.\")\n },\n gettext(\"Revert\")\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../button\":5,\"react\":\"react\"}],112:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ModalDialog = ModalDialog;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _diff = require('./diff');\n\nvar _diff2 = _interopRequireDefault(_diff);\n\nvar _footer = require('./footer');\n\nvar _footer2 = _interopRequireDefault(_footer);\n\nvar _toolbar = require('./toolbar');\n\nvar _toolbar2 = _interopRequireDefault(_toolbar);\n\nvar _utils = require('./utils');\n\nvar _modalMessage = require('../modal-message');\n\nvar _modalMessage2 = _interopRequireDefault(_modalMessage);\n\nvar _modalLoader = require('../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _post = require('../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.goToEdit = function () {\n var edit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n _this.setState({\n isBusy: true\n });\n\n var url = _this.props.post.api.edits;\n if (edit !== null) {\n url += '?edit=' + edit;\n }\n\n _ajax2.default.get(url).then(function (data) {\n _this.setState({\n isReady: true,\n isBusy: false,\n edit: (0, _utils.hydrateEdit)(data)\n });\n }, function (rejection) {\n _this.setState({\n isReady: true,\n isBusy: false,\n error: rejection.detail\n });\n });\n };\n\n _this.revertEdit = function (edit) {\n if (_this.state.isBusy) return;\n\n var confirmation = confirm(gettext(\"Are you sure you with to revert this post to the state from before this edit?\"));\n if (!confirmation) return;\n\n _this.setState({\n isBusy: true\n });\n\n var url = _this.props.post.api.edits + '?edit=' + edit;\n _ajax2.default.post(url).then(function (data) {\n var hydratedPost = post.hydrate(data);\n _store2.default.dispatch(post.patch(data, hydratedPost));\n\n _snackbar2.default.success(gettext(\"Post has been reverted to previous state.\"));\n _modal2.default.hide();\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n\n _this.setState({\n isBusy: false\n });\n });\n };\n\n _this.state = {\n isReady: false,\n isBusy: true,\n\n canRevert: props.post.acl.can_edit,\n\n error: null,\n edit: null\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.goToEdit();\n }\n }, {\n key: 'render',\n value: function render() {\n if (this.state.error) {\n return _react2.default.createElement(\n ModalDialog,\n { className: 'modal-dialog modal-message' },\n _react2.default.createElement(_modalMessage2.default, {\n message: this.state.error\n })\n );\n } else if (this.state.isReady) {\n return _react2.default.createElement(\n ModalDialog,\n null,\n _react2.default.createElement(_toolbar2.default, {\n canRevert: this.state.canRevert,\n disabled: this.state.isBusy,\n edit: this.state.edit,\n goToEdit: this.goToEdit,\n revertEdit: this.revertEdit\n }),\n _react2.default.createElement(_diff2.default, { diff: this.state.edit.diff }),\n _react2.default.createElement(_footer2.default, {\n canRevert: this.state.canRevert,\n disabled: this.state.isBusy,\n edit: this.state.edit,\n revertEdit: this.revertEdit\n })\n );\n }\n\n return _react2.default.createElement(\n ModalDialog,\n null,\n _react2.default.createElement(_modalLoader2.default, null)\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction ModalDialog(props) {\n return _react2.default.createElement(\n 'div',\n {\n className: props.className || \"modal-dialog\",\n role: 'document'\n },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Post edits history\")\n )\n ),\n props.children\n )\n );\n}\n\n},{\"../../reducers/post\":340,\"../../services/ajax\":352,\"../../services/modal\":358,\"../../services/snackbar\":363,\"../../services/store\":364,\"../modal-loader\":57,\"../modal-message\":58,\"./diff\":110,\"./footer\":111,\"./toolbar\":113,\"./utils\":114,\"react\":\"react\"}],113:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.GoBackBtn = GoBackBtn;\nexports.GoForwardBtn = GoForwardBtn;\nexports.GoLastBtn = GoLastBtn;\nexports.RevertBtn = RevertBtn;\nexports.Label = Label;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _escapeHtml = require('../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar DATE_ABBR = '%(relative)s';\nvar USER_SPAN = '%(user)s';\nvar USER_URL = '%(user)s';\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.goLast = function () {\n _this.props.goToEdit();\n }, _this.goForward = function () {\n _this.props.goToEdit(_this.props.edit.next);\n }, _this.goBack = function () {\n _this.props.goToEdit(_this.props.edit.previous);\n }, _this.revertEdit = function () {\n _this.props.revertEdit(_this.props.edit.id);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-toolbar post-changelog-toolbar' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-4' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-4' },\n _react2.default.createElement(GoBackBtn, {\n disabled: this.props.disabled,\n edit: this.props.edit,\n onClick: this.goBack\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-4' },\n _react2.default.createElement(GoForwardBtn, {\n disabled: this.props.disabled,\n edit: this.props.edit,\n onClick: this.goForward\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-4' },\n _react2.default.createElement(GoLastBtn, {\n disabled: this.props.disabled,\n edit: this.props.edit,\n onClick: this.goLast\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-5 xs-margin-top-half post-change-label' },\n _react2.default.createElement(Label, { edit: this.props.edit })\n ),\n _react2.default.createElement(RevertBtn, {\n canRevert: this.props.canRevert,\n disabled: this.props.disabled,\n onClick: this.revertEdit\n })\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction GoBackBtn(props) {\n return _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-block btn-icon btn-sm',\n disabled: props.disabled || !props.edit.previous,\n onClick: props.onClick,\n title: gettext(\"See previous change\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_left'\n )\n );\n}\n\nfunction GoForwardBtn(props) {\n return _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-block btn-icon btn-sm',\n disabled: props.disabled || !props.edit.next,\n onClick: props.onClick,\n title: gettext(\"See previous change\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_right'\n )\n );\n}\n\nfunction GoLastBtn(props) {\n return _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-block btn-icon btn-sm',\n disabled: props.disabled || !props.edit.next,\n onClick: props.onClick,\n title: gettext(\"See previous change\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'last_page'\n )\n );\n}\n\nfunction RevertBtn(props) {\n if (!props.canRevert) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-sm-3 hidden-xs' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-sm btn-block',\n disabled: props.disabled,\n onClick: props.onClick,\n title: gettext(\"Revert post to state from before this edit.\")\n },\n gettext(\"Revert\")\n )\n );\n}\n\nfunction Label(props) {\n var user = null;\n if (props.edit.url.editor) {\n user = interpolate(USER_URL, {\n url: (0, _escapeHtml2.default)(props.edit.url.editor),\n user: (0, _escapeHtml2.default)(props.edit.editor_name)\n }, true);\n } else {\n user = interpolate(USER_SPAN, {\n user: (0, _escapeHtml2.default)(props.edit.editor_name)\n }, true);\n }\n\n var date = interpolate(DATE_ABBR, {\n absolute: (0, _escapeHtml2.default)(props.edit.edited_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(props.edit.edited_on.fromNow())\n }, true);\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"By %(edited_by)s %(edited_on)s.\")), {\n edited_by: user,\n edited_on: date\n }, true);\n\n return _react2.default.createElement('p', { dangerouslySetInnerHTML: { __html: message } });\n}\n\n},{\"../../utils/escape-html\":370,\"../button\":5,\"react\":\"react\"}],114:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.hydrateEdit = hydrateEdit;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction hydrateEdit(json) {\n return Object.assign({}, json, {\n edited_on: (0, _moment2.default)(json.edited_on)\n });\n}\n\n},{\"moment\":\"moment\"}],115:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var isReady = _ref.isReady,\n posts = _ref.posts,\n poster = _ref.poster;\n\n if (!isReady) {\n return _react2.default.createElement(_preview2.default, null);\n }\n\n return _react2.default.createElement(\n 'ul',\n { className: 'posts-list post-feed ui-ready' },\n posts.map(function (post) {\n return _react2.default.createElement(_post2.default, {\n key: post.id,\n post: post,\n poster: poster\n });\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _post = require('./post');\n\nvar _post2 = _interopRequireDefault(_post);\n\nvar _preview = require('./preview');\n\nvar _preview2 = _interopRequireDefault(_preview);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./post\":118,\"./preview\":124,\"react\":\"react\"}],116:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (props.post.content) {\n return _react2.default.createElement(Default, props);\n } else {\n return _react2.default.createElement(Invalid, props);\n }\n};\n\nexports.Default = Default;\nexports.Invalid = Invalid;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _misagoMarkup = require('../../misago-markup');\n\nvar _misagoMarkup2 = _interopRequireDefault(_misagoMarkup);\n\nvar _escapeHtml = require('../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction Default(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'post-body' },\n _react2.default.createElement(_misagoMarkup2.default, { markup: props.post.content })\n );\n}\n\nfunction Invalid(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'post-body post-body-invalid' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"This post's contents cannot be displayed.\")\n ),\n _react2.default.createElement(\n 'p',\n { className: 'text-muted' },\n gettext(\"This error is caused by invalid post content manipulation.\")\n )\n );\n}\n\n},{\"../../../utils/escape-html\":370,\"../../misago-markup\":56,\"react\":\"react\"}],117:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post;\n var category = post.category,\n thread = post.thread;\n\n\n var tooltip = interpolate(gettext(\"posted %(posted_on)s\"), {\n 'posted_on': post.posted_on.format('LL, LT')\n }, true);\n\n return _react2.default.createElement(\n 'div',\n { className: 'post-heading' },\n _react2.default.createElement(\n 'a',\n {\n className: 'btn btn-link item-title',\n href: thread.url\n },\n thread.title\n ),\n _react2.default.createElement(\n 'a',\n {\n className: 'btn btn-link post-category',\n href: category.url.index\n },\n category.name\n ),\n _react2.default.createElement(\n 'a',\n {\n href: post.url.index,\n className: 'btn btn-link posted-on',\n title: tooltip\n },\n post.posted_on.fromNow()\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],118:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post,\n poster = _ref.poster;\n\n var user = poster || post.poster;\n\n var className = 'post';\n if (user && user.rank.css_class) {\n className += ' post-' + user.rank.css_class;\n }\n\n return _react2.default.createElement(\n 'li',\n {\n className: className,\n id: 'post-' + post.id\n },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-post' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(_postSide2.default, {\n post: post,\n poster: user\n }),\n _react2.default.createElement(_header2.default, { post: post }),\n _react2.default.createElement(_body2.default, { post: post })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _body = require('./body');\n\nvar _body2 = _interopRequireDefault(_body);\n\nvar _header = require('./header');\n\nvar _header2 = _interopRequireDefault(_header);\n\nvar _postSide = require('./post-side');\n\nvar _postSide2 = _interopRequireDefault(_postSide);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./body\":116,\"./header\":117,\"./post-side\":121,\"react\":\"react\"}],119:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post;\n\n return _react2.default.createElement(\n 'div',\n { className: 'post-side post-side-anonymous' },\n _react2.default.createElement(_button2.default, { post: post }),\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'span',\n null,\n _react2.default.createElement(_avatar2.default, {\n className: 'poster-avatar',\n size: 50\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'div',\n { className: 'media-heading' },\n _react2.default.createElement(\n 'span',\n { className: 'item-title' },\n post.poster_name\n )\n ),\n _react2.default.createElement(\n 'span',\n { className: 'user-title user-title-anonymous' },\n gettext(\"Removed user\")\n )\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../avatar\":3,\"./button\":120,\"react\":\"react\"}],120:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post;\n\n return _react2.default.createElement(\n \"a\",\n {\n className: \"btn btn-default btn-icon pull-right\",\n href: post.url.index\n },\n _react2.default.createElement(\n \"span\",\n { className: \"btn-text-left hidden-xs\" },\n gettext(\"See post\")\n ),\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"chevron_right\"\n )\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],121:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post,\n poster = _ref.poster;\n\n if (poster.id) {\n return _react2.default.createElement(_registered2.default, {\n post: post,\n poster: poster\n });\n }\n\n return _react2.default.createElement(_anonymous2.default, { post: post });\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _anonymous = require('./anonymous');\n\nvar _anonymous2 = _interopRequireDefault(_anonymous);\n\nvar _registered = require('./registered');\n\nvar _registered2 = _interopRequireDefault(_registered);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./anonymous\":119,\"./registered\":122,\"react\":\"react\"}],122:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post,\n poster = _ref.poster;\n\n return _react2.default.createElement(\n 'div',\n { className: 'post-side post-side-registered' },\n _react2.default.createElement(_button2.default, { post: post }),\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'a',\n { href: poster.url },\n _react2.default.createElement(_avatar2.default, {\n className: 'poster-avatar',\n size: 50,\n user: poster\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'div',\n { className: 'media-heading' },\n _react2.default.createElement(\n 'a',\n {\n className: 'item-title',\n href: poster.url\n },\n poster.username\n )\n ),\n _react2.default.createElement(_userTitle2.default, {\n title: poster.title,\n rank: poster.rank\n })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _userTitle = require('./user-title');\n\nvar _userTitle2 = _interopRequireDefault(_userTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../avatar\":3,\"./button\":120,\"./user-title\":123,\"react\":\"react\"}],123:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var rank = _ref.rank,\n title = _ref.title;\n\n var userTitle = title || rank.title || rank.name;\n\n var className = 'user-title';\n if (rank.css_class) {\n className += ' user-title-' + rank.css_class;\n }\n\n if (rank.is_tab) {\n return _react2.default.createElement(\n 'a',\n { className: className, href: rank.url },\n userTitle\n );\n }\n\n return _react2.default.createElement(\n 'span',\n { className: className },\n userTitle\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],124:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function () {\n return _react2.default.createElement(\n 'ul',\n { className: 'posts-list post-feed ui-preview' },\n _react2.default.createElement(\n 'li',\n { className: 'post' },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-post' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'div',\n { className: 'post-side post-side-anonymous' },\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'span',\n null,\n _react2.default.createElement(_avatar2.default, {\n className: 'poster-avatar',\n size: 50\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'div',\n { className: 'media-heading' },\n _react2.default.createElement(\n 'span',\n { className: 'item-title' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 200) + \"px\" }\n },\n '\\xA0'\n )\n )\n ),\n _react2.default.createElement(\n 'span',\n { className: 'user-title user-title-anonymous' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 200) + \"px\" }\n },\n '\\xA0'\n )\n )\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'post-heading' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 200) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'post-body' },\n _react2.default.createElement(\n 'article',\n { className: 'misago-markup' },\n _react2.default.createElement(\n 'p',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 200) + \"px\" }\n },\n '\\xA0'\n ),\n '\\xA0',\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 200) + \"px\" }\n },\n '\\xA0'\n ),\n '\\xA0',\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 200) + \"px\" }\n },\n '\\xA0'\n )\n )\n )\n )\n )\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _random = require('../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../utils/random\":375,\"../avatar\":3,\"react\":\"react\"}],125:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.hydrateLike = hydrateLike;\nexports.ModalDialog = ModalDialog;\nexports.LikesList = LikesList;\nexports.LikeDetails = LikeDetails;\nexports.LikeDate = LikeDate;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _avatar = require('./avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _modalMessage = require('./modal-message');\n\nvar _modalMessage2 = _interopRequireDefault(_modalMessage);\n\nvar _modalLoader = require('./modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n isReady: false,\n\n error: null,\n likes: []\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(this.props.post.api.likes).then(function (data) {\n _this2.setState({\n isReady: true,\n likes: data.map(hydrateLike)\n });\n }, function (rejection) {\n _this2.setState({\n isReady: true,\n error: rejection.detail\n });\n });\n }\n }, {\n key: 'render',\n value: function render() {\n if (this.state.error) {\n return _react2.default.createElement(\n ModalDialog,\n { className: 'modal-message' },\n _react2.default.createElement(_modalMessage2.default, {\n message: this.state.error\n })\n );\n } else if (this.state.isReady) {\n if (this.state.likes.length) {\n return _react2.default.createElement(\n ModalDialog,\n {\n className: 'modal-sm',\n likes: this.state.likes\n },\n _react2.default.createElement(LikesList, {\n likes: this.state.likes\n })\n );\n }\n\n return _react2.default.createElement(\n ModalDialog,\n { className: 'modal-message' },\n _react2.default.createElement(_modalMessage2.default, {\n message: gettext(\"No users have liked this post.\")\n })\n );\n }\n\n return _react2.default.createElement(\n ModalDialog,\n { className: 'modal-sm' },\n _react2.default.createElement(_modalLoader2.default, null)\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction hydrateLike(data) {\n return Object.assign({}, data, {\n liked_on: (0, _moment2.default)(data.liked_on)\n });\n}\n\nfunction ModalDialog(_ref) {\n var className = _ref.className,\n children = _ref.children,\n likes = _ref.likes;\n\n var title = gettext(\"Post Likes\");\n if (likes) {\n var likesCount = likes.length;\n var message = ngettext(\"%(likes)s like\", \"%(likes)s likes\", likesCount);\n\n title = interpolate(message, { likes: likesCount }, true);\n }\n\n return _react2.default.createElement(\n 'div',\n {\n className: \"modal-dialog \" + (className || ''),\n role: 'document'\n },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n title\n )\n ),\n children\n )\n );\n}\n\nfunction LikesList(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-post-likers' },\n _react2.default.createElement(\n 'ul',\n { className: 'media-list' },\n props.likes.map(function (like) {\n return _react2.default.createElement(LikeDetails, _extends({\n key: like.id\n }, like));\n })\n )\n );\n}\n\nfunction LikeDetails(props) {\n if (props.url) {\n var user = {\n id: props.liker_id,\n avatars: props.avatars\n };\n\n return _react2.default.createElement(\n 'li',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'a',\n {\n className: 'user-avatar',\n href: props.url\n },\n _react2.default.createElement(_avatar2.default, { size: '50', user: user })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'a',\n {\n className: 'item-title',\n href: props.url\n },\n props.username\n ),\n ' ',\n _react2.default.createElement(LikeDate, { likedOn: props.liked_on })\n )\n );\n }\n\n return _react2.default.createElement(\n 'li',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'span',\n { className: 'user-avatar' },\n _react2.default.createElement(_avatar2.default, { size: '50' })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'strong',\n null,\n props.username\n ),\n ' ',\n _react2.default.createElement(LikeDate, { likedOn: props.liked_on })\n )\n );\n}\n\nfunction LikeDate(props) {\n return _react2.default.createElement(\n 'span',\n {\n className: 'text-muted',\n title: props.likedOn.format('LLL')\n },\n props.likedOn.fromNow()\n );\n}\n\n},{\"../services/ajax\":352,\"./avatar\":3,\"./modal-loader\":57,\"./modal-message\":58,\"moment\":\"moment\",\"react\":\"react\"}],126:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _editor = require('../editor');\n\nvar _editor2 = _interopRequireDefault(_editor);\n\nvar _form = require('../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _container = require('./utils/container');\n\nvar _container2 = _interopRequireDefault(_container);\n\nvar _loader = require('./utils/loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nvar _message = require('./utils/message');\n\nvar _message2 = _interopRequireDefault(_message);\n\nvar _attachments = require('./utils/attachments');\n\nvar attachments = _interopRequireWildcard(_attachments);\n\nvar _validators = require('./utils/validators');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } //jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.loadSuccess = function (data) {\n _this.setState({\n isReady: true,\n\n post: data.post,\n attachments: attachments.hydrate(data.attachments),\n protect: data.is_protected,\n\n canProtect: data.can_protect\n });\n };\n\n _this.loadError = function (rejection) {\n _this.setState({\n isErrored: rejection.detail\n });\n };\n\n _this.onCancel = function () {\n var cancel = confirm(gettext(\"Are you sure you want to discard changes?\"));\n if (cancel) {\n _posting2.default.close();\n }\n };\n\n _this.onProtect = function () {\n _this.setState({\n protect: true\n });\n };\n\n _this.onUnprotect = function () {\n _this.setState({\n protect: false\n });\n };\n\n _this.onPostChange = function (event) {\n _this.changeValue('post', event.target.value);\n };\n\n _this.onAttachmentsChange = function (attachments) {\n _this.setState({\n attachments: attachments\n });\n };\n\n _this.state = {\n isReady: false,\n isLoading: false,\n isErrored: false,\n\n post: '',\n attachments: [],\n protect: false,\n\n canProtect: false,\n\n validators: {\n post: (0, _validators.getPostValidators)()\n },\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n _ajax2.default.get(this.props.config).then(this.loadSuccess, this.loadError);\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'clean',\n\n /* jshint ignore:end */\n\n value: function clean() {\n if (!this.state.post.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter a message.\"));\n return false;\n }\n\n var errors = this.validate();\n\n if (errors.post) {\n _snackbar2.default.error(errors.post[0]);\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.put(this.props.submit, {\n post: this.state.post,\n attachments: attachments.clean(this.state.attachments),\n protect: this.state.protect\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n _snackbar2.default.success(gettext(\"Reply has been edited.\"));\n window.location = success.url.index;\n\n // keep form loading\n this.setState({\n 'isLoading': true\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n var errors = [].concat(rejection.non_field_errors || [], rejection.category || [], rejection.title || [], rejection.post || []);\n\n _snackbar2.default.error(errors[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n if (this.state.isReady) {\n return _react2.default.createElement(\n _container2.default,\n { className: 'posting-form' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit, method: 'POST' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-12' },\n _react2.default.createElement(_editor2.default, {\n attachments: this.state.attachments,\n canProtect: this.state.canProtect,\n loading: this.state.isLoading,\n onAttachmentsChange: this.onAttachmentsChange,\n onCancel: this.onCancel,\n onChange: this.onPostChange,\n onProtect: this.onProtect,\n onUnprotect: this.onUnprotect,\n protect: this.state.protect,\n submitLabel: gettext(\"Edit reply\"),\n value: this.state.post\n })\n )\n )\n )\n );\n } else if (this.state.isErrored) {\n return _react2.default.createElement(_message2.default, { message: this.state.isErrored });\n } else {\n return _react2.default.createElement(_loader2.default, null);\n }\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../services/ajax\":352,\"../../services/posting\":362,\"../../services/snackbar\":363,\"../editor\":48,\"../form\":52,\"./utils/attachments\":131,\"./utils/container\":132,\"./utils/loader\":133,\"./utils/message\":134,\"./utils/validators\":137,\"react\":\"react\"}],127:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (props.mode === 'START') {\n return _react2.default.createElement(_start2.default, props);\n } else if (props.mode === 'START_PRIVATE') {\n return _react2.default.createElement(_startPrivate2.default, props);\n } else if (props.mode === 'REPLY') {\n return _react2.default.createElement(_reply2.default, props);\n } else if (props.mode === 'EDIT') {\n return _react2.default.createElement(_edit2.default, props);\n } else {\n return null;\n }\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _start = require('./start');\n\nvar _start2 = _interopRequireDefault(_start);\n\nvar _startPrivate = require('./start-private');\n\nvar _startPrivate2 = _interopRequireDefault(_startPrivate);\n\nvar _reply = require('./reply');\n\nvar _reply2 = _interopRequireDefault(_reply);\n\nvar _edit = require('./edit');\n\nvar _edit2 = _interopRequireDefault(_edit);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./edit\":126,\"./reply\":128,\"./start\":130,\"./start-private\":129,\"react\":\"react\"}],128:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _editor = require('../editor');\n\nvar _editor2 = _interopRequireDefault(_editor);\n\nvar _form = require('../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _container = require('./utils/container');\n\nvar _container2 = _interopRequireDefault(_container);\n\nvar _loader = require('./utils/loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nvar _message = require('./utils/message');\n\nvar _message2 = _interopRequireDefault(_message);\n\nvar _attachments = require('./utils/attachments');\n\nvar attachments = _interopRequireWildcard(_attachments);\n\nvar _validators = require('./utils/validators');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } //jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.loadSuccess = function (data) {\n _this.setState({\n isReady: true,\n\n post: data.post ? '[quote=\"@' + data.poster + '\"]\\n' + data.post + '\\n[/quote]' : ''\n });\n };\n\n _this.loadError = function (rejection) {\n _this.setState({\n isErrored: rejection.detail\n });\n };\n\n _this.appendData = function (data) {\n var newPost = data.post ? '[quote=\"@' + data.poster + '\"]\\n' + data.post + '\\n[/quote]\\n\\n' : '';\n\n _this.setState(function (prevState, props) {\n if (prevState.post.length > 0) {\n return {\n post: prevState.post + '\\n\\n' + newPost\n };\n }\n\n return {\n post: newPost\n };\n });\n };\n\n _this.onCancel = function () {\n var cancel = confirm(gettext(\"Are you sure you want to discard your reply?\"));\n if (cancel) {\n _posting2.default.close();\n }\n };\n\n _this.onPostChange = function (event) {\n _this.changeValue('post', event.target.value);\n };\n\n _this.onAttachmentsChange = function (attachments) {\n _this.setState({\n attachments: attachments\n });\n };\n\n _this.state = {\n isReady: false,\n isLoading: false,\n isErrored: false,\n\n post: '',\n attachments: [],\n\n validators: {\n post: (0, _validators.getPostValidators)()\n },\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n _ajax2.default.get(this.props.config, this.props.context || null).then(this.loadSuccess, this.loadError);\n }\n }, {\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n var context = this.props.context;\n var newContext = nextProps.context;\n\n if (context && newContext && context.reply === newContext.reply) return;\n\n _ajax2.default.get(nextProps.config, nextProps.context || null).then(this.appendData, _snackbar2.default.apiError);\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'clean',\n\n /* jshint ignore:end */\n\n value: function clean() {\n if (!this.state.post.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter a message.\"));\n return false;\n }\n\n var errors = this.validate();\n\n if (errors.post) {\n _snackbar2.default.error(errors.post[0]);\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.submit, {\n post: this.state.post,\n attachments: attachments.clean(this.state.attachments)\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n _snackbar2.default.success(gettext(\"Your reply has been posted.\"));\n window.location = success.url.index;\n\n // keep form loading\n this.setState({\n 'isLoading': true\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n var errors = [].concat(rejection.non_field_errors || [], rejection.post || []);\n\n _snackbar2.default.error(errors[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n if (this.state.isReady) {\n return _react2.default.createElement(\n _container2.default,\n { className: 'posting-form' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit, method: 'POST' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-12' },\n _react2.default.createElement(_editor2.default, {\n attachments: this.state.attachments,\n loading: this.state.isLoading,\n onAttachmentsChange: this.onAttachmentsChange,\n onCancel: this.onCancel,\n onChange: this.onPostChange,\n submitLabel: gettext(\"Post reply\"),\n value: this.state.post\n })\n )\n )\n )\n );\n } else if (this.state.isErrored) {\n return _react2.default.createElement(_message2.default, { message: this.state.isErrored });\n } else {\n return _react2.default.createElement(_loader2.default, null);\n }\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../services/ajax\":352,\"../../services/posting\":362,\"../../services/snackbar\":363,\"../editor\":48,\"../form\":52,\"./utils/attachments\":131,\"./utils/container\":132,\"./utils/loader\":133,\"./utils/message\":134,\"./utils/validators\":137,\"react\":\"react\"}],129:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _editor = require('../editor');\n\nvar _editor2 = _interopRequireDefault(_editor);\n\nvar _form = require('../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _container = require('./utils/container');\n\nvar _container2 = _interopRequireDefault(_container);\n\nvar _message = require('./utils/message');\n\nvar _message2 = _interopRequireDefault(_message);\n\nvar _attachments = require('./utils/attachments');\n\nvar attachments = _interopRequireWildcard(_attachments);\n\nvar _usernames = require('./utils/usernames');\n\nvar _usernames2 = _interopRequireDefault(_usernames);\n\nvar _validators = require('./utils/validators');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } //jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onCancel = function () {\n var cancel = confirm(gettext(\"Are you sure you want to discard private thread?\"));\n if (cancel) {\n _posting2.default.close();\n }\n };\n\n _this.onToChange = function (event) {\n _this.changeValue('to', event.target.value);\n };\n\n _this.onTitleChange = function (event) {\n _this.changeValue('title', event.target.value);\n };\n\n _this.onPostChange = function (event) {\n _this.changeValue('post', event.target.value);\n };\n\n _this.onAttachmentsChange = function (attachments) {\n _this.setState({\n attachments: attachments\n });\n };\n\n var to = (props.to || []).map(function (user) {\n return user.username;\n }).join(', ');\n\n _this.state = {\n isLoading: false,\n\n to: to,\n title: '',\n post: '',\n attachments: [],\n\n validators: {\n title: (0, _validators.getTitleValidators)(),\n post: (0, _validators.getPostValidators)()\n },\n errors: {}\n };\n return _this;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'clean',\n\n /* jshint ignore:end */\n\n value: function clean() {\n if (!(0, _usernames2.default)(this.state.to).length) {\n _snackbar2.default.error(gettext(\"You have to enter at least one recipient.\"));\n return false;\n }\n\n if (!this.state.title.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter thread title.\"));\n return false;\n }\n\n if (!this.state.post.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter a message.\"));\n return false;\n }\n\n var errors = this.validate();\n\n if (errors.title) {\n _snackbar2.default.error(errors.title[0]);\n return false;\n }\n\n if (errors.post) {\n _snackbar2.default.error(errors.post[0]);\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.submit, {\n to: (0, _usernames2.default)(this.state.to),\n title: this.state.title,\n post: this.state.post,\n attachments: attachments.clean(this.state.attachments)\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n _snackbar2.default.success(gettext(\"Your thread has been posted.\"));\n window.location = success.url;\n\n // keep form loading\n this.setState({\n 'isLoading': true\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n var errors = [].concat(rejection.non_field_errors || [], rejection.to || [], rejection.title || [], rejection.post || []);\n\n _snackbar2.default.error(errors[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n _container2.default,\n { className: 'posting-form', withFirstRow: true },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'row first-row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12' },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.onToChange,\n placeholder: gettext(\"Comma separated list of user names, eg.: Danny, Lisa\"),\n type: 'text',\n value: this.state.to\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'row first-row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12' },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.onTitleChange,\n placeholder: gettext(\"Thread title\"),\n type: 'text',\n value: this.state.title\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12' },\n _react2.default.createElement(_editor2.default, {\n attachments: this.state.attachments,\n loading: this.state.isLoading,\n onAttachmentsChange: this.onAttachmentsChange,\n onCancel: this.onCancel,\n onChange: this.onPostChange,\n submitLabel: gettext(\"Post thread\"),\n value: this.state.post\n })\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../services/ajax\":352,\"../../services/posting\":362,\"../../services/snackbar\":363,\"../editor\":48,\"../form\":52,\"./utils/attachments\":131,\"./utils/container\":132,\"./utils/message\":134,\"./utils/usernames\":136,\"./utils/validators\":137,\"react\":\"react\"}],130:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _categorySelect = require('../category-select');\n\nvar _categorySelect2 = _interopRequireDefault(_categorySelect);\n\nvar _editor = require('../editor');\n\nvar _editor2 = _interopRequireDefault(_editor);\n\nvar _form = require('../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _container = require('./utils/container');\n\nvar _container2 = _interopRequireDefault(_container);\n\nvar _loader = require('./utils/loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nvar _message = require('./utils/message');\n\nvar _message2 = _interopRequireDefault(_message);\n\nvar _options = require('./utils/options');\n\nvar _options2 = _interopRequireDefault(_options);\n\nvar _attachments = require('./utils/attachments');\n\nvar attachments = _interopRequireWildcard(_attachments);\n\nvar _validators = require('./utils/validators');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } //jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.loadSuccess = function (data) {\n var category = null;\n var showOptions = false;\n var categoryOptions = null;\n\n // hydrate categories, extract posting options\n var categories = data.map(function (item) {\n // pick first category that allows posting and if it may, override it with initial one\n if (item.post !== false && (!category || item.id == _this.state.category)) {\n category = item.id;\n categoryOptions = item.post;\n }\n\n if (item.post && (item.post.close || item.post.hide || item.post.pin)) {\n showOptions = true;\n }\n\n return Object.assign(item, {\n disabled: item.post === false,\n label: item.name,\n value: item.id\n });\n });\n\n _this.setState({\n isReady: true,\n showOptions: showOptions,\n\n categories: categories,\n category: category,\n categoryOptions: categoryOptions\n });\n };\n\n _this.loadError = function (rejection) {\n _this.setState({\n isErrored: rejection.detail\n });\n };\n\n _this.onCancel = function () {\n var cancel = confirm(gettext(\"Are you sure you want to discard thread?\"));\n if (cancel) {\n _posting2.default.close();\n }\n };\n\n _this.onTitleChange = function (event) {\n _this.changeValue('title', event.target.value);\n };\n\n _this.onCategoryChange = function (event) {\n var category = _this.state.categories.find(function (item) {\n return event.target.value == item.value;\n });\n\n // if selected pin is greater than allowed, reduce it\n var pin = _this.state.pin;\n if (category.post.pin && category.post.pin < pin) {\n pin = category.post.pin;\n }\n\n _this.setState({\n category: category.id,\n categoryOptions: category.post,\n\n pin: pin\n });\n };\n\n _this.onPostChange = function (event) {\n _this.changeValue('post', event.target.value);\n };\n\n _this.onAttachmentsChange = function (attachments) {\n _this.setState({\n attachments: attachments\n });\n };\n\n _this.onClose = function () {\n _this.changeValue('close', true);\n };\n\n _this.onOpen = function () {\n _this.changeValue('close', false);\n };\n\n _this.onPinGlobally = function () {\n _this.changeValue('pin', 2);\n };\n\n _this.onPinLocally = function () {\n _this.changeValue('pin', 1);\n };\n\n _this.onUnpin = function () {\n _this.changeValue('pin', 0);\n };\n\n _this.onHide = function () {\n _this.changeValue('hide', true);\n };\n\n _this.onUnhide = function () {\n _this.changeValue('hide', false);\n };\n\n _this.state = {\n isReady: false,\n isLoading: false,\n isErrored: false,\n\n showOptions: false,\n categoryOptions: null,\n\n title: '',\n category: props.category || null,\n categories: [],\n post: '',\n attachments: [],\n close: false,\n hide: false,\n pin: 0,\n\n validators: {\n title: (0, _validators.getTitleValidators)(),\n post: (0, _validators.getPostValidators)()\n },\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n _ajax2.default.get(this.props.config).then(this.loadSuccess, this.loadError);\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'clean',\n\n /* jshint ignore:end */\n\n value: function clean() {\n if (!this.state.title.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter thread title.\"));\n return false;\n }\n\n if (!this.state.post.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter a message.\"));\n return false;\n }\n\n var errors = this.validate();\n\n if (errors.title) {\n _snackbar2.default.error(errors.title[0]);\n return false;\n }\n\n if (errors.post) {\n _snackbar2.default.error(errors.post[0]);\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.submit, {\n title: this.state.title,\n category: this.state.category,\n post: this.state.post,\n attachments: attachments.clean(this.state.attachments),\n close: this.state.close,\n hide: this.state.hide,\n pin: this.state.pin\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n _snackbar2.default.success(gettext(\"Your thread has been posted.\"));\n window.location = success.url;\n\n // keep form loading\n this.setState({\n 'isLoading': true\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n var errors = [].concat(rejection.non_field_errors || [], rejection.category || [], rejection.title || [], rejection.post || []);\n\n _snackbar2.default.error(errors[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n if (this.state.isErrored) {\n return _react2.default.createElement(_message2.default, { message: this.state.isErrored });\n }\n\n if (!this.state.isReady) {\n return _react2.default.createElement(_loader2.default, null);\n }\n\n var columns = 0;\n if (this.state.categoryOptions.close) columns += 1;\n if (this.state.categoryOptions.hide) columns += 1;\n if (this.state.categoryOptions.pin) columns += 1;\n\n var titleStyle = null;\n\n if (columns === 1) {\n titleStyle = 'col-sm-6';\n } else {\n titleStyle = 'col-sm-8';\n }\n\n if (columns === 3) {\n titleStyle += ' col-md-6';\n } else if (columns) {\n titleStyle += ' col-md-7';\n } else {\n titleStyle += ' col-md-9';\n }\n\n return _react2.default.createElement(\n _container2.default,\n { className: 'posting-form', withFirstRow: true },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'row first-row' },\n _react2.default.createElement(\n 'div',\n { className: titleStyle },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.onTitleChange,\n placeholder: gettext(\"Thread title\"),\n type: 'text',\n value: this.state.title\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-4 col-md-3 xs-margin-top' },\n _react2.default.createElement(_categorySelect2.default, {\n choices: this.state.categories,\n disabled: this.state.isLoading,\n onChange: this.onCategoryChange,\n value: this.state.category\n })\n ),\n _react2.default.createElement(_options2.default, {\n close: this.state.close,\n columns: columns,\n disabled: this.state.isLoading,\n hide: this.state.hide,\n onClose: this.onClose,\n onHide: this.onHide,\n onOpen: this.onOpen,\n onPinGlobally: this.onPinGlobally,\n onPinLocally: this.onPinLocally,\n onUnhide: this.onUnhide,\n onUnpin: this.onUnpin,\n options: this.state.categoryOptions,\n pin: this.state.pin,\n showOptions: this.state.showOptions\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-12' },\n _react2.default.createElement(_editor2.default, {\n attachments: this.state.attachments,\n loading: this.state.isLoading,\n onAttachmentsChange: this.onAttachmentsChange,\n onCancel: this.onCancel,\n onChange: this.onPostChange,\n submitLabel: gettext(\"Post thread\"),\n value: this.state.post\n })\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../services/ajax\":352,\"../../services/posting\":362,\"../../services/snackbar\":363,\"../category-select\":18,\"../editor\":48,\"../form\":52,\"./utils/attachments\":131,\"./utils/container\":132,\"./utils/loader\":133,\"./utils/message\":134,\"./utils/options\":135,\"./utils/validators\":137,\"react\":\"react\"}],131:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.clean = clean;\nexports.hydrate = hydrate;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction clean(attachments) {\n var completedAttachments = attachments.filter(function (attachment) {\n return attachment.id && !attachment.isRemoved;\n });\n\n return completedAttachments.map(function (a) {\n return a.id;\n });\n}\n\nfunction hydrate(attachments) {\n return attachments.map(function (attachment) {\n return Object.assign({}, attachment, {\n uploaded_on: (0, _moment2.default)(attachment.uploaded_on)\n });\n });\n}\n\n},{\"moment\":\"moment\"}],132:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n \"div\",\n { className: props.className },\n _react2.default.createElement(\n \"div\",\n { className: \"container\" },\n props.children\n )\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],133:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _container2.default,\n { className: 'posting-loader' },\n _react2.default.createElement(_loader2.default, null)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _container = require('./container');\n\nvar _container2 = _interopRequireDefault(_container);\n\nvar _loader = require('../../loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../loader\":54,\"./container\":132,\"react\":\"react\"}],134:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _container2.default,\n { className: 'posting-message' },\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n null,\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'error_outline'\n ),\n props.message\n ),\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-default', onClick: _posting2.default.close },\n gettext(\"Dismiss\")\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _container = require('./container');\n\nvar _container2 = _interopRequireDefault(_container);\n\nvar _posting = require('../../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../services/posting\":362,\"./container\":132,\"react\":\"react\"}],135:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (!props.showOptions) return null;\n\n var columns = props.columns;\n\n\n var className = 'col-xs-12 xs-margin-top';\n\n if (columns === 1) {\n className += ' col-sm-2';\n } else {\n className += ' sm-margin-top';\n }\n\n if (columns === 3) {\n className += ' col-md-3';\n } else {\n className += ' col-md-2';\n }\n className += ' posting-options';\n\n var columnClassName = 'col-xs-' + 12 / columns;\n\n var textClassName = 'btn-text';\n if (columns === 3) {\n textClassName += ' visible-sm-inline-block';\n } else if (columns === 2) {\n textClassName += ' hidden-md hidden-lg';\n } else {\n textClassName += ' hidden-sm';\n }\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(PinOptions, {\n className: columnClassName,\n disabled: props.disabled,\n onPinGlobally: props.onPinGlobally,\n onPinLocally: props.onPinLocally,\n onUnpin: props.onUnpin,\n pin: props.pin,\n show: props.options.pin,\n textClassName: textClassName\n }),\n _react2.default.createElement(HideOptions, {\n className: columnClassName,\n disabled: props.disabled,\n hide: props.hide,\n onHide: props.onHide,\n onUnhide: props.onUnhide,\n show: props.options.hide,\n textClassName: textClassName\n }),\n _react2.default.createElement(CloseOptions, {\n className: columnClassName,\n close: props.close,\n disabled: props.disabled,\n onClose: props.onClose,\n onOpen: props.onOpen,\n show: props.options.close,\n textClassName: textClassName\n })\n )\n );\n};\n\nexports.CloseOptions = CloseOptions;\nexports.HideOptions = HideOptions;\nexports.PinOptions = PinOptions;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction CloseOptions(props) {\n if (!props.show) return null;\n\n var label = props.close ? gettext('Closed') : gettext('Open');\n\n return _react2.default.createElement(\n 'div',\n { className: props.className },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block',\n disabled: props.disabled,\n onClick: props.close ? props.onOpen : props.onClose,\n title: label,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n props.close ? 'lock' : 'lock_outline'\n ),\n _react2.default.createElement(\n 'span',\n { className: props.textClassName },\n label\n )\n )\n );\n}\n\nfunction HideOptions(props) {\n if (!props.show) return null;\n\n var label = props.hide ? gettext('Hidden') : gettext('Not hidden');\n\n return _react2.default.createElement(\n 'div',\n { className: props.className },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block',\n disabled: props.disabled,\n onClick: props.hide ? props.onUnhide : props.onHide,\n title: label,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n props.hide ? 'visibility_off' : 'visibility'\n ),\n _react2.default.createElement(\n 'span',\n { className: props.textClassName },\n label\n )\n )\n );\n}\n\nfunction PinOptions(props) {\n if (!props.show) return null;\n\n var icon = null;\n var onClick = null;\n var label = null;\n\n switch (props.pin) {\n case 0:\n icon = 'radio_button_unchecked';\n onClick = props.onPinLocally;\n label = gettext(\"Unpinned\");\n break;\n\n case 1:\n icon = 'bookmark_outline';\n onClick = props.onPinGlobally;\n label = gettext(\"Pinned locally\");\n\n if (props.show == 2) {\n onClick = props.onPinGlobally;\n } else {\n onClick = props.onUnpin;\n }\n\n break;\n\n case 2:\n icon = 'bookmark';\n onClick = props.onUnpin;\n label = gettext(\"Pinned globally\");\n break;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: props.className },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block',\n disabled: props.disabled,\n onClick: onClick,\n title: label,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n icon\n ),\n _react2.default.createElement(\n 'span',\n { className: props.textClassName },\n label\n )\n )\n );\n}\n\n},{\"react\":\"react\"}],136:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (usernames) {\n var normalisedNames = usernames.split(',').map(function (i) {\n return i.trim().toLowerCase();\n });\n var removedBlanks = normalisedNames.filter(function (i) {\n return i.length > 0;\n });\n var removedDuplicates = removedBlanks.filter(function (name, pos) {\n return removedBlanks.indexOf(name) == pos;\n });\n\n return removedDuplicates;\n};\n\n},{}],137:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getTitleValidators = getTitleValidators;\nexports.getPostValidators = getPostValidators;\nexports.getTitleLengthMin = getTitleLengthMin;\nexports.getTitleLengthMax = getTitleLengthMax;\nexports.validatePostLengthMin = validatePostLengthMin;\nexports.validatePostLengthMax = validatePostLengthMax;\n\nvar _validators = require('../../../utils/validators');\n\nvar _ = require('../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getTitleValidators() {\n return [getTitleLengthMin(), getTitleLengthMax()];\n}\n\nfunction getPostValidators() {\n if (_2.default.get('SETTINGS').post_length_max) {\n return [validatePostLengthMin(), validatePostLengthMax()];\n } else {\n return [validatePostLengthMin()];\n }\n}\n\nfunction getTitleLengthMin() {\n return (0, _validators.minLength)(_2.default.get('SETTINGS').thread_title_length_min, function (limitValue, length) {\n var message = ngettext(\"Thread title should be at least %(limit_value)s character long (it has %(show_value)s).\", \"Thread title should be at least %(limit_value)s characters long (it has %(show_value)s).\", limitValue);\n\n return interpolate(message, {\n limit_value: limitValue,\n show_value: length\n }, true);\n });\n}\n\nfunction getTitleLengthMax() {\n return (0, _validators.maxLength)(_2.default.get('SETTINGS').thread_title_length_max, function (limitValue, length) {\n var message = ngettext(\"Thread title cannot be longer than %(limit_value)s character (it has %(show_value)s).\", \"Thread title cannot be longer than %(limit_value)s characters (it has %(show_value)s).\", limitValue);\n\n return interpolate(message, {\n limit_value: limitValue,\n show_value: length\n }, true);\n });\n}\n\nfunction validatePostLengthMin() {\n return (0, _validators.minLength)(_2.default.get('SETTINGS').post_length_min, function (limitValue, length) {\n var message = ngettext(\"Posted message should be at least %(limit_value)s character long (it has %(show_value)s).\", \"Posted message should be at least %(limit_value)s characters long (it has %(show_value)s).\", limitValue);\n\n return interpolate(message, {\n limit_value: limitValue,\n show_value: length\n }, true);\n });\n}\n\nfunction validatePostLengthMax() {\n return (0, _validators.maxLength)(_2.default.get('SETTINGS').post_length_max || 1000000, function (limitValue, length) {\n var message = ngettext(\"Posted message cannot be longer than %(limit_value)s character (it has %(show_value)s).\", \"Posted message cannot be longer than %(limit_value)s characters (it has %(show_value)s).\", limitValue);\n\n return interpolate(message, {\n limit_value: limitValue,\n show_value: length\n }, true);\n });\n}\n\n},{\"../../..\":291,\"../../../utils/validators\":380}],138:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Delete = exports.Unhide = exports.Hide = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n if (isVisible(props.post.acl)) {\n return _react2.default.createElement(\n 'li',\n { className: 'event-controls' },\n _react2.default.createElement(Hide, props),\n _react2.default.createElement(Unhide, props),\n _react2.default.createElement(Delete, props)\n );\n } else {\n return null;\n }\n};\n\nexports.isVisible = isVisible;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _post = require('../../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nfunction isVisible(acl) {\n return acl.can_hide;\n}\n\nvar Hide = exports.Hide = function (_React$Component) {\n _inherits(Hide, _React$Component);\n\n function Hide() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Hide);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Hide.__proto__ || Object.getPrototypeOf(Hide)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _store2.default.dispatch(post.patch(_this.props.post, {\n is_hidden: true,\n hidden_on: (0, _moment2.default)(),\n hidden_by_name: _this.props.user.username,\n url: Object.assign(_this.props.post.url, {\n hidden_by: _this.props.user.url\n })\n }));\n\n var op = { 'op': 'replace', 'path': 'is-hidden', 'value': true };\n\n _ajax2.default.patch(_this.props.post.api.index, [op]).then(function (patch) {\n _store2.default.dispatch(post.patch(_this.props.post, patch));\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n _store2.default.dispatch(post.patch(_this.props.post, {\n is_hidden: false\n }));\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Hide, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.is_hidden) {\n return _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n gettext(\"Hide\")\n );\n } else {\n return null;\n }\n }\n }]);\n\n return Hide;\n}(_react2.default.Component);\n\nvar Unhide = exports.Unhide = function (_React$Component2) {\n _inherits(Unhide, _React$Component2);\n\n function Unhide() {\n var _ref2;\n\n var _temp2, _this2, _ret2;\n\n _classCallCheck(this, Unhide);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, (_ref2 = Unhide.__proto__ || Object.getPrototypeOf(Unhide)).call.apply(_ref2, [this].concat(args))), _this2), _this2.onClick = function () {\n _store2.default.dispatch(post.patch(_this2.props.post, {\n is_hidden: false\n }));\n\n var op = { 'op': 'replace', 'path': 'is-hidden', 'value': false };\n\n _ajax2.default.patch(_this2.props.post.api.index, [op]).then(function (patch) {\n _store2.default.dispatch(post.patch(_this2.props.post, patch));\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n _store2.default.dispatch(post.patch(_this2.props.post, {\n is_hidden: true\n }));\n });\n }, _temp2), _possibleConstructorReturn(_this2, _ret2);\n }\n\n _createClass(Unhide, [{\n key: 'render',\n value: function render() {\n if (this.props.post.is_hidden) {\n return _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n gettext(\"Unhide\")\n );\n } else {\n return null;\n }\n }\n }]);\n\n return Unhide;\n}(_react2.default.Component);\n\nvar Delete = exports.Delete = function (_React$Component3) {\n _inherits(Delete, _React$Component3);\n\n function Delete() {\n var _ref3;\n\n var _temp3, _this3, _ret3;\n\n _classCallCheck(this, Delete);\n\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _ret3 = (_temp3 = (_this3 = _possibleConstructorReturn(this, (_ref3 = Delete.__proto__ || Object.getPrototypeOf(Delete)).call.apply(_ref3, [this].concat(args))), _this3), _this3.onClick = function () {\n var decision = confirm(gettext(\"Are you sure you wish to delete this event? This action is not reversible!\"));\n if (decision) {\n _this3.delete();\n }\n }, _this3.delete = function () {\n _store2.default.dispatch(post.patch(_this3.props.post, {\n isDeleted: true\n }));\n\n _ajax2.default.delete(_this3.props.post.api.index).then(function () {\n _snackbar2.default.success(gettext(\"Event has been deleted.\"));\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n _store2.default.dispatch(post.patch(_this3.props.post, {\n isDeleted: false\n }));\n });\n }, _temp3), _possibleConstructorReturn(_this3, _ret3);\n }\n\n _createClass(Delete, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n gettext(\"Delete\")\n );\n }\n }]);\n\n return Delete;\n}(_react2.default.Component);\n\n},{\"../../../reducers/post\":340,\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"moment\":\"moment\",\"react\":\"react\"}],139:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'post-avatar' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n ICON[props.post.event_type]\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar ICON = {\n changed_title: 'edit',\n\n pinned_globally: 'bookmark',\n pinned_locally: 'bookmark_border',\n unpinned: 'panorama_fish_eye',\n\n moved: 'arrow_forward',\n merged: 'call_merge',\n\n approved: 'done',\n\n opened: 'lock_open',\n closed: 'lock_outline',\n\n unhid: 'visibility',\n hid: 'visibility_off',\n\n changed_owner: 'grade',\n tookover: 'grade',\n\n added_participant: 'person_add',\n\n owner_left: 'person_outline',\n participant_left: 'person_outline',\n removed_participant: 'remove_circle_outline'\n}; /* jshint ignore:start */\n\n},{\"react\":\"react\"}],140:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n var className = 'event';\n if (props.post.isDeleted) {\n className = 'hide';\n } else if (props.post.is_hidden) {\n className = 'event post-hidden';\n }\n\n return _react2.default.createElement(\n 'li',\n { id: 'post-' + props.post.id, className: className },\n _react2.default.createElement(_unreadLabel2.default, { post: props.post }),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-2 col-sm-3 text-right' },\n _react2.default.createElement(_icon2.default, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-10 col-sm-9 text-left' },\n _react2.default.createElement(\n _waypoint2.default,\n { post: props.post },\n _react2.default.createElement(_message2.default, props),\n _react2.default.createElement(_info2.default, props)\n )\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _icon = require('./icon');\n\nvar _icon2 = _interopRequireDefault(_icon);\n\nvar _info = require('./info');\n\nvar _info2 = _interopRequireDefault(_info);\n\nvar _message = require('./message');\n\nvar _message2 = _interopRequireDefault(_message);\n\nvar _unreadLabel = require('./unread-label');\n\nvar _unreadLabel2 = _interopRequireDefault(_unreadLabel);\n\nvar _waypoint = require('../waypoint');\n\nvar _waypoint2 = _interopRequireDefault(_waypoint);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../waypoint\":166,\"./icon\":139,\"./info\":141,\"./message\":142,\"./unread-label\":143,\"react\":\"react\"}],141:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'ul',\n { className: 'list-inline event-info' },\n _react2.default.createElement(Hidden, props),\n _react2.default.createElement(Poster, props),\n _react2.default.createElement(Ip, props),\n _react2.default.createElement(_controls2.default, props)\n );\n};\n\nexports.Hidden = Hidden;\nexports.Poster = Poster;\nexports.Ip = Ip;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _escapeHtml = require('../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nvar _controls = require('./controls');\n\nvar _controls2 = _interopRequireDefault(_controls);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar DATE_ABBR = '%(relative)s'; /* jshint ignore:start */\n\nvar DATE_URL = '%(relative)s';\nvar USER_SPAN = '%(user)s';\nvar USER_URL = '%(user)s';\n\nfunction Hidden(props) {\n if (props.post.is_hidden) {\n var user = null;\n if (props.post.url.hidden_by) {\n user = interpolate(USER_URL, {\n url: (0, _escapeHtml2.default)(props.post.url.hidden_by),\n user: (0, _escapeHtml2.default)(props.post.hidden_by_name)\n }, true);\n } else {\n user = interpolate(USER_SPAN, {\n user: (0, _escapeHtml2.default)(props.post.hidden_by_name)\n }, true);\n }\n\n var date = interpolate(DATE_ABBR, {\n absolute: (0, _escapeHtml2.default)(props.post.hidden_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(props.post.hidden_on.fromNow())\n }, true);\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"Hidden by %(event_by)s %(event_on)s.\")), {\n event_by: user,\n event_on: date\n }, true);\n\n return _react2.default.createElement('li', {\n className: 'event-hidden-message',\n dangerouslySetInnerHTML: { __html: message }\n });\n } else {\n return null;\n }\n}\n\nfunction Poster(props) {\n var user = null;\n if (props.post.poster) {\n user = interpolate(USER_URL, {\n url: (0, _escapeHtml2.default)(props.post.poster.url),\n user: (0, _escapeHtml2.default)(props.post.poster_name)\n }, true);\n } else {\n user = interpolate(USER_SPAN, {\n user: (0, _escapeHtml2.default)(props.post.poster_name)\n }, true);\n }\n\n var date = interpolate(DATE_URL, {\n url: (0, _escapeHtml2.default)(props.post.url.index),\n absolute: (0, _escapeHtml2.default)(props.post.posted_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(props.post.posted_on.fromNow())\n }, true);\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"By %(event_by)s %(event_on)s.\")), {\n event_by: user,\n event_on: date\n }, true);\n\n return _react2.default.createElement('li', { className: 'event-posters', dangerouslySetInnerHTML: { __html: message } });\n}\n\nfunction Ip(props) {\n if (props.user.acl.can_see_users_ips) {\n return _react2.default.createElement(\n 'li',\n { className: 'event-ip' },\n _react2.default.createElement(\n 'abbr',\n { title: props.post.poster_ip },\n gettext(\"IP recorded\")\n )\n );\n } else {\n return null;\n }\n}\n\n},{\"../../../utils/escape-html\":370,\"./controls\":138,\"react\":\"react\"}],142:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (MESSAGE[props.post.event_type]) {\n return _react2.default.createElement(\n 'p',\n { className: 'event-message' },\n MESSAGE[props.post.event_type]\n );\n } else if (props.post.event_type === 'changed_title') {\n return _react2.default.createElement(ChangedTitle, props);\n } else if (props.post.event_type === 'moved') {\n return _react2.default.createElement(Moved, props);\n } else if (props.post.event_type === 'merged') {\n return _react2.default.createElement(Merged, props);\n } else if (props.post.event_type === 'changed_owner') {\n return _react2.default.createElement(ChangedOwner, props);\n } else if (props.post.event_type === 'added_participant') {\n return _react2.default.createElement(AddedParticipant, props);\n } else if (props.post.event_type === 'removed_participant') {\n return _react2.default.createElement(RemovedParticipant, props);\n } else {\n return null;\n }\n};\n\nexports.ChangedTitle = ChangedTitle;\nexports.Moved = Moved;\nexports.Merged = Merged;\nexports.ChangedOwner = ChangedOwner;\nexports.AddedParticipant = AddedParticipant;\nexports.RemovedParticipant = RemovedParticipant;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _escapeHtml = require('../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nvar MESSAGE = {\n pinned_globally: gettext(\"Thread has been pinned globally.\"),\n pinned_locally: gettext(\"Thread has been pinned locally.\"),\n unpinned: gettext(\"Thread has been unpinned.\"),\n\n approved: gettext(\"Thread has been approved.\"),\n\n opened: gettext(\"Thread has been opened.\"),\n closed: gettext(\"Thread has been closed.\"),\n\n unhid: gettext(\"Thread has been revealed.\"),\n hid: gettext(\"Thread has been made hidden.\"),\n\n tookover: gettext(\"Took thread over.\"),\n\n owner_left: gettext(\"Owner has left thread. This thread is now closed.\"),\n participant_left: gettext(\"Participant has left thread.\")\n};\n\nvar ITEM_LINK = '%(name)s';\nvar ITEM_SPAN = '%(name)s';\n\nfunction ChangedTitle(props) {\n var msgstring = (0, _escapeHtml2.default)(gettext(\"Thread title has been changed from %(old_title)s.\"));\n var oldTitle = interpolate(ITEM_SPAN, {\n name: (0, _escapeHtml2.default)(props.post.event_context.old_title)\n }, true);\n var message = interpolate(msgstring, {\n old_title: oldTitle\n }, true);\n\n return _react2.default.createElement('p', { className: 'event-message', dangerouslySetInnerHTML: { __html: message } });\n}\n\nfunction Moved(props) {\n var msgstring = (0, _escapeHtml2.default)(gettext(\"Thread has been moved from %(from_category)s.\"));\n var fromCategory = interpolate(ITEM_LINK, {\n url: (0, _escapeHtml2.default)(props.post.event_context.from_category.url),\n name: (0, _escapeHtml2.default)(props.post.event_context.from_category.name)\n }, true);\n\n var message = interpolate(msgstring, {\n from_category: fromCategory\n }, true);\n\n return _react2.default.createElement('p', { className: 'event-message', dangerouslySetInnerHTML: { __html: message } });\n}\n\nfunction Merged(props) {\n var msgstring = (0, _escapeHtml2.default)(gettext(\"The %(merged_thread)s thread has been merged into this thread.\"));\n var mergedThread = interpolate(ITEM_SPAN, {\n name: (0, _escapeHtml2.default)(props.post.event_context.merged_thread)\n }, true);\n\n var message = interpolate(msgstring, {\n merged_thread: mergedThread\n }, true);\n\n return _react2.default.createElement('p', { className: 'event-message', dangerouslySetInnerHTML: { __html: message } });\n}\n\nfunction ChangedOwner(props) {\n var msgstring = (0, _escapeHtml2.default)(gettext(\"Changed thread owner to %(user)s.\"));\n var newOwner = interpolate(ITEM_LINK, {\n url: (0, _escapeHtml2.default)(props.post.event_context.user.url),\n name: (0, _escapeHtml2.default)(props.post.event_context.user.username)\n }, true);\n\n var message = interpolate(msgstring, {\n user: newOwner\n }, true);\n\n return _react2.default.createElement('p', { className: 'event-message', dangerouslySetInnerHTML: { __html: message } });\n}\n\nfunction AddedParticipant(props) {\n var msgstring = (0, _escapeHtml2.default)(gettext(\"Added %(user)s to thread.\"));\n var newOwner = interpolate(ITEM_LINK, {\n url: (0, _escapeHtml2.default)(props.post.event_context.user.url),\n name: (0, _escapeHtml2.default)(props.post.event_context.user.username)\n }, true);\n\n var message = interpolate(msgstring, {\n user: newOwner\n }, true);\n\n return _react2.default.createElement('p', { className: 'event-message', dangerouslySetInnerHTML: { __html: message } });\n}\n\nfunction RemovedParticipant(props) {\n var msgstring = (0, _escapeHtml2.default)(gettext(\"Removed %(user)s from thread.\"));\n var newOwner = interpolate(ITEM_LINK, {\n url: (0, _escapeHtml2.default)(props.post.event_context.user.url),\n name: (0, _escapeHtml2.default)(props.post.event_context.user.username)\n }, true);\n\n var message = interpolate(msgstring, {\n user: newOwner\n }, true);\n\n return _react2.default.createElement('p', { className: 'event-message', dangerouslySetInnerHTML: { __html: message } });\n}\n\n},{\"../../../utils/escape-html\":370,\"react\":\"react\"}],143:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post;\n\n if (post.is_read) return null;\n\n return _react2.default.createElement(\n \"div\",\n { className: \"row\" },\n _react2.default.createElement(\n \"div\",\n { className: \"col-xs-10 col-xs-offset-2 col-sm-9 col-sm-offset-3 text-left\" },\n _react2.default.createElement(\n \"div\",\n { className: \"event-label\" },\n _react2.default.createElement(\n \"span\",\n { className: \"label label-unread\" },\n gettext(\"New event\")\n )\n )\n )\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],144:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; /* jshint ignore:start */\n\n\nexports.default = function (props) {\n if (!props.posts.isLoaded) {\n return _react2.default.createElement(\n 'ul',\n { className: 'posts-list ui-preview' },\n _react2.default.createElement(_preview2.default, null)\n );\n }\n\n return _react2.default.createElement(\n 'ul',\n { className: 'posts-list ui-ready' },\n props.posts.results.map(function (post) {\n return _react2.default.createElement(ListItem, _extends({\n key: post.id,\n post: post\n }, props));\n })\n );\n};\n\nexports.ListItem = ListItem;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _event = require('./event');\n\nvar _event2 = _interopRequireDefault(_event);\n\nvar _post = require('./post');\n\nvar _post2 = _interopRequireDefault(_post);\n\nvar _preview = require('./post/preview');\n\nvar _preview2 = _interopRequireDefault(_preview);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ListItem(props) {\n if (props.post.is_event) {\n return _react2.default.createElement(_event2.default, props);\n }\n\n return _react2.default.createElement(_post2.default, props);\n}\n\n},{\"./event\":140,\"./post\":156,\"./post/preview\":164,\"react\":\"react\"}],145:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-md-6' },\n _react2.default.createElement(AttachmentPreview, props),\n _react2.default.createElement(\n 'div',\n { className: 'post-attachment' },\n _react2.default.createElement(\n 'a',\n { href: props.attachment.url.index, className: 'attachment-name item-title' },\n props.attachment.filename\n ),\n _react2.default.createElement(AttachmentDetails, props)\n )\n );\n};\n\nexports.AttachmentPreview = AttachmentPreview;\nexports.AttachmentIcon = AttachmentIcon;\nexports.AttachmentThumbnail = AttachmentThumbnail;\nexports.AttachmentDetails = AttachmentDetails;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _ = require('../../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _escapeHtml = require('../../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nvar _fileSize = require('../../../../utils/file-size');\n\nvar _fileSize2 = _interopRequireDefault(_fileSize);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nvar DATE_ABBR = '%(relative)s';\nvar USER_SPAN = '%(user)s';\nvar USER_URL = '%(user)s';\n\nfunction AttachmentPreview(props) {\n if (props.attachment.is_image) {\n return _react2.default.createElement(\n 'div',\n { className: 'post-attachment-preview' },\n _react2.default.createElement(AttachmentThumbnail, props)\n );\n } else {\n return _react2.default.createElement(\n 'div',\n { className: 'post-attachment-preview' },\n _react2.default.createElement(AttachmentIcon, props)\n );\n }\n}\n\nfunction AttachmentIcon(props) {\n return _react2.default.createElement(\n 'a',\n { href: props.attachment.url.index, className: 'material-icon' },\n 'insert_drive_file'\n );\n}\n\nfunction AttachmentThumbnail(props) {\n var url = props.attachment.url.thumb || props.attachment.url.index;\n return _react2.default.createElement('a', {\n className: 'post-thumbnail',\n href: props.attachment.url.index,\n style: { backgroundImage: 'url(\"' + (0, _escapeHtml2.default)(url) + '\")' }\n });\n}\n\nfunction AttachmentDetails(props) {\n var user = null;\n if (props.attachment.url.uploader) {\n user = interpolate(USER_URL, {\n url: (0, _escapeHtml2.default)(props.attachment.url.uploader),\n user: (0, _escapeHtml2.default)(props.attachment.uploader_name)\n }, true);\n } else {\n user = interpolate(USER_SPAN, {\n user: (0, _escapeHtml2.default)(props.attachment.uploader_name)\n }, true);\n }\n\n var date = interpolate(DATE_ABBR, {\n absolute: (0, _escapeHtml2.default)(props.attachment.uploaded_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(props.attachment.uploaded_on.fromNow())\n }, true);\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s.\")), {\n filetype: props.attachment.filetype,\n size: (0, _fileSize2.default)(props.attachment.size),\n uploader: user,\n uploaded_on: date\n }, true);\n\n return _react2.default.createElement('p', {\n className: 'post-attachment-description',\n dangerouslySetInnerHTML: { __html: message }\n });\n}\n\n},{\"../../../..\":291,\"../../../../utils/escape-html\":370,\"../../../../utils/file-size\":371,\"react\":\"react\"}],146:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (!isVisible(props.post)) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'post-attachments' },\n (0, _batch2.default)(props.post.attachments, 2).map(function (row) {\n var key = row.map(function (a) {\n return a ? a.id : 0;\n }).join('_');\n return _react2.default.createElement(Row, { key: key, row: row });\n })\n );\n};\n\nexports.isVisible = isVisible;\nexports.Row = Row;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _batch = require('../../../../utils/batch');\n\nvar _batch2 = _interopRequireDefault(_batch);\n\nvar _attachment = require('./attachment');\n\nvar _attachment2 = _interopRequireDefault(_attachment);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction isVisible(post) {\n return (!post.is_hidden || post.acl.can_see_hidden) && post.attachments;\n}\n\nfunction Row(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'row' },\n props.row.map(function (attachment) {\n return _react2.default.createElement(_attachment2.default, {\n attachment: attachment,\n key: attachment ? attachment.id : 0\n });\n })\n );\n}\n\n},{\"../../../../utils/batch\":367,\"./attachment\":145,\"react\":\"react\"}],147:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (props.post.is_hidden && !props.post.acl.can_see_hidden) {\n return _react2.default.createElement(Hidden, props);\n } else if (props.post.content) {\n return _react2.default.createElement(Default, props);\n } else {\n return _react2.default.createElement(Invalid, props);\n }\n};\n\nexports.Default = Default;\nexports.Hidden = Hidden;\nexports.Invalid = Invalid;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _waypoint = require('../waypoint');\n\nvar _waypoint2 = _interopRequireDefault(_waypoint);\n\nvar _misagoMarkup = require('../../misago-markup');\n\nvar _misagoMarkup2 = _interopRequireDefault(_misagoMarkup);\n\nvar _escapeHtml = require('../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nvar HIDDEN_BY_URL = '%(user)s';\nvar HIDDEN_BY_SPAN = '%(user)s';\nvar HIDDEN_ON = '%(relative)s';\n\nfunction Default(props) {\n return _react2.default.createElement(\n _waypoint2.default,\n { className: 'post-body', post: props.post },\n _react2.default.createElement(_misagoMarkup2.default, { markup: props.post.content })\n );\n}\n\nfunction Hidden(props) {\n var user = null;\n if (props.post.hidden_by) {\n user = interpolate(HIDDEN_BY_URL, {\n url: (0, _escapeHtml2.default)(props.post.url.hidden_by),\n user: (0, _escapeHtml2.default)(props.post.hidden_by_name)\n }, true);\n } else {\n user = interpolate(HIDDEN_BY_SPAN, {\n user: (0, _escapeHtml2.default)(props.post.hidden_by_name)\n }, true);\n }\n\n var date = interpolate(HIDDEN_ON, {\n absolute: (0, _escapeHtml2.default)(props.post.hidden_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(props.post.hidden_on.fromNow())\n }, true);\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"Hidden by %(hidden_by)s %(hidden_on)s.\")), {\n hidden_by: user,\n hidden_on: date\n }, true);\n\n return _react2.default.createElement(\n _waypoint2.default,\n { className: 'post-body post-body-hidden', post: props.post },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"This post is hidden. You cannot see its contents.\")\n ),\n _react2.default.createElement('p', { className: 'text-muted', dangerouslySetInnerHTML: { __html: message } })\n );\n}\n\nfunction Invalid(props) {\n return _react2.default.createElement(\n _waypoint2.default,\n { className: 'post-body post-body-invalid', post: props.post },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"This post's contents cannot be displayed.\")\n ),\n _react2.default.createElement(\n 'p',\n { className: 'text-muted' },\n gettext(\"This error is caused by invalid post content manipulation.\")\n )\n );\n}\n\n},{\"../../../utils/escape-html\":370,\"../../misago-markup\":56,\"../waypoint\":166,\"react\":\"react\"}],148:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.approve = approve;\nexports.protect = protect;\nexports.unprotect = unprotect;\nexports.hide = hide;\nexports.unhide = unhide;\nexports.like = like;\nexports.unlike = unlike;\nexports.patch = patch;\nexports.remove = remove;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _post = require('../../../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction approve(props) {\n _store2.default.dispatch(post.patch(props.post, {\n is_unapproved: false\n }));\n\n var ops = [{ 'op': 'replace', 'path': 'is-unapproved', 'value': false }];\n\n var previousState = {\n is_unapproved: props.post.is_unapproved\n };\n\n patch(props, ops, previousState);\n}\n\nfunction protect(props) {\n _store2.default.dispatch(post.patch(props.post, {\n is_protected: true\n }));\n\n var ops = [{ 'op': 'replace', 'path': 'is-protected', 'value': true }];\n\n var previousState = {\n is_protected: props.post.is_protected\n };\n\n patch(props, ops, previousState);\n}\n\nfunction unprotect(props) {\n _store2.default.dispatch(post.patch(props.post, {\n is_protected: false\n }));\n\n var ops = [{ 'op': 'replace', 'path': 'is-protected', 'value': false }];\n\n var previousState = {\n is_protected: props.post.is_protected\n };\n\n patch(props, ops, previousState);\n}\n\nfunction hide(props) {\n _store2.default.dispatch(post.patch(props.post, {\n is_hidden: true,\n hidden_on: (0, _moment2.default)(),\n hidden_by_name: props.user.username,\n url: Object.assign(props.post.url, {\n hidden_by: props.user.url\n })\n }));\n\n var ops = [{ 'op': 'replace', 'path': 'is-hidden', 'value': true }];\n\n var previousState = {\n is_hidden: props.post.is_hidden,\n hidden_on: props.post.hidden_on,\n hidden_by_name: props.post.hidden_by_name,\n url: props.post.url\n };\n\n patch(props, ops, previousState);\n}\n\nfunction unhide(props) {\n _store2.default.dispatch(post.patch(props.post, {\n is_hidden: false\n }));\n\n var ops = [{ 'op': 'replace', 'path': 'is-hidden', 'value': false }];\n\n var previousState = {\n is_hidden: props.post.is_hidden\n };\n\n patch(props, ops, previousState);\n}\n\nfunction like(props) {\n var lastLikes = props.post.last_likes || [];\n var concatedLikes = [props.user].concat(lastLikes);\n var finalLikes = concatedLikes.length > 3 ? concatedLikes.slice(0, -1) : concatedLikes;\n\n _store2.default.dispatch(post.patch(props.post, {\n is_liked: true,\n likes: props.post.likes + 1,\n last_likes: finalLikes\n }));\n\n var ops = [{ 'op': 'replace', 'path': 'is-liked', 'value': true }];\n\n var previousState = {\n is_liked: props.post.is_liked,\n likes: props.post.likes,\n last_likes: props.post.last_likes\n };\n\n patch(props, ops, previousState);\n}\n\nfunction unlike(props) {\n _store2.default.dispatch(post.patch(props.post, {\n is_liked: false,\n likes: props.post.likes - 1,\n last_likes: props.post.last_likes.filter(function (user) {\n return !user.id || user.id !== props.user.id;\n })\n }));\n\n var ops = [{ 'op': 'replace', 'path': 'is-liked', 'value': false }];\n\n var previousState = {\n is_liked: props.post.is_liked,\n likes: props.post.likes,\n last_likes: props.post.last_likes\n };\n\n patch(props, ops, previousState);\n}\n\nfunction patch(props, ops, previousState) {\n _ajax2.default.patch(props.post.api.index, ops).then(function (newState) {\n _store2.default.dispatch(post.patch(props.post, newState));\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n _store2.default.dispatch(post.patch(props.post, previousState));\n });\n}\n\nfunction remove(props) {\n var confirmed = confirm(gettext(\"Are you sure you want to delete this post? This action is not reversible!\"));\n if (!confirmed) {\n return;\n }\n\n _store2.default.dispatch(post.patch(props.post, {\n isDeleted: true\n }));\n\n _ajax2.default.delete(props.post.api.index).then(function () {\n _snackbar2.default.success(gettext(\"Post has been deleted.\"));\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n _store2.default.dispatch(post.patch(props.post, {\n isDeleted: false\n }));\n });\n}\n\n},{\"../../../../reducers/post\":340,\"../../../../services/ajax\":352,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"moment\":\"moment\"}],149:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Delete = exports.Unhide = exports.Hide = exports.Unprotect = exports.Protect = exports.Split = exports.Move = exports.Approve = exports.PostEdits = exports.Permalink = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'ul',\n { className: 'dropdown-menu dropdown-menu-right stick-to-bottom' },\n _react2.default.createElement(Permalink, props),\n _react2.default.createElement(PostEdits, props),\n _react2.default.createElement(Approve, props),\n _react2.default.createElement(Move, props),\n _react2.default.createElement(Split, props),\n _react2.default.createElement(Protect, props),\n _react2.default.createElement(Unprotect, props),\n _react2.default.createElement(Hide, props),\n _react2.default.createElement(Unhide, props),\n _react2.default.createElement(Delete, props)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _actions = require('./actions');\n\nvar moderation = _interopRequireWildcard(_actions);\n\nvar _move = require('./move');\n\nvar _move2 = _interopRequireDefault(_move);\n\nvar _postChangelog = require('../../../post-changelog');\n\nvar _postChangelog2 = _interopRequireDefault(_postChangelog);\n\nvar _split = require('./split');\n\nvar _split2 = _interopRequireDefault(_split);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar Permalink = exports.Permalink = function (_React$Component) {\n _inherits(Permalink, _React$Component);\n\n function Permalink() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Permalink);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Permalink.__proto__ || Object.getPrototypeOf(Permalink)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n var permaUrl = window.location.protocol + '//';\n permaUrl += window.location.host;\n permaUrl += _this.props.post.url.index;\n\n prompt(gettext(\"Permament link to this post:\"), permaUrl);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Permalink, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'link'\n ),\n gettext(\"Permament link\")\n )\n );\n }\n }]);\n\n return Permalink;\n}(_react2.default.Component);\n\nvar PostEdits = exports.PostEdits = function (_React$Component2) {\n _inherits(PostEdits, _React$Component2);\n\n function PostEdits() {\n var _ref2;\n\n var _temp2, _this2, _ret2;\n\n _classCallCheck(this, PostEdits);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, (_ref2 = PostEdits.__proto__ || Object.getPrototypeOf(PostEdits)).call.apply(_ref2, [this].concat(args))), _this2), _this2.onClick = function () {\n _modal2.default.show(_react2.default.createElement(_postChangelog2.default, { post: _this2.props.post }));\n }, _temp2), _possibleConstructorReturn(_this2, _ret2);\n }\n\n _createClass(PostEdits, [{\n key: 'render',\n value: function render() {\n var isHidden = this.props.post.is_hidden && !this.props.post.acl.can_see_hidden;\n var isUnedited = this.props.post.edits === 0;\n if (isHidden || isUnedited) return null;\n\n var message = ngettext(\"This post was edited %(edits)s time.\", \"This post was edited %(edits)s times.\", this.props.post.edits);\n\n var title = interpolate(message, {\n 'edits': this.props.post.edits\n }, true);\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'edit'\n ),\n gettext(\"Changes history\")\n )\n );\n }\n }]);\n\n return PostEdits;\n}(_react2.default.Component);\n\nvar Approve = exports.Approve = function (_React$Component3) {\n _inherits(Approve, _React$Component3);\n\n function Approve() {\n var _ref3;\n\n var _temp3, _this3, _ret3;\n\n _classCallCheck(this, Approve);\n\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _ret3 = (_temp3 = (_this3 = _possibleConstructorReturn(this, (_ref3 = Approve.__proto__ || Object.getPrototypeOf(Approve)).call.apply(_ref3, [this].concat(args))), _this3), _this3.onClick = function () {\n moderation.approve(_this3.props);\n }, _temp3), _possibleConstructorReturn(_this3, _ret3);\n }\n\n _createClass(Approve, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_approve) return null;\n if (!this.props.post.is_unapproved) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'done'\n ),\n gettext(\"Approve\")\n )\n );\n }\n }]);\n\n return Approve;\n}(_react2.default.Component);\n\nvar Move = exports.Move = function (_React$Component4) {\n _inherits(Move, _React$Component4);\n\n function Move() {\n var _ref4;\n\n var _temp4, _this4, _ret4;\n\n _classCallCheck(this, Move);\n\n for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return _ret4 = (_temp4 = (_this4 = _possibleConstructorReturn(this, (_ref4 = Move.__proto__ || Object.getPrototypeOf(Move)).call.apply(_ref4, [this].concat(args))), _this4), _this4.onClick = function () {\n _modal2.default.show(_react2.default.createElement(_move2.default, _this4.props));\n }, _temp4), _possibleConstructorReturn(_this4, _ret4);\n }\n\n _createClass(Move, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_move) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'arrow_forward'\n ),\n gettext(\"Move\")\n )\n );\n }\n }]);\n\n return Move;\n}(_react2.default.Component);\n\nvar Split = exports.Split = function (_React$Component5) {\n _inherits(Split, _React$Component5);\n\n function Split() {\n var _ref5;\n\n var _temp5, _this5, _ret5;\n\n _classCallCheck(this, Split);\n\n for (var _len5 = arguments.length, args = Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {\n args[_key5] = arguments[_key5];\n }\n\n return _ret5 = (_temp5 = (_this5 = _possibleConstructorReturn(this, (_ref5 = Split.__proto__ || Object.getPrototypeOf(Split)).call.apply(_ref5, [this].concat(args))), _this5), _this5.onClick = function () {\n _modal2.default.show(_react2.default.createElement(_split2.default, _this5.props));\n }, _temp5), _possibleConstructorReturn(_this5, _ret5);\n }\n\n _createClass(Split, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_move) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'call_split'\n ),\n gettext(\"Split\")\n )\n );\n }\n }]);\n\n return Split;\n}(_react2.default.Component);\n\nvar Protect = exports.Protect = function (_React$Component6) {\n _inherits(Protect, _React$Component6);\n\n function Protect() {\n var _ref6;\n\n var _temp6, _this6, _ret6;\n\n _classCallCheck(this, Protect);\n\n for (var _len6 = arguments.length, args = Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n args[_key6] = arguments[_key6];\n }\n\n return _ret6 = (_temp6 = (_this6 = _possibleConstructorReturn(this, (_ref6 = Protect.__proto__ || Object.getPrototypeOf(Protect)).call.apply(_ref6, [this].concat(args))), _this6), _this6.onClick = function () {\n moderation.protect(_this6.props);\n }, _temp6), _possibleConstructorReturn(_this6, _ret6);\n }\n\n _createClass(Protect, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_protect) return null;\n if (this.props.post.is_protected) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_outline'\n ),\n gettext(\"Protect\")\n )\n );\n }\n }]);\n\n return Protect;\n}(_react2.default.Component);\n\nvar Unprotect = exports.Unprotect = function (_React$Component7) {\n _inherits(Unprotect, _React$Component7);\n\n function Unprotect() {\n var _ref7;\n\n var _temp7, _this7, _ret7;\n\n _classCallCheck(this, Unprotect);\n\n for (var _len7 = arguments.length, args = Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {\n args[_key7] = arguments[_key7];\n }\n\n return _ret7 = (_temp7 = (_this7 = _possibleConstructorReturn(this, (_ref7 = Unprotect.__proto__ || Object.getPrototypeOf(Unprotect)).call.apply(_ref7, [this].concat(args))), _this7), _this7.onClick = function () {\n moderation.unprotect(_this7.props);\n }, _temp7), _possibleConstructorReturn(_this7, _ret7);\n }\n\n _createClass(Unprotect, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_protect) return null;\n if (!this.props.post.is_protected) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_open'\n ),\n gettext(\"Remove protection\")\n )\n );\n }\n }]);\n\n return Unprotect;\n}(_react2.default.Component);\n\nvar Hide = exports.Hide = function (_React$Component8) {\n _inherits(Hide, _React$Component8);\n\n function Hide() {\n var _ref8;\n\n var _temp8, _this8, _ret8;\n\n _classCallCheck(this, Hide);\n\n for (var _len8 = arguments.length, args = Array(_len8), _key8 = 0; _key8 < _len8; _key8++) {\n args[_key8] = arguments[_key8];\n }\n\n return _ret8 = (_temp8 = (_this8 = _possibleConstructorReturn(this, (_ref8 = Hide.__proto__ || Object.getPrototypeOf(Hide)).call.apply(_ref8, [this].concat(args))), _this8), _this8.onClick = function () {\n moderation.hide(_this8.props);\n }, _temp8), _possibleConstructorReturn(_this8, _ret8);\n }\n\n _createClass(Hide, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_hide) return null;\n if (this.props.post.is_hidden) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility_off'\n ),\n gettext(\"Hide\")\n )\n );\n }\n }]);\n\n return Hide;\n}(_react2.default.Component);\n\nvar Unhide = exports.Unhide = function (_React$Component9) {\n _inherits(Unhide, _React$Component9);\n\n function Unhide() {\n var _ref9;\n\n var _temp9, _this9, _ret9;\n\n _classCallCheck(this, Unhide);\n\n for (var _len9 = arguments.length, args = Array(_len9), _key9 = 0; _key9 < _len9; _key9++) {\n args[_key9] = arguments[_key9];\n }\n\n return _ret9 = (_temp9 = (_this9 = _possibleConstructorReturn(this, (_ref9 = Unhide.__proto__ || Object.getPrototypeOf(Unhide)).call.apply(_ref9, [this].concat(args))), _this9), _this9.onClick = function () {\n moderation.unhide(_this9.props);\n }, _temp9), _possibleConstructorReturn(_this9, _ret9);\n }\n\n _createClass(Unhide, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_unhide) return null;\n if (!this.props.post.is_hidden) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility'\n ),\n gettext(\"Unhide\")\n )\n );\n }\n }]);\n\n return Unhide;\n}(_react2.default.Component);\n\nvar Delete = exports.Delete = function (_React$Component10) {\n _inherits(Delete, _React$Component10);\n\n function Delete() {\n var _ref10;\n\n var _temp10, _this10, _ret10;\n\n _classCallCheck(this, Delete);\n\n for (var _len10 = arguments.length, args = Array(_len10), _key10 = 0; _key10 < _len10; _key10++) {\n args[_key10] = arguments[_key10];\n }\n\n return _ret10 = (_temp10 = (_this10 = _possibleConstructorReturn(this, (_ref10 = Delete.__proto__ || Object.getPrototypeOf(Delete)).call.apply(_ref10, [this].concat(args))), _this10), _this10.onClick = function () {\n moderation.remove(_this10.props);\n }, _temp10), _possibleConstructorReturn(_this10, _ret10);\n }\n\n _createClass(Delete, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_delete) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'clear'\n ),\n gettext(\"Delete\")\n )\n );\n }\n }]);\n\n return Delete;\n}(_react2.default.Component);\n\n},{\"../../../../services/modal\":358,\"../../../post-changelog\":112,\"./actions\":148,\"./move\":151,\"./split\":152,\"react\":\"react\"}],150:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'pull-right dropdown' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-expanded': 'true',\n 'aria-haspopup': 'true',\n className: 'btn btn-default btn-icon dropdown-toggle',\n 'data-toggle': 'dropdown',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'expand_more'\n )\n ),\n _react2.default.createElement(_dropdown2.default, props)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _dropdown = require('./dropdown');\n\nvar _dropdown2 = _interopRequireDefault(_dropdown);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./dropdown\":149,\"react\":\"react\"}],151:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ModalHeader = ModalHeader;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _post = require('../../../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onUrlChange = function (event) {\n _this.changeValue('url', event.target.value);\n };\n\n _this.state = {\n isLoading: false,\n\n url: '',\n\n validators: {\n url: []\n },\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n if (!this.state.url.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter link to the other thread.\"));\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.thread.api.posts.move, {\n new_thread: this.state.url,\n posts: [this.props.post.id]\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n _store2.default.dispatch(post.patch(this.props.post, {\n isDeleted: true\n }));\n\n _modal2.default.hide();\n\n _snackbar2.default.success(gettext(\"Selected post was moved to the other thread.\"));\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog', role: 'document' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(ModalHeader, null),\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n {\n 'for': 'id_url',\n label: gettext(\"Link to thread you want to move post to\")\n },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n id: 'id_url',\n onChange: this.onUrlChange,\n value: this.state.url\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-primary', loading: this.state.isLoading },\n gettext(\"Move post\")\n )\n )\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\nfunction ModalHeader(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Move post\")\n )\n );\n}\n\n},{\"../../../../reducers/post\":340,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"../../../button\":5,\"../../../form\":52,\"../../../form-group\":51,\"react\":\"react\"}],152:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ModerationForm = exports.PostingConfig = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _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; }; /* jshint ignore:start */\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nexports.default = function (props) {\n return _react2.default.createElement(PostingConfig, _extends({}, props, { Form: ModerationForm }));\n};\n\nexports.Loader = Loader;\nexports.Error = Error;\nexports.Modal = Modal;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _categorySelect = require('../../../category-select');\n\nvar _categorySelect2 = _interopRequireDefault(_categorySelect);\n\nvar _modalLoader = require('../../../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _select = require('../../../select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nvar _post = require('../../../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _validators = require('../../../../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar PostingConfig = exports.PostingConfig = function (_React$Component) {\n _inherits(PostingConfig, _React$Component);\n\n function PostingConfig(props) {\n _classCallCheck(this, PostingConfig);\n\n var _this = _possibleConstructorReturn(this, (PostingConfig.__proto__ || Object.getPrototypeOf(PostingConfig)).call(this, props));\n\n _this.state = {\n isLoaded: false,\n isError: false,\n\n categories: []\n };\n return _this;\n }\n\n _createClass(PostingConfig, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(misago.get('THREAD_EDITOR_API')).then(function (data) {\n // hydrate categories, extract posting options\n var categories = data.map(function (item) {\n return Object.assign(item, {\n disabled: item.post === false,\n label: item.name,\n value: item.id,\n post: item.post\n });\n });\n\n _this2.setState({\n isLoaded: true,\n categories: categories\n });\n }, function (rejection) {\n _this2.setState({\n isError: rejection.detail\n });\n });\n }\n }, {\n key: 'render',\n value: function render() {\n if (this.state.isError) {\n return _react2.default.createElement(Error, { message: this.state.isError });\n } else if (this.state.isLoaded) {\n return _react2.default.createElement(ModerationForm, _extends({}, this.props, { categories: this.state.categories }));\n } else {\n return _react2.default.createElement(Loader, null);\n }\n }\n }]);\n\n return PostingConfig;\n}(_react2.default.Component);\n\nvar ModerationForm = exports.ModerationForm = function (_Form) {\n _inherits(ModerationForm, _Form);\n\n function ModerationForm(props) {\n _classCallCheck(this, ModerationForm);\n\n var _this3 = _possibleConstructorReturn(this, (ModerationForm.__proto__ || Object.getPrototypeOf(ModerationForm)).call(this, props));\n\n _this3.onCategoryChange = function (ev) {\n var categoryId = ev.target.value;\n var newState = {\n category: categoryId\n };\n\n if (_this3.acl[categoryId].can_pin_threads < newState.weight) {\n newState.weight = 0;\n }\n\n if (!_this3.acl[categoryId].can_hide_threads) {\n newState.is_hidden = 0;\n }\n\n if (!_this3.acl[categoryId].can_close_threads) {\n newState.is_closed = false;\n }\n\n _this3.setState(newState);\n };\n\n _this3.state = {\n isLoading: false,\n\n title: '',\n category: null,\n categories: props.categories,\n weight: 0,\n is_hidden: 0,\n is_closed: false,\n\n validators: {\n title: [validators.required()]\n },\n\n errors: {}\n };\n\n _this3.isHiddenChoices = [{\n 'value': 0,\n 'icon': 'visibility',\n 'label': gettext(\"No\")\n }, {\n 'value': 1,\n 'icon': 'visibility_off',\n 'label': gettext(\"Yes\")\n }];\n\n _this3.isClosedChoices = [{\n 'value': false,\n 'icon': 'lock_outline',\n 'label': gettext(\"No\")\n }, {\n 'value': true,\n 'icon': 'lock',\n 'label': gettext(\"Yes\")\n }];\n\n _this3.acl = {};\n _this3.props.categories.forEach(function (category) {\n if (category.post) {\n if (!_this3.state.category) {\n _this3.state.category = category.id;\n }\n\n _this3.acl[category.id] = {\n can_pin_threads: category.post.pin,\n can_close_threads: category.post.close,\n can_hide_threads: category.post.hide\n };\n }\n });\n return _this3;\n }\n\n _createClass(ModerationForm, [{\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n this.setState({\n errors: this.validate()\n });\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.thread.api.posts.split, {\n title: this.state.title,\n category: this.state.category,\n weight: this.state.weight,\n is_hidden: this.state.is_hidden,\n is_closed: this.state.is_closed,\n posts: [this.props.post.id]\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n _store2.default.dispatch(post.patch(this.props.post, {\n isDeleted: true\n }));\n\n _modal2.default.hide();\n\n _snackbar2.default.success(gettext(\"Selected post was split into new thread.\"));\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n this.setState({\n 'errors': Object.assign({}, this.state.errors, rejection)\n });\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n } else if (rejection.status === 403 && Array.isArray(rejection)) {\n _modal2.default.show(_react2.default.createElement(ErrorsModal, { errors: rejection }));\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'getWeightChoices',\n value: function getWeightChoices() {\n var choices = [{\n 'value': 0,\n 'icon': 'remove',\n 'label': gettext(\"Not pinned\")\n }, {\n 'value': 1,\n 'icon': 'bookmark_border',\n 'label': gettext(\"Pinned locally\")\n }];\n\n if (this.acl[this.state.category].can_pin_threads == 2) {\n choices.push({\n 'value': 2,\n 'icon': 'bookmark',\n 'label': gettext(\"Pinned globally\")\n });\n }\n\n return choices;\n }\n }, {\n key: 'renderWeightField',\n value: function renderWeightField() {\n if (this.acl[this.state.category].can_pin_threads) {\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Thread weight\"),\n 'for': 'id_weight',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8' },\n _react2.default.createElement(_select2.default, { id: 'id_weight',\n onChange: this.bindInput('weight'),\n value: this.state.weight,\n choices: this.getWeightChoices() })\n );\n } else {\n return null;\n }\n }\n }, {\n key: 'renderHiddenField',\n value: function renderHiddenField() {\n if (this.acl[this.state.category].can_hide_threads) {\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Hide thread\"),\n 'for': 'id_is_hidden',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8' },\n _react2.default.createElement(_select2.default, { id: 'id_is_closed',\n onChange: this.bindInput('is_hidden'),\n value: this.state.is_hidden,\n choices: this.isHiddenChoices })\n );\n } else {\n return null;\n }\n }\n }, {\n key: 'renderClosedField',\n value: function renderClosedField() {\n if (this.acl[this.state.category].can_close_threads) {\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Close thread\"),\n 'for': 'id_is_closed',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8' },\n _react2.default.createElement(_select2.default, { id: 'id_is_closed',\n onChange: this.bindInput('is_closed'),\n value: this.state.is_closed,\n choices: this.isClosedChoices })\n );\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n Modal,\n { className: 'modal-dialog' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Thread title\"),\n 'for': 'id_title',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8',\n validation: this.state.errors.title },\n _react2.default.createElement('input', { id: 'id_title',\n className: 'form-control',\n type: 'text',\n onChange: this.bindInput('title'),\n value: this.state.title })\n ),\n _react2.default.createElement('div', { className: 'clearfix' }),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Category\"),\n 'for': 'id_category',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8',\n validation: this.state.errors.category },\n _react2.default.createElement(_categorySelect2.default, { id: 'id_category',\n onChange: this.onCategoryChange,\n value: this.state.category,\n choices: this.state.categories })\n ),\n _react2.default.createElement('div', { className: 'clearfix' }),\n this.renderWeightField(),\n this.renderHiddenField(),\n this.renderClosedField()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Split post\")\n )\n )\n )\n );\n }\n }]);\n\n return ModerationForm;\n}(_form2.default);\n\nfunction Loader() {\n return _react2.default.createElement(\n Modal,\n { className: 'modal-dialog' },\n _react2.default.createElement(_modalLoader2.default, null)\n );\n}\n\nfunction Error(props) {\n return _react2.default.createElement(\n Modal,\n { className: 'modal-dialog modal-message' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"You can't move this post at the moment.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n props.message\n )\n )\n );\n}\n\nfunction Modal(props) {\n return _react2.default.createElement(\n 'div',\n { className: props.className, role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Split post into new thread\")\n )\n ),\n props.children\n )\n );\n}\n\n},{\"../../../../reducers/post\":340,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"../../../../utils/validators\":380,\"../../../button\":5,\"../../../category-select\":18,\"../../../form\":52,\"../../../form-group\":51,\"../../../modal-loader\":57,\"../../../select\":203,\"react\":\"react\"}],153:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.FlagHidden = FlagHidden;\nexports.FlagUnapproved = FlagUnapproved;\nexports.FlagProtected = FlagProtected;\nexports.isVisible = isVisible;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction FlagHidden(props) {\n if (!(isVisible(props.post) && props.post.is_hidden)) {\n return null;\n }\n\n return _react2.default.createElement(\n \"div\",\n { className: \"post-status-message post-status-hidden\" },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"visibility_off\"\n ),\n _react2.default.createElement(\n \"p\",\n null,\n gettext(\"This post is hidden. Only users with permission may see its contents.\")\n )\n );\n} /* jshint ignore:start */\nfunction FlagUnapproved(props) {\n if (!(isVisible(props.post) && props.post.is_unapproved)) {\n return null;\n }\n\n return _react2.default.createElement(\n \"div\",\n { className: \"post-status-message post-status-unapproved\" },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"remove_circle_outline\"\n ),\n _react2.default.createElement(\n \"p\",\n null,\n gettext(\"This post is unapproved. Only users with permission to approve posts and its author may see its contents.\")\n )\n );\n}\n\nfunction FlagProtected(props) {\n if (!(isVisible(props.post) && props.post.is_protected)) {\n return null;\n }\n\n return _react2.default.createElement(\n \"div\",\n { className: \"post-status-message post-status-protected visible-xs-block\" },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"lock_outline\"\n ),\n _react2.default.createElement(\n \"p\",\n null,\n gettext(\"This post is protected. Only moderators may change it.\")\n )\n );\n}\n\nfunction isVisible(post) {\n return !post.is_hidden || post.acl.can_see_hidden;\n}\n\n},{\"react\":\"react\"}],154:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Edit = exports.Reply = exports.LikesCompact = exports.Likes = exports.Like = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _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; }; /* jshint ignore:start */\n\n\nexports.default = function (props) {\n if (!isVisible(props.post)) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'post-footer' },\n _react2.default.createElement(Like, props),\n _react2.default.createElement(Likes, _extends({\n lastLikes: props.post.last_likes,\n likes: props.post.likes\n }, props)),\n _react2.default.createElement(LikesCompact, _extends({\n likes: props.post.likes\n }, props)),\n _react2.default.createElement(Reply, props),\n _react2.default.createElement(Edit, props)\n );\n};\n\nexports.isVisible = isVisible;\nexports.getLikesMessage = getLikesMessage;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _actions = require('./controls/actions');\n\nvar actions = _interopRequireWildcard(_actions);\n\nvar _postLikes = require('../../post-likes');\n\nvar _postLikes2 = _interopRequireDefault(_postLikes);\n\nvar _modal = require('../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _posting = require('../../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nfunction isVisible(post) {\n return (!post.is_hidden || post.acl.can_see_hidden) && (post.acl.can_reply || post.acl.can_edit || post.acl.can_see_likes && (post.last_likes || []).length || post.acl.can_like);\n}\n\nvar Like = exports.Like = function (_React$Component) {\n _inherits(Like, _React$Component);\n\n function Like() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Like);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Like.__proto__ || Object.getPrototypeOf(Like)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n if (_this.props.post.is_liked) {\n actions.unlike(_this.props);\n } else {\n actions.like(_this.props);\n }\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Like, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_like) return null;\n\n var className = 'btn btn-default btn-sm pull-left';\n if (this.props.post.is_liked) {\n className = 'btn btn-success btn-sm pull-left';\n }\n\n return _react2.default.createElement(\n 'button',\n {\n className: className,\n disabled: this.props.post.isBusy,\n onClick: this.onClick,\n type: 'button'\n },\n this.props.post.is_liked ? gettext(\"Liked\") : gettext(\"Like\")\n );\n }\n }]);\n\n return Like;\n}(_react2.default.Component);\n\nvar Likes = exports.Likes = function (_React$Component2) {\n _inherits(Likes, _React$Component2);\n\n function Likes() {\n var _ref2;\n\n var _temp2, _this2, _ret2;\n\n _classCallCheck(this, Likes);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, (_ref2 = Likes.__proto__ || Object.getPrototypeOf(Likes)).call.apply(_ref2, [this].concat(args))), _this2), _this2.onClick = function () {\n _modal2.default.show(_react2.default.createElement(_postLikes2.default, {\n post: _this2.props.post\n }));\n }, _temp2), _possibleConstructorReturn(_this2, _ret2);\n }\n\n _createClass(Likes, [{\n key: 'render',\n value: function render() {\n var hasLikes = (this.props.post.last_likes || []).length > 0;\n if (!this.props.post.acl.can_see_likes || !hasLikes) return null;\n\n if (this.props.post.acl.can_see_likes === 2) {\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link btn-sm pull-left hidden-xs',\n onClick: this.onClick,\n type: 'button'\n },\n getLikesMessage(this.props.likes, this.props.lastLikes)\n );\n }\n\n return _react2.default.createElement(\n 'p',\n { className: 'pull-left hidden-xs' },\n getLikesMessage(this.props.likes, this.props.lastLikes)\n );\n }\n }]);\n\n return Likes;\n}(_react2.default.Component);\n\nvar LikesCompact = exports.LikesCompact = function (_Likes) {\n _inherits(LikesCompact, _Likes);\n\n function LikesCompact() {\n _classCallCheck(this, LikesCompact);\n\n return _possibleConstructorReturn(this, (LikesCompact.__proto__ || Object.getPrototypeOf(LikesCompact)).apply(this, arguments));\n }\n\n _createClass(LikesCompact, [{\n key: 'render',\n value: function render() {\n var hasLikes = (this.props.post.last_likes || []).length > 0;\n if (!this.props.post.acl.can_see_likes || !hasLikes) return null;\n\n if (this.props.post.acl.can_see_likes === 2) {\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link btn-sm likes-compact pull-left visible-xs-block',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'favorite'\n ),\n this.props.likes\n );\n }\n\n return _react2.default.createElement(\n 'p',\n { className: 'likes-compact pull-left visible-xs-block' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'favorite'\n ),\n this.props.likes\n );\n }\n }]);\n\n return LikesCompact;\n}(Likes);\n\nfunction getLikesMessage(likes, users) {\n var usernames = users.slice(0, 3).map(function (u) {\n return u.username;\n });\n\n if (usernames.length == 1) {\n return interpolate(gettext(\"%(user)s likes this.\"), {\n user: usernames[0]\n }, true);\n }\n\n var hiddenLikes = likes - usernames.length;\n\n var otherUsers = usernames.slice(0, -1).join(', ');\n var lastUser = usernames.slice(-1)[0];\n\n var usernamesList = interpolate(gettext(\"%(users)s and %(last_user)s\"), {\n users: otherUsers,\n last_user: lastUser\n }, true);\n\n if (hiddenLikes === 0) {\n return interpolate(gettext(\"%(users)s like this.\"), {\n users: usernamesList\n }, true);\n }\n\n var message = ngettext(\"%(users)s and %(likes)s other user like this.\", \"%(users)s and %(likes)s other users like this.\", hiddenLikes);\n\n return interpolate(message, {\n users: usernames.join(', '),\n likes: hiddenLikes\n }, true);\n}\n\nvar Reply = exports.Reply = function (_React$Component3) {\n _inherits(Reply, _React$Component3);\n\n function Reply() {\n var _ref3;\n\n var _temp3, _this4, _ret3;\n\n _classCallCheck(this, Reply);\n\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _ret3 = (_temp3 = (_this4 = _possibleConstructorReturn(this, (_ref3 = Reply.__proto__ || Object.getPrototypeOf(Reply)).call.apply(_ref3, [this].concat(args))), _this4), _this4.onClick = function () {\n _posting2.default.open({\n mode: 'REPLY',\n\n config: _this4.props.thread.api.editor,\n submit: _this4.props.thread.api.posts.index,\n\n context: {\n reply: _this4.props.post.id\n }\n });\n }, _temp3), _possibleConstructorReturn(_this4, _ret3);\n }\n\n _createClass(Reply, [{\n key: 'render',\n value: function render() {\n if (this.props.post.acl.can_reply) {\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-primary btn-sm pull-right',\n type: 'button',\n onClick: this.onClick\n },\n gettext(\"Reply\")\n );\n } else {\n return null;\n }\n }\n }]);\n\n return Reply;\n}(_react2.default.Component);\n\nvar Edit = exports.Edit = function (_React$Component4) {\n _inherits(Edit, _React$Component4);\n\n function Edit() {\n var _ref4;\n\n var _temp4, _this5, _ret4;\n\n _classCallCheck(this, Edit);\n\n for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return _ret4 = (_temp4 = (_this5 = _possibleConstructorReturn(this, (_ref4 = Edit.__proto__ || Object.getPrototypeOf(Edit)).call.apply(_ref4, [this].concat(args))), _this5), _this5.onClick = function () {\n _posting2.default.open({\n mode: 'EDIT',\n\n config: _this5.props.post.api.editor,\n submit: _this5.props.post.api.index\n });\n }, _temp4), _possibleConstructorReturn(_this5, _ret4);\n }\n\n _createClass(Edit, [{\n key: 'render',\n value: function render() {\n if (this.props.post.acl.can_edit) {\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sm pull-right',\n type: 'button',\n onClick: this.onClick\n },\n gettext(\"Edit\")\n );\n } else {\n return null;\n }\n }\n }]);\n\n return Edit;\n}(_react2.default.Component);\n\n},{\"../../../services/modal\":358,\"../../../services/posting\":362,\"../../post-likes\":125,\"./controls/actions\":148,\"react\":\"react\"}],155:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.PostEditsCompacts = exports.PostEdits = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'post-heading' },\n _react2.default.createElement(UnreadLabel, props),\n _react2.default.createElement(UnreadCompact, props),\n _react2.default.createElement(PostedOn, props),\n _react2.default.createElement(PostedOnCompact, props),\n _react2.default.createElement(PostEdits, props),\n _react2.default.createElement(PostEditsCompacts, props),\n _react2.default.createElement(ProtectedLabel, props),\n _react2.default.createElement(_select2.default, props),\n _react2.default.createElement(_controls2.default, props)\n );\n};\n\nexports.UnreadLabel = UnreadLabel;\nexports.UnreadCompact = UnreadCompact;\nexports.PostedOn = PostedOn;\nexports.PostedOnCompact = PostedOnCompact;\nexports.ProtectedLabel = ProtectedLabel;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _controls = require('./controls');\n\nvar _controls2 = _interopRequireDefault(_controls);\n\nvar _select = require('./select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nvar _userStatus = require('../../user-status');\n\nvar _postChangelog = require('../../post-changelog');\n\nvar _postChangelog2 = _interopRequireDefault(_postChangelog);\n\nvar _modal = require('../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nfunction UnreadLabel(props) {\n if (props.post.is_read) return null;\n\n return _react2.default.createElement(\n 'span',\n { className: 'label label-unread hidden-xs' },\n gettext(\"New post\")\n );\n}\n\nfunction UnreadCompact(props) {\n if (props.post.is_read) return null;\n\n return _react2.default.createElement(\n 'span',\n { className: 'label label-unread visible-xs-inline-block' },\n gettext(\"New\")\n );\n}\n\nfunction PostedOn(props) {\n var tooltip = interpolate(gettext(\"posted %(posted_on)s\"), {\n 'posted_on': props.post.posted_on.format('LL, LT')\n }, true);\n\n return _react2.default.createElement(\n 'a',\n {\n href: props.post.url.index,\n className: 'btn btn-link posted-on hidden-xs',\n title: tooltip\n },\n props.post.posted_on.fromNow()\n );\n}\n\nfunction PostedOnCompact(props) {\n return _react2.default.createElement(\n 'a',\n {\n href: props.post.url.index,\n className: 'btn btn-link posted-on visible-xs-inline-block'\n },\n props.post.posted_on.fromNow(true)\n );\n}\n\nvar PostEdits = exports.PostEdits = function (_React$Component) {\n _inherits(PostEdits, _React$Component);\n\n function PostEdits() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, PostEdits);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = PostEdits.__proto__ || Object.getPrototypeOf(PostEdits)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _modal2.default.show(_react2.default.createElement(_postChangelog2.default, { post: _this.props.post }));\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(PostEdits, [{\n key: 'render',\n value: function render() {\n var isHidden = this.props.post.is_hidden && !this.props.post.acl.can_see_hidden;\n var isUnedited = this.props.post.edits === 0;\n if (isHidden || isUnedited) return null;\n\n var tooltip = ngettext(\"This post was edited %(edits)s time.\", \"This post was edited %(edits)s times.\", this.props.post.edits);\n\n var title = interpolate(tooltip, {\n 'edits': this.props.post.edits\n }, true);\n\n var label = ngettext(\"edited %(edits)s time\", \"edited %(edits)s times\", this.props.post.edits);\n\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link btn-see-edits hidden-xs',\n onClick: this.onClick,\n title: title,\n type: 'button'\n },\n interpolate(label, {\n 'edits': this.props.post.edits\n }, true)\n );\n }\n }]);\n\n return PostEdits;\n}(_react2.default.Component);\n\nvar PostEditsCompacts = exports.PostEditsCompacts = function (_PostEdits) {\n _inherits(PostEditsCompacts, _PostEdits);\n\n function PostEditsCompacts() {\n _classCallCheck(this, PostEditsCompacts);\n\n return _possibleConstructorReturn(this, (PostEditsCompacts.__proto__ || Object.getPrototypeOf(PostEditsCompacts)).apply(this, arguments));\n }\n\n _createClass(PostEditsCompacts, [{\n key: 'render',\n value: function render() {\n var isHidden = this.props.post.is_hidden && !this.props.post.acl.can_see_hidden;\n var isUnedited = this.props.post.edits === 0;\n if (isHidden || isUnedited) return null;\n\n var label = ngettext(\"%(edits)s edit\", \"%(edits)s edits\", this.props.post.edits);\n\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link btn-see-edits visible-xs-inline-block',\n onClick: this.onClick,\n type: 'button'\n },\n interpolate(label, {\n 'edits': this.props.post.edits\n }, true)\n );\n }\n }]);\n\n return PostEditsCompacts;\n}(PostEdits);\n\nfunction ProtectedLabel(props) {\n var postAuthor = props.post.poster && props.post.poster.id === props.user.id;\n var hasAcl = props.post.acl.can_protect;\n var isVisible = props.user.id && props.post.is_protected && (postAuthor || hasAcl);\n\n if (!isVisible) {\n return null;\n }\n\n return _react2.default.createElement(\n 'span',\n {\n className: 'label label-protected hidden-xs',\n title: gettext(\"This post is protected and may not be edited.\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_outline'\n ),\n gettext(\"protected\")\n );\n}\n\n},{\"../../../services/modal\":358,\"../../post-changelog\":112,\"../../user-status\":263,\"./controls\":150,\"./select\":165,\"react\":\"react\"}],156:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n var className = 'post';\n if (props.post.isDeleted) {\n className = 'hide';\n } else if (props.post.is_hidden && !props.post.acl.can_see_hidden) {\n className = 'post post-hidden';\n }\n\n if (props.post.poster && props.post.poster.rank.css_class) {\n className += ' post-' + props.post.poster.rank.css_class;\n }\n\n if (!props.post.is_read) {\n className += ' post-new';\n }\n\n return _react2.default.createElement(\n 'li',\n { id: 'post-' + props.post.id, className: className },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-post' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(_postSide2.default, props),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-md-9' },\n _react2.default.createElement(_header2.default, props),\n _react2.default.createElement(_flags.FlagUnapproved, props),\n _react2.default.createElement(_flags.FlagProtected, props),\n _react2.default.createElement(_flags.FlagHidden, props),\n _react2.default.createElement(_body2.default, props),\n _react2.default.createElement(_attachments2.default, props),\n _react2.default.createElement(_footer2.default, props)\n )\n )\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _attachments = require('./attachments');\n\nvar _attachments2 = _interopRequireDefault(_attachments);\n\nvar _body = require('./body');\n\nvar _body2 = _interopRequireDefault(_body);\n\nvar _flags = require('./flags');\n\nvar _footer = require('./footer');\n\nvar _footer2 = _interopRequireDefault(_footer);\n\nvar _header = require('./header');\n\nvar _header2 = _interopRequireDefault(_header);\n\nvar _postSide = require('./post-side');\n\nvar _postSide2 = _interopRequireDefault(_postSide);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./attachments\":146,\"./body\":147,\"./flags\":153,\"./footer\":154,\"./header\":155,\"./post-side\":159,\"react\":\"react\"}],157:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-md-3 post-side post-side-anonymous' },\n _react2.default.createElement(Select, {\n post: post,\n thread: thread\n }),\n _react2.default.createElement(Controls, {\n post: post,\n thread: thread\n }),\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'span',\n null,\n _react2.default.createElement(_avatar2.default, {\n className: 'poster-avatar',\n size: 100\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'span',\n { className: 'media-heading item-title' },\n post.poster_name\n ),\n _react2.default.createElement(\n 'span',\n { className: 'user-title user-title-anonymous' },\n gettext(\"Removed user\")\n )\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _userStatus = require('../../../user-status');\n\nvar _userStatus2 = _interopRequireDefault(_userStatus);\n\nvar _userPostcount = require('./user-postcount');\n\nvar _userPostcount2 = _interopRequireDefault(_userPostcount);\n\nvar _userTitle = require('./user-title');\n\nvar _userTitle2 = _interopRequireDefault(_userTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../avatar\":3,\"../../../user-status\":263,\"./user-postcount\":161,\"./user-title\":163,\"react\":\"react\"}],158:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var title = _ref.title,\n rank = _ref.rank;\n\n return rank.is_tab || !!title || !!rank.title;\n};\n\n},{}],159:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (props.post.poster) {\n return _react2.default.createElement(_registered2.default, props);\n }\n\n return _react2.default.createElement(_anonymous2.default, props);\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _anonymous = require('./anonymous');\n\nvar _anonymous2 = _interopRequireDefault(_anonymous);\n\nvar _registered = require('./registered');\n\nvar _registered2 = _interopRequireDefault(_registered);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./anonymous\":157,\"./registered\":160,\"react\":\"react\"}],160:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post,\n thread = _ref.thread;\n var poster = post.poster;\n\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-md-3 post-side post-side-registered' },\n _react2.default.createElement(_select2.default, {\n post: post,\n thread: thread\n }),\n _react2.default.createElement(_controls2.default, {\n post: post,\n thread: thread\n }),\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'a',\n { href: poster.url },\n _react2.default.createElement(_avatar2.default, {\n className: 'poster-avatar',\n size: 100,\n user: poster\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'div',\n { className: 'media-heading' },\n _react2.default.createElement(\n 'a',\n {\n className: 'item-title',\n href: poster.url\n },\n poster.username\n ),\n _react2.default.createElement(\n _userStatus2.default,\n { status: poster.status },\n _react2.default.createElement(_userStatus.StatusIcon, { status: poster.status })\n )\n ),\n _react2.default.createElement(_userTitle2.default, {\n rank: poster.rank,\n title: poster.title\n }),\n _react2.default.createElement(_userStatus4.default, { poster: poster }),\n _react2.default.createElement(_userPostcount2.default, { poster: poster })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _controls = require('../controls');\n\nvar _controls2 = _interopRequireDefault(_controls);\n\nvar _select = require('../select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nvar _userStatus = require('../../../user-status');\n\nvar _userStatus2 = _interopRequireDefault(_userStatus);\n\nvar _userPostcount = require('./user-postcount');\n\nvar _userPostcount2 = _interopRequireDefault(_userPostcount);\n\nvar _userStatus3 = require('./user-status');\n\nvar _userStatus4 = _interopRequireDefault(_userStatus3);\n\nvar _userTitle = require('./user-title');\n\nvar _userTitle2 = _interopRequireDefault(_userTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../avatar\":3,\"../../../user-status\":263,\"../controls\":150,\"../select\":165,\"./user-postcount\":161,\"./user-status\":162,\"./user-title\":163,\"react\":\"react\"}],161:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var poster = _ref.poster;\n\n var message = ngettext(\"%(posts)s post\", \"%(posts)s posts\", poster.posts);\n\n var className = 'user-postcount';\n if ((0, _hasVisibleTitle2.default)(poster)) {\n className += ' hidden-xs hidden-sm';\n }\n\n return _react2.default.createElement(\n 'span',\n { className: className },\n interpolate(message, {\n 'posts': poster.posts\n }, true)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _hasVisibleTitle = require('./has-visible-title');\n\nvar _hasVisibleTitle2 = _interopRequireDefault(_hasVisibleTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./has-visible-title\":158,\"react\":\"react\"}],162:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var poster = _ref.poster;\n\n var className = 'hidden-xs';\n if ((0, _hasVisibleTitle2.default)(poster)) {\n className += ' hidden-sm';\n }\n\n return _react2.default.createElement(\n 'span',\n { className: className },\n _react2.default.createElement(\n _userStatus2.default,\n { status: poster.status },\n _react2.default.createElement(_userStatus.StatusLabel, {\n status: poster.status,\n user: poster\n })\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _userStatus = require('../../../user-status');\n\nvar _userStatus2 = _interopRequireDefault(_userStatus);\n\nvar _hasVisibleTitle = require('./has-visible-title');\n\nvar _hasVisibleTitle2 = _interopRequireDefault(_hasVisibleTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../user-status\":263,\"./has-visible-title\":158,\"react\":\"react\"}],163:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var rank = _ref.rank,\n title = _ref.title;\n\n var userTitle = title || rank.title;\n if (!userTitle && rank.is_tab) {\n userTitle = rank.name;\n }\n\n if (!userTitle) return null;\n\n var className = 'user-title';\n if (rank.css_class) {\n className += ' user-title-' + rank.css_class;\n }\n\n if (rank.is_tab) {\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'a',\n { href: rank.url },\n userTitle\n )\n );\n }\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n userTitle\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],164:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'li',\n { className: 'post' },\n _react2.default.createElement(\n 'div',\n { className: 'post-border' },\n _react2.default.createElement(\n 'div',\n { className: 'post-avatar' },\n _react2.default.createElement(_avatar2.default, { size: '100' })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'post-body' },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-post' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading post-heading' },\n _react2.default.createElement(\n 'span',\n { className: 'ui-preview-text', style: { width: random.int(30, 100) + \"px\" } },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'ui-preview-text', style: { width: random.int(30, 100) + \"px\" } },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'article',\n { className: 'misago-markup' },\n _react2.default.createElement(\n 'p',\n { className: 'ui-preview-text', style: { width: random.int(50, 100) + \"%\" } },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'p',\n { className: 'ui-preview-text', style: { width: random.int(50, 100) + \"%\" } },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'p',\n { className: 'ui-preview-text', style: { width: random.int(50, 100) + \"%\" } },\n '\\xA0'\n )\n )\n )\n )\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _random = require('../../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../utils/random\":375,\"../../avatar\":3,\"react\":\"react\"}],165:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.isVisible = isVisible;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _posts = require('../../../reducers/posts');\n\nvar posts = _interopRequireWildcard(_posts);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n if (_this.props.post.isSelected) {\n _store2.default.dispatch(posts.deselect(_this.props.post));\n } else {\n _store2.default.dispatch(posts.select(_this.props.post));\n }\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n if (!(this.props.thread.acl.can_merge_posts || isVisible(this.props.post.acl))) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'pull-right hidden-xs' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-icon',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n this.props.post.isSelected ? 'check_box' : 'check_box_outline_blank'\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction isVisible(acl) {\n return acl.can_approve || acl.can_hide || acl.can_protect || acl.can_unhide || acl.can_delete || acl.can_move;\n}\n\n},{\"../../../reducers/posts\":341,\"../../../services/store\":364,\"react\":\"react\"}],166:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _post = require('../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _thread = require('../../reducers/thread');\n\nvar thread = _interopRequireWildcard(_thread);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n\n /*\n Super naive and de-facto placeholder implementation for reading posts on scroll\n */\n value: function componentDidMount() {\n var _this2 = this;\n\n if (this.props.post.is_read) return; // don't register read tracker\n\n $(this.documentNode).waypoint({\n handler: function handler(direction) {\n if (direction !== 'down' || _this2.props.post.is_read) return;\n\n // after 1500ms run flag post as read logic\n window.setTimeout(function () {\n // check if post's bottom edge is still in viewport\n var boundingClientRect = _this2.documentNode.getBoundingClientRect();\n var offsetBottom = boundingClientRect.height + boundingClientRect.top;\n var clientHeight = document.documentElement.clientHeight;\n\n if (offsetBottom < 5) return; // scrolled past the post\n if (offsetBottom > clientHeight) return; // scrolled back up\n\n // mark post as read\n _store2.default.dispatch(post.patch(_this2.props.post, {\n is_read: true\n }));\n\n // call API to let it know we have unread post\n _ajax2.default.post(_this2.props.post.api.read).then(function (data) {\n _store2.default.dispatch(thread.update(_this2.props.thread, {\n is_read: data.thread_is_read\n }));\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n });\n }, 1000);\n },\n offset: 'bottom-in-view'\n });\n }\n }, {\n key: 'render',\n value: function render() {\n var _this3 = this;\n\n return _react2.default.createElement(\n 'div',\n { className: this.props.className, ref: function ref(node) {\n _this3.documentNode = node;\n } },\n this.props.children\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../reducers/post\":340,\"../../reducers/thread\":347,\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../../services/store\":364,\"react\":\"react\"}],167:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _panelLoader = require('../panel-loader');\n\nvar _panelLoader2 = _interopRequireDefault(_panelLoader);\n\nvar _panelMessage = require('../panel-message');\n\nvar _panelMessage2 = _interopRequireDefault(_panelMessage);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _polls = require('../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nvar _pageTitle = require('../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.update = function (ban) {\n if (ban.expires_on) {\n ban.expires_on = (0, _moment2.default)(ban.expires_on);\n }\n\n _this.setState({\n isLoaded: true,\n error: null,\n\n ban: ban\n });\n };\n\n _this.error = function (error) {\n _this.setState({\n isLoaded: true,\n error: error.detail,\n ban: null\n });\n };\n\n if (_index2.default.has('PROFILE_BAN')) {\n _this.initWithPreloadedData(_index2.default.pop('PROFILE_BAN'));\n } else {\n _this.initWithoutPreloadedData();\n }\n\n _this.startPolling(props.profile.api.ban);\n return _this;\n }\n\n _createClass(_class, [{\n key: 'initWithPreloadedData',\n value: function initWithPreloadedData(ban) {\n if (ban.expires_on) {\n ban.expires_on = (0, _moment2.default)(ban.expires_on);\n }\n\n this.state = {\n isLoaded: true,\n ban: ban\n };\n }\n }, {\n key: 'initWithoutPreloadedData',\n value: function initWithoutPreloadedData() {\n this.state = {\n isLoaded: false\n };\n }\n }, {\n key: 'startPolling',\n value: function startPolling(api) {\n _polls2.default.start({\n poll: 'ban-details',\n url: api,\n frequency: 90 * 1000,\n update: this.update,\n error: this.error\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'componentDidMount',\n\n /* jshint ignore:end */\n\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: gettext(\"Ban details\"),\n parent: this.props.profile.username\n });\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n _polls2.default.stop('ban-details');\n }\n }, {\n key: 'getUserMessage',\n value: function getUserMessage() {\n if (this.state.ban.user_message) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'panel-body ban-message ban-user-message' },\n _react2.default.createElement(\n 'h4',\n null,\n gettext(\"User-shown ban message\")\n ),\n _react2.default.createElement('div', { className: 'lead', dangerouslySetInnerHTML: {\n __html: this.state.ban.user_message.html\n } })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getStaffMessage',\n value: function getStaffMessage() {\n if (this.state.ban.staff_message) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'panel-body ban-message ban-staff-message' },\n _react2.default.createElement(\n 'h4',\n null,\n gettext(\"Team-shown ban message\")\n ),\n _react2.default.createElement('div', { className: 'lead', dangerouslySetInnerHTML: {\n __html: this.state.ban.staff_message.html\n } })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getExpirationMessage',\n value: function getExpirationMessage() {\n if (this.state.ban.expires_on) {\n if (this.state.ban.expires_on.isAfter((0, _moment2.default)())) {\n /* jshint ignore:start */\n var _title = interpolate(gettext(\"This ban expires on %(expires_on)s.\"), {\n 'expires_on': this.state.ban.expires_on.format('LL, LT')\n }, true);\n\n var message = interpolate(gettext(\"This ban expires %(expires_on)s.\"), {\n 'expires_on': this.state.ban.expires_on.fromNow()\n }, true);\n\n return _react2.default.createElement(\n 'abbr',\n { title: _title },\n message\n );\n /* jshint ignore:end */\n } else {\n return gettext(\"This ban has expired.\");\n }\n } else {\n return interpolate(gettext(\"%(username)s's ban is permanent.\"), {\n 'username': this.props.profile.username\n }, true);\n }\n }\n }, {\n key: 'getPanelBody',\n value: function getPanelBody() {\n if (this.state.ban) {\n if (Object.keys(this.state.ban).length) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n this.getUserMessage(),\n this.getStaffMessage(),\n _react2.default.createElement(\n 'div',\n { className: 'panel-body ban-expires' },\n _react2.default.createElement(\n 'h4',\n null,\n gettext(\"Ban expiration\")\n ),\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.getExpirationMessage()\n )\n )\n );\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_panelMessage2.default, { message: gettext(\"No ban is active at the moment.\") })\n );\n /* jshint ignore:end */\n }\n } else if (this.state.error) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_panelMessage2.default, { icon: 'error_outline',\n message: this.state.error })\n );\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_panelLoader2.default, null)\n );\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'profile-ban-details' },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Ban details\")\n )\n ),\n this.getPanelBody()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../index\":291,\"../../services/page-title\":360,\"../../services/polls\":361,\"../panel-loader\":86,\"../panel-message\":87,\"moment\":\"moment\",\"react\":\"react\"}],168:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var isAuthenticated = _ref.isAuthenticated,\n profile = _ref.profile;\n\n var message = null;\n if (isAuthenticated) {\n message = gettext(\"You are not sharing any details with others.\");\n } else {\n message = interpolate(gettext(\"%(username)s is not sharing any details with others.\"), {\n 'username': profile.username\n }, true);\n }\n\n return _react2.default.createElement(\n \"div\",\n { className: \"panel panel-default\" },\n _react2.default.createElement(\n \"div\",\n { className: \"panel-body text-center lead\" },\n message\n )\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],169:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var html = _ref.html,\n text = _ref.text,\n url = _ref.url;\n\n if (html) {\n return _react2.default.createElement(\"div\", {\n className: \"form-control-static col-md-9\",\n dangerouslySetInnerHTML: { __html: html }\n });\n }\n\n return _react2.default.createElement(\n \"div\",\n { className: \"form-control-static col-md-9\" },\n _react2.default.createElement(SafeValue, {\n text: text,\n url: url\n })\n );\n};\n\nexports.SafeValue = SafeValue;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction SafeValue(_ref2) {\n var text = _ref2.text,\n url = _ref2.url;\n\n if (url) {\n return _react2.default.createElement(\n \"p\",\n null,\n _react2.default.createElement(\n \"a\",\n { href: url, target: \"_blank\", rel: \"nofollow\" },\n text || url\n )\n );\n }\n\n if (text) {\n return _react2.default.createElement(\n \"p\",\n null,\n text\n );\n }\n\n return null;\n}\n\n},{\"react\":\"react\"}],170:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'form-group' },\n _react2.default.createElement(\n 'strong',\n { className: 'control-label col-md-3' },\n props.name,\n ':'\n ),\n _react2.default.createElement(_fieldValue2.default, props)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _fieldValue = require('./field-value');\n\nvar _fieldValue2 = _interopRequireDefault(_fieldValue);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./field-value\":169,\"react\":\"react\"}],171:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var api = _ref.api,\n display = _ref.display,\n onCancel = _ref.onCancel,\n onSuccess = _ref.onSuccess;\n\n if (!display) return null;\n\n return _react2.default.createElement(_editDetails2.default, {\n api: api,\n onCancel: onCancel,\n onSuccess: onSuccess\n });\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _editDetails = require('../../edit-details');\n\nvar _editDetails2 = _interopRequireDefault(_editDetails);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../edit-details\":29,\"react\":\"react\"}],172:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var fields = _ref.fields,\n name = _ref.name;\n\n return _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-profile-details-group' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n name\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'div',\n { className: 'form-horizontal' },\n fields.map(function (_ref2) {\n var fieldname = _ref2.fieldname,\n html = _ref2.html,\n name = _ref2.name,\n text = _ref2.text,\n url = _ref2.url;\n\n return _react2.default.createElement(_field2.default, {\n key: fieldname,\n name: name,\n html: html,\n text: text,\n url: url\n });\n })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _field = require('./field');\n\nvar _field2 = _interopRequireDefault(_field);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./field\":170,\"react\":\"react\"}],173:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var display = _ref.display,\n groups = _ref.groups,\n isAuthenticated = _ref.isAuthenticated,\n loading = _ref.loading,\n profile = _ref.profile;\n\n if (!display) return null;\n\n if (loading) {\n return _react2.default.createElement(_loader2.default, null);\n }\n\n if (!groups.length) {\n return _react2.default.createElement(_emptyMessage2.default, {\n isAuthenticated: isAuthenticated,\n profile: profile\n });\n }\n\n return _react2.default.createElement(\n 'div',\n null,\n groups.map(function (group, i) {\n return _react2.default.createElement(_group2.default, {\n fields: group.fields,\n key: i,\n name: group.name\n });\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _emptyMessage = require('./empty-message');\n\nvar _emptyMessage2 = _interopRequireDefault(_emptyMessage);\n\nvar _group = require('./group');\n\nvar _group2 = _interopRequireDefault(_group);\n\nvar _loader = require('../../loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../loader\":54,\"./empty-message\":168,\"./group\":172,\"react\":\"react\"}],174:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var onEdit = _ref.onEdit,\n showEditButton = _ref.showEditButton;\n\n return _react2.default.createElement(\n \"div\",\n null,\n _react2.default.createElement(\n \"nav\",\n { className: \"toolbar\" },\n _react2.default.createElement(\n \"div\",\n { className: \"row\" },\n _react2.default.createElement(\n \"div\",\n { className: \"col-sm-8 col-md-10\" },\n _react2.default.createElement(\n \"h3\",\n { className: \"md-margin-top-no\" },\n gettext(\"Details\")\n )\n ),\n _react2.default.createElement(EditButton, {\n onEdit: onEdit,\n showEditButton: showEditButton\n })\n )\n )\n );\n};\n\nexports.EditButton = EditButton;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction EditButton(_ref2) {\n var onEdit = _ref2.onEdit,\n showEditButton = _ref2.showEditButton;\n\n if (!showEditButton) return null;\n\n return _react2.default.createElement(\n \"div\",\n { className: \"col-sm-4 col-md-2\" },\n _react2.default.createElement(\n \"button\",\n {\n className: \"btn btn-default btn-outline btn-block\",\n onClick: onEdit,\n type: \"button\"\n },\n gettext(\"Edit\")\n )\n );\n}\n\n},{\"react\":\"react\"}],175:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _groupsList = require('./groups-list');\n\nvar _groupsList2 = _interopRequireDefault(_groupsList);\n\nvar _header = require('./header');\n\nvar _header2 = _interopRequireDefault(_header);\n\nvar _profileDetails = require('../../../data/profile-details');\n\nvar _profileDetails2 = _interopRequireDefault(_profileDetails);\n\nvar _profileDetails3 = require('../../../reducers/profile-details');\n\nvar _pageTitle = require('../../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onCancel = function () {\n _this.setState({ editing: false });\n };\n\n _this.onEdit = function () {\n _this.setState({ editing: true });\n };\n\n _this.onSuccess = function (newDetails) {\n var _this$props = _this.props,\n dispatch = _this$props.dispatch,\n isAuthenticated = _this$props.isAuthenticated,\n profile = _this$props.profile;\n\n\n var message = null;\n if (isAuthenticated) {\n message = gettext(\"Your details have been updated.\");\n } else {\n message = interpolate(gettext(\"%(username)s's details have been updated.\"), {\n 'username': profile.username\n }, true);\n }\n\n _snackbar2.default.info(message);\n dispatch((0, _profileDetails3.load)(newDetails));\n _this.setState({ editing: false });\n };\n\n _this.state = {\n editing: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: gettext(\"Details\"),\n parent: this.props.profile.username\n });\n }\n }, {\n key: 'render',\n value: function render() {\n var _props = this.props,\n dispatch = _props.dispatch,\n isAuthenticated = _props.isAuthenticated,\n profile = _props.profile,\n profileDetails = _props.profileDetails;\n\n var loading = profileDetails.id !== profile.id;\n\n return _react2.default.createElement(\n _profileDetails2.default,\n {\n data: profileDetails,\n dispatch: dispatch,\n user: profile\n },\n _react2.default.createElement(\n 'div',\n { className: 'profile-details' },\n _react2.default.createElement(_header2.default, {\n onEdit: this.onEdit,\n showEditButton: !!profileDetails.edit && !this.state.editing\n }),\n _react2.default.createElement(_groupsList2.default, {\n display: !this.state.editing,\n groups: profileDetails.groups,\n isAuthenticated: isAuthenticated,\n loading: loading,\n profile: profile\n }),\n _react2.default.createElement(_form2.default, {\n api: profile.api.edit_details,\n dispatch: dispatch,\n display: this.state.editing,\n onCancel: this.onCancel,\n onSuccess: this.onSuccess\n })\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../data/profile-details\":290,\"../../../reducers/profile-details\":342,\"../../../services/page-title\":360,\"../../../services/snackbar\":363,\"./form\":171,\"./groups-list\":173,\"./header\":174,\"react\":\"react\"}],176:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.Threads = Threads;\nexports.Posts = Posts;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _route = require('./route');\n\nvar _route2 = _interopRequireDefault(_route);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction Threads(props) {\n var emptyMessage = null;\n if (props.user.id === props.profile.id) {\n emptyMessage = gettext(\"You have no started threads.\");\n } else {\n emptyMessage = interpolate(gettext(\"%(username)s started no threads.\"), {\n 'username': props.profile.username\n }, true);\n }\n\n var header = null;\n if (!props.posts.isLoaded) {\n header = gettext('Loading...');\n } else if (props.profile.id === props.user.id) {\n var message = ngettext(\"You have started %(threads)s thread.\", \"You have started %(threads)s threads.\", props.posts.count);\n\n header = interpolate(message, {\n 'threads': props.posts.count\n }, true);\n } else {\n var _message = ngettext(\"%(username)s has started %(threads)s thread.\", \"%(username)s has started %(threads)s threads.\", props.posts.count);\n\n header = interpolate(_message, {\n 'username': props.profile.username,\n 'threads': props.posts.count\n }, true);\n }\n\n return _react2.default.createElement(_route2.default, _extends({\n api: props.profile.api.threads,\n emptyMessage: emptyMessage,\n header: header,\n title: gettext(\"Threads\")\n }, props));\n}\n\nfunction Posts(props) {\n var emptyMessage = null;\n if (props.user.id === props.profile.id) {\n emptyMessage = gettext(\"You have posted no messages.\");\n } else {\n emptyMessage = interpolate(gettext(\"%(username)s posted no messages.\"), {\n 'username': props.profile.username\n }, true);\n }\n\n var header = null;\n if (!props.posts.isLoaded) {\n header = gettext('Loading...');\n } else if (props.profile.id === props.user.id) {\n var message = ngettext(\"You have posted %(posts)s message.\", \"You have posted %(posts)s messages.\", props.posts.count);\n\n header = interpolate(message, {\n 'posts': props.posts.count\n }, true);\n } else {\n var _message2 = ngettext(\"%(username)s has posted %(posts)s message.\", \"%(username)s has posted %(posts)s messages.\", props.posts.count);\n\n header = interpolate(_message2, {\n 'username': props.profile.username,\n 'posts': props.posts.count\n }, true);\n }\n\n return _react2.default.createElement(_route2.default, _extends({\n api: props.profile.api.posts,\n emptyMessage: emptyMessage,\n header: header,\n title: gettext(\"Posts\")\n }, props));\n}\n\n},{\"./route\":177,\"react\":\"react\"}],177:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.Feed = Feed;\nexports.LoadMoreButton = LoadMoreButton;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _postFeed = require('../../post-feed');\n\nvar _postFeed2 = _interopRequireDefault(_postFeed);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _posts = require('../../../reducers/posts');\n\nvar posts = _interopRequireWildcard(_posts);\n\nvar _pageTitle = require('../../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.loadMore = function () {\n _this.setState({\n isLoading: true\n });\n\n _this.loadItems(_this.props.posts.page + 1);\n };\n\n _this.state = {\n isLoading: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'loadItems',\n value: function loadItems() {\n var _this2 = this;\n\n var page = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n\n _ajax2.default.get(this.props.api, {\n page: page || 1\n }).then(function (data) {\n if (page === 1) {\n _store2.default.dispatch(posts.load(data));\n } else {\n _store2.default.dispatch(posts.append(data));\n }\n\n _this2.setState({\n isLoading: false\n });\n }, function (rejection) {\n _this2.setState({\n isLoading: false\n });\n\n _snackbar2.default.apiError(rejection);\n });\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: this.props.title,\n parent: this.props.profile.username\n });\n\n this.loadItems();\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'profile-feed' },\n _react2.default.createElement(\n 'nav',\n { className: 'toolbar' },\n _react2.default.createElement(\n 'h3',\n { className: 'toolbar-left' },\n this.props.header\n )\n ),\n _react2.default.createElement(Feed, _extends({\n isLoading: this.state.isLoading,\n loadMore: this.loadMore\n }, this.props))\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction Feed(props) {\n if (!props.posts.count) {\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n props.emptyMessage\n );\n }\n\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_postFeed2.default, {\n isReady: props.posts.isLoaded,\n posts: props.posts.results,\n poster: props.profile\n }),\n _react2.default.createElement(LoadMoreButton, {\n isLoading: props.isLoading,\n loadMore: props.loadMore,\n more: props.posts.more\n })\n );\n}\n\nfunction LoadMoreButton(props) {\n if (!props.more) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'pager-more' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn btn-default btn-outline',\n loading: props.isLoading,\n onClick: props.loadMore\n },\n interpolate(gettext(\"Show more (%(more)s)\"), {\n 'more': props.more\n }, true)\n )\n );\n}\n\n},{\"../../../reducers/posts\":341,\"../../../services/ajax\":352,\"../../../services/page-title\":360,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../button\":5,\"../../post-feed\":115,\"react\":\"react\"}],178:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _profile = require('../../reducers/profile');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.action = function () {\n _this.setState({\n isLoading: true\n });\n\n if (_this.props.profile.is_followed) {\n _store2.default.dispatch((0, _profile.patch)({\n is_followed: false,\n followers: _this.props.profile.followers - 1\n }));\n } else {\n _store2.default.dispatch((0, _profile.patch)({\n is_followed: true,\n followers: _this.props.profile.followers + 1\n }));\n }\n\n _ajax2.default.post(_this.props.profile.api.follow).then(function (data) {\n _this.setState({\n isLoading: false\n });\n\n _store2.default.dispatch((0, _profile.patch)(data));\n }, function (rejection) {\n _this.setState({\n isLoading: false\n });\n _snackbar2.default.apiError(rejection);\n });\n };\n\n _this.state = {\n isLoading: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'getClassName',\n value: function getClassName() {\n if (this.props.profile.is_followed) {\n return this.props.className + ' btn-default btn-following';\n } else {\n return this.props.className + ' btn-default btn-follow';\n }\n }\n }, {\n key: 'getIcon',\n value: function getIcon() {\n if (this.props.profile.is_followed) {\n return 'favorite';\n } else {\n return 'favorite_border';\n }\n }\n }, {\n key: 'getLabel',\n value: function getLabel() {\n if (this.props.profile.is_followed) {\n return gettext(\"Following\");\n } else {\n return gettext(\"Follow\");\n }\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n _button2.default,\n { className: this.getClassName(),\n disabled: this.state.isLoading,\n onClick: this.action },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n this.getIcon()\n ),\n this.getLabel()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../reducers/profile\":343,\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../../services/store\":364,\"../button\":5,\"react\":\"react\"}],179:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _quickSearch = require('../quick-search');\n\nvar _quickSearch2 = _interopRequireDefault(_quickSearch);\n\nvar _usersList = require('../users-list');\n\nvar _usersList2 = _interopRequireDefault(_usersList);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _users = require('../../reducers/users');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _pageTitle = require('../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.loadMore = function () {\n _this.setState({\n isBusy: true\n });\n\n _this.loadUsers(_this.state.page + 1, _this.state.search);\n };\n\n _this.search = function (ev) {\n _this.setState({\n isLoaded: false,\n isBusy: true,\n\n search: ev.target.value,\n\n count: 0,\n more: 0,\n\n page: 1,\n pages: 1\n });\n\n _this.loadUsers(1, ev.target.value);\n };\n\n _this.setSpecialProps();\n\n if (_index2.default.has(_this.PRELOADED_DATA_KEY)) {\n _this.initWithPreloadedData(_index2.default.pop(_this.PRELOADED_DATA_KEY));\n } else {\n _this.initWithoutPreloadedData();\n }\n return _this;\n }\n\n _createClass(_class, [{\n key: 'setSpecialProps',\n value: function setSpecialProps() {\n this.PRELOADED_DATA_KEY = 'PROFILE_FOLLOWERS';\n this.TITLE = gettext('Followers');\n this.API_FILTER = 'followers';\n }\n }, {\n key: 'initWithPreloadedData',\n value: function initWithPreloadedData(data) {\n this.state = {\n isLoaded: true,\n isBusy: false,\n\n search: '',\n\n count: data.count,\n more: data.more,\n\n page: data.page,\n pages: data.pages\n };\n\n _store2.default.dispatch((0, _users.hydrate)(data.results));\n }\n }, {\n key: 'initWithoutPreloadedData',\n value: function initWithoutPreloadedData() {\n this.state = {\n isLoaded: false,\n isBusy: false,\n\n search: '',\n\n count: 0,\n more: 0,\n\n page: 1,\n pages: 1\n };\n\n this.loadUsers();\n }\n }, {\n key: 'loadUsers',\n value: function loadUsers() {\n var _this2 = this;\n\n var page = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n var search = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n var apiUrl = this.props.profile.api[this.API_FILTER];\n\n _ajax2.default.get(apiUrl, {\n search: search,\n page: page || 1\n }, 'user-' + this.API_FILTER).then(function (data) {\n if (page === 1) {\n _store2.default.dispatch((0, _users.hydrate)(data.results));\n } else {\n _store2.default.dispatch((0, _users.append)(data.results));\n }\n\n _this2.setState({\n isLoaded: true,\n isBusy: false,\n\n count: data.count,\n more: data.more,\n\n page: data.page,\n pages: data.pages\n });\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n });\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: this.TITLE,\n parent: this.props.profile.username\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getLabel',\n\n /* jshint ignore:end */\n\n value: function getLabel() {\n if (!this.state.isLoaded) {\n return gettext('Loading...');\n } else if (this.state.search) {\n var message = ngettext(\"Found %(users)s user.\", \"Found %(users)s users.\", this.state.count);\n\n return interpolate(message, {\n 'users': this.state.count\n }, true);\n } else if (this.props.profile.id === this.props.user.id) {\n var _message = ngettext(\"You have %(users)s follower.\", \"You have %(users)s followers.\", this.state.count);\n\n return interpolate(_message, {\n 'users': this.state.count\n }, true);\n } else {\n var _message2 = ngettext(\"%(username)s has %(users)s follower.\", \"%(username)s has %(users)s followers.\", this.state.count);\n\n return interpolate(_message2, {\n 'username': this.props.profile.username,\n 'users': this.state.count\n }, true);\n }\n }\n }, {\n key: 'getEmptyMessage',\n value: function getEmptyMessage() {\n if (this.state.search) {\n return gettext(\"Search returned no users matching specified criteria.\");\n } else if (this.props.user.id === this.props.profile.id) {\n return gettext(\"You have no followers.\");\n } else {\n return interpolate(gettext(\"%(username)s has no followers.\"), {\n 'username': this.props.profile.username\n }, true);\n }\n }\n }, {\n key: 'getMoreButton',\n value: function getMoreButton() {\n if (!this.state.more) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'pager-more' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn btn-default btn-outline',\n loading: this.state.isBusy,\n onClick: this.loadMore\n },\n interpolate(gettext(\"Show more (%(more)s)\"), {\n 'more': this.state.more\n }, true)\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getListBody',\n value: function getListBody() {\n if (this.state.isLoaded && this.state.count === 0) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.getEmptyMessage()\n );\n /* jshint ignore:end */\n }\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_usersList2.default, {\n cols: 3,\n isReady: this.state.isLoaded,\n users: this.props.users\n }),\n this.getMoreButton()\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n return 'profile-' + this.API_FILTER;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName() },\n _react2.default.createElement(\n 'nav',\n { className: 'toolbar' },\n _react2.default.createElement(\n 'h3',\n { className: 'toolbar-left' },\n this.getLabel()\n ),\n _react2.default.createElement(_quickSearch2.default, { className: 'toolbar-right',\n value: this.state.search,\n onChange: this.search,\n placeholder: gettext(\"Search users...\") })\n ),\n this.getListBody()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../index\":291,\"../../reducers/users\":351,\"../../services/ajax\":352,\"../../services/page-title\":360,\"../../services/snackbar\":363,\"../../services/store\":364,\"../button\":5,\"../quick-search\":190,\"../users-list\":273,\"react\":\"react\"}],180:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _followers = require('./followers');\n\nvar _followers2 = _interopRequireDefault(_followers);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\nvar _class = function (_Followers) {\n _inherits(_class, _Followers);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'setSpecialProps',\n value: function setSpecialProps() {\n this.PRELOADED_DATA_KEY = 'PROFILE_FOLLOWS';\n this.TITLE = gettext('Follows');\n this.API_FILTER = 'follows';\n }\n }, {\n key: 'getLabel',\n value: function getLabel() {\n if (!this.state.isLoaded) {\n return gettext('Loading...');\n } else if (this.state.search) {\n var message = ngettext(\"Found %(users)s user.\", \"Found %(users)s users.\", this.state.count);\n\n return interpolate(message, {\n 'users': this.state.count\n }, true);\n } else if (this.props.profile.id === this.props.user.id) {\n var _message = ngettext(\"You are following %(users)s user.\", \"You are following %(users)s users.\", this.state.count);\n\n return interpolate(_message, {\n 'users': this.state.count\n }, true);\n } else {\n var _message2 = ngettext(\"%(username)s is following %(users)s user.\", \"%(username)s is following %(users)s users.\", this.state.count);\n\n return interpolate(_message2, {\n 'username': this.props.profile.username,\n 'users': this.state.count\n }, true);\n }\n }\n }, {\n key: 'getEmptyMessage',\n value: function getEmptyMessage() {\n if (this.state.search) {\n return gettext(\"Search returned no users matching specified criteria.\");\n } else if (this.props.user.id === this.props.profile.id) {\n return gettext(\"You are not following any users.\");\n } else {\n return interpolate(gettext(\"%(username)s is not following any users.\"), {\n 'username': this.props.profile.username\n }, true);\n }\n }\n }]);\n\n return _class;\n}(_followers2.default);\n\nexports.default = _class;\n\n},{\"./followers\":179,\"react\":\"react\"}],181:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.IsDisabledMessage = IsDisabledMessage;\nexports.getColStyle = getColStyle;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _dropdownToggle = require('../dropdown-toggle');\n\nvar _dropdownToggle2 = _interopRequireDefault(_dropdownToggle);\n\nvar _followButton = require('./follow-button');\n\nvar _followButton2 = _interopRequireDefault(_followButton);\n\nvar _messageButton = require('./message-button');\n\nvar _messageButton2 = _interopRequireDefault(_messageButton);\n\nvar _nav = require('./moderation/nav');\n\nvar _nav2 = _interopRequireDefault(_nav);\n\nvar _navs = require('./navs');\n\nvar _userStatus = require('../user-status');\n\nvar _userStatus2 = _interopRequireDefault(_userStatus);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getUserStatus',\n value: function getUserStatus() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'user-status-display' },\n _react2.default.createElement(\n _userStatus2.default,\n {\n user: this.props.profile,\n status: this.props.profile.status\n },\n _react2.default.createElement(_userStatus.StatusIcon, {\n user: this.props.profile,\n status: this.props.profile.status\n }),\n _react2.default.createElement(_userStatus.StatusLabel, {\n user: this.props.profile,\n status: this.props.profile.status,\n className: 'status-label'\n })\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getUserRank',\n value: function getUserRank() {\n if (this.props.profile.rank.is_tab) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'user-rank' },\n _react2.default.createElement(\n 'a',\n { href: this.props.profile.rank.url, className: 'item-title' },\n this.props.profile.rank.name\n )\n );\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'user-rank' },\n _react2.default.createElement(\n 'span',\n { className: 'item-title' },\n this.props.profile.rank.name\n )\n );\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'getUserTitle',\n value: function getUserTitle() {\n if (this.props.profile.title) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'user-title' },\n this.props.profile.title\n );\n /* jshint ignore:end */\n } else if (this.props.profile.rank.title) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'user-title' },\n this.props.profile.rank.title\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getJoinedOn',\n value: function getJoinedOn() {\n /* jshint ignore:start */\n var title = interpolate(gettext(\"Joined on %(joined_on)s\"), {\n 'joined_on': this.props.profile.joined_on.format('LL, LT')\n }, true);\n\n var age = interpolate(gettext(\"Joined %(joined_on)s\"), {\n 'joined_on': this.props.profile.joined_on.fromNow()\n }, true);\n\n return _react2.default.createElement(\n 'li',\n { className: 'user-joined-on' },\n _react2.default.createElement(\n 'abbr',\n { title: title },\n age\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getEmail',\n value: function getEmail() {\n if (this.props.profile.email) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'user-email' },\n _react2.default.createElement(\n 'a',\n { href: 'mailto:' + this.props.profile.email, className: 'item-title' },\n this.props.profile.email\n )\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getFollowButton',\n value: function getFollowButton() {\n if (this.props.profile.acl.can_follow) {\n /* jshint ignore:start */\n return _react2.default.createElement(_followButton2.default, {\n className: 'btn btn-block btn-outline',\n profile: this.props.profile\n });\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getModerationButton',\n value: function getModerationButton() {\n if (this.props.profile.acl.can_moderate) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'btn-group btn-group-justified' },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-moderate btn-outline dropdown-toggle',\n type: 'button',\n 'data-toggle': 'dropdown',\n 'aria-haspopup': 'true',\n 'aria-expanded': 'false'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'tonality'\n ),\n gettext(\"Moderation\")\n ),\n _react2.default.createElement(_nav2.default, { profile: this.props.profile })\n )\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n var canFollow = this.props.profile.acl.can_follow;\n var canModerate = this.props.profile.acl.can_moderate;\n\n var isProfileOwner = this.props.user.id === this.props.profile.id;\n var canMessage = !isProfileOwner && this.props.user.acl.can_start_private_threads;\n\n var cols = 0;\n if (canFollow) cols += 1;\n if (canModerate) cols += 1;\n if (canMessage) cols += 1;\n\n var colsWidth = cols ? 2 * cols + 1 : 0;\n\n var headerClassName = 'page-header';\n if (this.props.profile.rank.css_class) {\n headerClassName += ' page-header-rank-' + this.props.profile.rank.css_class;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'page-header-bg' },\n _react2.default.createElement(\n 'div',\n { className: headerClassName },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(IsDisabledMessage, {\n isActive: this.props.profile.is_active\n }),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-9 col-md-offset-3' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: \"col-sm-\" + (12 - colsWidth) },\n _react2.default.createElement(_avatar2.default, {\n className: 'user-avatar user-avatar-sm',\n user: this.props.profile,\n size: '100',\n size2x: '200'\n }),\n _react2.default.createElement(\n 'h1',\n null,\n this.props.profile.username\n )\n ),\n !!cols && _react2.default.createElement(\n 'div',\n { className: \"col-sm-\" + colsWidth },\n _react2.default.createElement(\n 'div',\n { className: 'row xs-margin-top sm-margin-top' },\n !!canMessage && _react2.default.createElement(\n 'div',\n { className: getColStyle(cols, 0) },\n _react2.default.createElement(_messageButton2.default, {\n className: 'btn btn-default btn-block btn-outline',\n profile: this.props.profile,\n user: this.props.user\n })\n ),\n !!canFollow && _react2.default.createElement(\n 'div',\n { className: getColStyle(cols, 1) },\n this.getFollowButton()\n ),\n !!canModerate && _react2.default.createElement(\n 'div',\n { className: getColStyle(cols, 2) },\n this.getModerationButton()\n )\n )\n )\n )\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'header-stats' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-9 col-md-offset-3' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-inline' },\n this.getUserStatus(),\n this.getUserRank(),\n this.getUserTitle(),\n this.getJoinedOn(),\n this.getEmail()\n )\n )\n )\n )\n ),\n _react2.default.createElement(_navs.CompactNav, {\n baseUrl: this.props.baseUrl,\n pages: this.props.pages,\n profile: this.props.profile\n })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\n/* jshint ignore:start */\n\n\nexports.default = _class;\nfunction IsDisabledMessage(props) {\n if (props.isActive !== false) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'alert alert-danger' },\n _react2.default.createElement(\n 'p',\n null,\n gettext(\"This user's account has been disabled by administrator.\")\n )\n );\n}\n\nfunction getColStyle(cols, col) {\n var colStyle = \"\";\n\n if (cols == 1) {\n colStyle = \"col-xs-12\";\n }\n\n if (cols == 2) {\n colStyle = \"col-xs-6 col-sm-6\";\n }\n\n if (cols == 3) {\n if (col == 2) {\n colStyle = \"col-xs-12 col-sm-4 xs-margin-top\";\n } else {\n colStyle += \"col-xs-6 col-sm-4\";\n }\n }\n\n return colStyle;\n}\n/* jshint ignore:end */\n\n},{\"../avatar\":3,\"../dropdown-toggle\":24,\"../user-status\":263,\"./follow-button\":178,\"./message-button\":182,\"./moderation/nav\":186,\"./navs\":187,\"react\":\"react\"}],182:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _posting2.default.open({\n mode: 'START_PRIVATE',\n submit: _2.default.get('PRIVATE_THREADS_API'),\n\n to: [_this.props.profile]\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n var canMessage = this.props.user.acl.can_start_private_threads;\n var isProfileOwner = this.props.user.id === this.props.profile.id;\n\n if (!canMessage || isProfileOwner) return null;\n\n return _react2.default.createElement(\n 'button',\n {\n className: this.props.className,\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'comment'\n ),\n gettext(\"Message\")\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../..\":291,\"../../services/posting\":362,\"react\":\"react\"}],183:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _modalLoader = require('../../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _yesNoSwitch = require('../../yes-no-switch');\n\nvar _yesNoSwitch2 = _interopRequireDefault(_yesNoSwitch);\n\nvar _modalMessage = require('../../modal-message');\n\nvar _modalMessage2 = _interopRequireDefault(_modalMessage);\n\nvar _users = require('../../../reducers/users');\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n isLoaded: false,\n isLoading: false,\n error: null,\n\n is_avatar_locked: '',\n avatar_lock_user_message: '',\n avatar_lock_staff_message: ''\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(this.props.profile.api.moderate_avatar).then(function (options) {\n _this2.setState({\n isLoaded: true,\n\n is_avatar_locked: options.is_avatar_locked,\n avatar_lock_user_message: options.avatar_lock_user_message || '',\n avatar_lock_staff_message: options.avatar_lock_staff_message || ''\n });\n }, function (rejection) {\n _this2.setState({\n isLoaded: true,\n error: rejection.detail\n });\n });\n }\n }, {\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(this.validate().username[0]);\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.profile.api.moderate_avatar, {\n is_avatar_locked: this.state.is_avatar_locked,\n avatar_lock_user_message: this.state.avatar_lock_user_message,\n avatar_lock_staff_message: this.state.avatar_lock_staff_message\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n _store2.default.dispatch((0, _users.updateAvatar)(this.props.profile, apiResponse.avatar_hash));\n _snackbar2.default.success(gettext(\"Avatar controls have been changed.\"));\n }\n }, {\n key: 'getFormBody',\n value: function getFormBody() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Lock avatar\"),\n helpText: gettext(\"Locking user avatar will prohibit user from changing his avatar and will reset his/her avatar to default one.\"),\n 'for': 'id_is_avatar_locked' },\n _react2.default.createElement(_yesNoSwitch2.default, { id: 'id_is_avatar_locked',\n disabled: this.state.isLoading,\n iconOn: 'lock_outline',\n iconOff: 'lock_open',\n labelOn: gettext(\"Disallow user from changing avatar\"),\n labelOff: gettext(\"Allow user to change avatar\"),\n onChange: this.bindInput('is_avatar_locked'),\n value: this.state.is_avatar_locked })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"User message\"),\n helpText: gettext(\"Optional message for user explaining why he/she is prohibited form changing avatar.\"),\n 'for': 'id_avatar_lock_user_message' },\n _react2.default.createElement('textarea', { id: 'id_avatar_lock_user_message',\n className: 'form-control',\n rows: '4',\n disabled: this.state.isLoading,\n onChange: this.bindInput('avatar_lock_user_message'),\n value: this.state.avatar_lock_user_message })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Staff message\"),\n helpText: gettext(\"Optional message for forum team members explaining why user is prohibited form changing avatar.\"),\n 'for': 'id_avatar_lock_staff_message' },\n _react2.default.createElement('textarea', { id: 'id_avatar_lock_staff_message',\n className: 'form-control',\n rows: '4',\n disabled: this.state.isLoading,\n onChange: this.bindInput('avatar_lock_staff_message'),\n value: this.state.avatar_lock_staff_message })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-default', 'data-dismiss': 'modal' },\n gettext(\"Close\")\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Save changes\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getModalBody',\n value: function getModalBody() {\n if (this.state.error) {\n /* jshint ignore:start */\n return _react2.default.createElement(_modalMessage2.default, { icon: 'remove_circle_outline',\n message: this.state.error });\n /* jshint ignore:end */\n } else if (this.state.isLoaded) {\n return this.getFormBody();\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_modalLoader2.default, null);\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.state.error) {\n return \"modal-dialog modal-message modal-avatar-controls\";\n } else {\n return \"modal-dialog modal-avatar-controls\";\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName(),\n role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Avatar controls\")\n )\n ),\n this.getModalBody()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../reducers/users\":351,\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../button\":5,\"../../form\":52,\"../../form-group\":51,\"../../modal-loader\":57,\"../../modal-message\":58,\"../../yes-no-switch\":289,\"react\":\"react\"}],184:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _modalLoader = require('../../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _modalMessage = require('../../modal-message');\n\nvar _modalMessage2 = _interopRequireDefault(_modalMessage);\n\nvar _usernameHistory = require('../../../reducers/username-history');\n\nvar _users = require('../../../reducers/users');\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _validators = require('../../../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n isLoaded: false,\n isLoading: false,\n error: null,\n\n username: '',\n validators: {\n username: [validators.usernameContent()]\n }\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(this.props.profile.api.moderate_username).then(function () {\n _this2.setState({\n isLoaded: true\n });\n }, function (rejection) {\n _this2.setState({\n isLoaded: true,\n error: rejection.detail\n });\n });\n }\n }, {\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(this.validate().username[0]);\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.profile.api.moderate_username, {\n username: this.state.username\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n this.setState({\n username: ''\n });\n\n _store2.default.dispatch((0, _usernameHistory.addNameChange)(apiResponse, this.props.profile, this.props.user));\n _store2.default.dispatch((0, _users.updateUsername)(this.props.profile, apiResponse.username, apiResponse.slug));\n\n _snackbar2.default.success(gettext(\"Username has been changed.\"));\n }\n }, {\n key: 'getFormBody',\n value: function getFormBody() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"New username\"), 'for': 'id_username' },\n _react2.default.createElement('input', { type: 'text', id: 'id_username', className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.bindInput('username'),\n value: this.state.username })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Change username\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getModalBody',\n value: function getModalBody() {\n if (this.state.error) {\n /* jshint ignore:start */\n return _react2.default.createElement(_modalMessage2.default, { icon: 'remove_circle_outline',\n message: this.state.error });\n /* jshint ignore:end */\n } else if (this.state.isLoaded) {\n return this.getFormBody();\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_modalLoader2.default, null);\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.state.error) {\n return \"modal-dialog modal-message modal-rename-user\";\n } else {\n return \"modal-dialog modal-rename-user\";\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName(),\n role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Change username\")\n )\n ),\n this.getModalBody()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../reducers/username-history\":350,\"../../../reducers/users\":351,\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../../utils/validators\":380,\"../../button\":5,\"../../form\":52,\"../../form-group\":51,\"../../modal-loader\":57,\"../../modal-message\":58,\"react\":\"react\"}],185:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _modalLoader = require('../../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _modalMessage = require('../../modal-message');\n\nvar _modalMessage2 = _interopRequireDefault(_modalMessage);\n\nvar _yesNoSwitch = require('../../yes-no-switch');\n\nvar _yesNoSwitch2 = _interopRequireDefault(_yesNoSwitch);\n\nvar _index = require('../../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _polls = require('../../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.countdown = function () {\n window.setTimeout(function () {\n if (_this.state.countdown > 1) {\n _this.setState({\n countdown: _this.state.countdown - 1\n });\n _this.countdown();\n } else if (!_this.state.confirm) {\n _this.setState({\n confirm: true\n });\n }\n }, 1000);\n };\n\n _this.state = {\n isLoaded: false,\n isLoading: false,\n isDeleted: false,\n error: null,\n\n countdown: 5,\n confirm: false,\n\n with_content: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(this.props.profile.api.delete).then(function () {\n _this2.setState({\n isLoaded: true\n });\n\n _this2.countdown();\n }, function (rejection) {\n _this2.setState({\n isLoaded: true,\n error: rejection.detail\n });\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'send',\n\n /* jshint ignore:end */\n\n value: function send() {\n return _ajax2.default.post(this.props.profile.api.delete, {\n with_content: this.state.with_content\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess() {\n _polls2.default.stop('user-profile');\n\n if (this.state.with_content) {\n this.setState({\n isDeleted: interpolate(gettext(\"%(username)s's account, threads, posts and other content has been deleted.\"), {\n 'username': this.props.profile.username\n }, true)\n });\n } else {\n this.setState({\n isDeleted: interpolate(gettext(\"%(username)s's account has been deleted and other content has been hidden.\"), {\n 'username': this.props.profile.username\n }, true)\n });\n }\n }\n }, {\n key: 'getButtonLabel',\n value: function getButtonLabel() {\n if (this.state.confirm) {\n return interpolate(gettext(\"Delete %(username)s\"), {\n 'username': this.props.profile.username\n }, true);\n } else {\n return interpolate(gettext(\"Please wait... (%(countdown)ss)\"), {\n 'countdown': this.state.countdown\n }, true);\n }\n }\n }, {\n key: 'getForm',\n value: function getForm() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"User content\"),\n 'for': 'id_with_content' },\n _react2.default.createElement(_yesNoSwitch2.default, { id: 'id_with_content',\n disabled: this.state.isLoading,\n labelOn: gettext(\"Delete together with user's account\"),\n labelOff: gettext(\"Hide after deleting user's account\"),\n onChange: this.bindInput('with_content'),\n value: this.state.with_content })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n { type: 'button',\n className: 'btn btn-default',\n 'data-dismiss': 'modal' },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-danger',\n loading: this.state.isLoading,\n disabled: !this.state.confirm },\n this.getButtonLabel()\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getDeletedBody',\n value: function getDeletedBody() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.state.isDeleted\n ),\n _react2.default.createElement(\n 'p',\n null,\n _react2.default.createElement(\n 'a',\n { href: _index2.default.get('USERS_LIST_URL') },\n gettext(\"Return to users list\")\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getModalBody',\n value: function getModalBody() {\n if (this.state.error) {\n /* jshint ignore:start */\n return _react2.default.createElement(_modalMessage2.default, { icon: 'remove_circle_outline',\n message: this.state.error });\n /* jshint ignore:end */\n } else if (this.state.isLoaded) {\n if (this.state.isDeleted) {\n return this.getDeletedBody();\n } else {\n return this.getForm();\n }\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_modalLoader2.default, null);\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.state.error || this.state.isDeleted) {\n return \"modal-dialog modal-message modal-delete-account\";\n } else {\n return \"modal-dialog modal-delete-account\";\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName(),\n role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Delete user account\")\n )\n ),\n this.getModalBody()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../index\":291,\"../../../services/ajax\":352,\"../../../services/polls\":361,\"../../button\":5,\"../../form\":52,\"../../form-group\":51,\"../../modal-loader\":57,\"../../modal-message\":58,\"../../yes-no-switch\":289,\"react\":\"react\"}],186:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRedux = require('react-redux');\n\nvar _avatarControls = require('./avatar-controls');\n\nvar _avatarControls2 = _interopRequireDefault(_avatarControls);\n\nvar _changeUsername = require('./change-username');\n\nvar _changeUsername2 = _interopRequireDefault(_changeUsername);\n\nvar _deleteAccount = require('./delete-account');\n\nvar _deleteAccount2 = _interopRequireDefault(_deleteAccount);\n\nvar _modal = require('../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\n/* jshint ignore:start */\nvar select = function select(store) {\n return {\n tick: store.tick,\n user: store.auth,\n profile: store.profile\n };\n};\n/* jshint ignore:end */\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.showAvatarDialog = function () {\n _modal2.default.show((0, _reactRedux.connect)(select)(_avatarControls2.default));\n }, _this.showRenameDialog = function () {\n _modal2.default.show((0, _reactRedux.connect)(select)(_changeUsername2.default));\n }, _this.showDeleteDialog = function () {\n _modal2.default.show((0, _reactRedux.connect)(select)(_deleteAccount2.default));\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'getAvatarButton',\n\n /* jshint ignore:end */\n\n value: function getAvatarButton() {\n if (this.props.profile.acl.can_moderate_avatar) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: 'btn btn-link',\n onClick: this.showAvatarDialog\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'portrait'\n ),\n gettext(\"Avatar controls\")\n )\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getRenameButton',\n\n /* jshint ignore:end */\n\n value: function getRenameButton() {\n if (this.props.profile.acl.can_rename) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: 'btn btn-link',\n onClick: this.showRenameDialog\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'credit_card'\n ),\n gettext(\"Change username\")\n )\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getDeleteButton',\n\n /* jshint ignore:end */\n\n value: function getDeleteButton() {\n if (this.props.profile.acl.can_delete) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: 'btn btn-link',\n onClick: this.showDeleteDialog\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'clear'\n ),\n gettext(\"Delete account\")\n )\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'ul',\n {\n className: 'dropdown-menu dropdown-menu-right stick-to-bottom',\n role: 'menu'\n },\n this.getAvatarButton(),\n this.getRenameButton(),\n this.getDeleteButton()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../services/modal\":358,\"./avatar-controls\":183,\"./change-username\":184,\"./delete-account\":185,\"react\":\"react\",\"react-redux\":\"react-redux\"}],187:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SideNav = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.CompactNav = CompactNav;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nvar _li = require('../li');\n\nvar _li2 = _interopRequireDefault(_li);\n\nvar _followButton = require('./follow-button');\n\nvar _followButton2 = _interopRequireDefault(_followButton);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n//jshint ignore:line\n// jshint ignore:line\n\n\n//jshint ignore:line\n\nvar SideNav = exports.SideNav = function (_React$Component) {\n _inherits(SideNav, _React$Component);\n\n function SideNav() {\n _classCallCheck(this, SideNav);\n\n return _possibleConstructorReturn(this, (SideNav.__proto__ || Object.getPrototypeOf(SideNav)).apply(this, arguments));\n }\n\n _createClass(SideNav, [{\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n // jshint ignore:start\n return _react2.default.createElement(\n 'div',\n { className: 'list-group nav-side' },\n this.props.pages.map(function (page) {\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n to: _this2.props.baseUrl + page.component + '/',\n className: 'list-group-item',\n activeClassName: 'active',\n key: page.component\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n page.icon\n ),\n page.name\n );\n })\n );\n // jshint ignore:end\n }\n }]);\n\n return SideNav;\n}(_react2.default.Component);\n\n// jshint ignore:start\n\n\nfunction CompactNav(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'page-tabs hidden-md hidden-lg' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'ul',\n { className: 'nav nav-pills', role: 'menu' },\n props.pages.map(function (page) {\n return _react2.default.createElement(\n _li2.default,\n {\n path: props.baseUrl + page.component + '/',\n key: page.component\n },\n _react2.default.createElement(\n _reactRouter.Link,\n {\n to: props.baseUrl + page.component + '/',\n onClick: props.hideNav\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n page.icon\n ),\n page.name\n )\n );\n })\n )\n )\n );\n}\n// jshint ignore:end\n\n},{\"../../index\":291,\"../li\":53,\"./follow-button\":178,\"react\":\"react\",\"react-router\":\"react-router\"}],188:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.select = select;\nexports.paths = paths;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRedux = require('react-redux');\n\nvar _banDetails = require('./ban-details');\n\nvar _banDetails2 = _interopRequireDefault(_banDetails);\n\nvar _details = require('./details');\n\nvar _details2 = _interopRequireDefault(_details);\n\nvar _feed = require('./feed');\n\nvar _followers = require('./followers');\n\nvar _followers2 = _interopRequireDefault(_followers);\n\nvar _follows = require('./follows');\n\nvar _follows2 = _interopRequireDefault(_follows);\n\nvar _usernameHistory = require('./username-history');\n\nvar _usernameHistory2 = _interopRequireDefault(_usernameHistory);\n\nvar _header = require('./header');\n\nvar _header2 = _interopRequireDefault(_header);\n\nvar _nav = require('./moderation/nav');\n\nvar _nav2 = _interopRequireDefault(_nav);\n\nvar _navs = require('./navs');\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _withDropdown = require('../with-dropdown');\n\nvar _withDropdown2 = _interopRequireDefault(_withDropdown);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _profile = require('../../reducers/profile');\n\nvar _polls = require('../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_WithDropdown) {\n _inherits(_class, _WithDropdown);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.update = function (data) {\n _store2.default.dispatch((0, _profile.hydrate)(data));\n };\n\n _this.startPolling(props.profile.api.index);\n return _this;\n }\n\n _createClass(_class, [{\n key: 'startPolling',\n value: function startPolling(api) {\n _polls2.default.start({\n poll: 'user-profile',\n url: api,\n frequency: 90 * 1000,\n update: this.update\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n var baseUrl = _2.default.get('PROFILE').url;\n var pages = _2.default.get('PROFILE_PAGES');\n\n return _react2.default.createElement(\n 'div',\n { className: 'page page-user-profile' },\n _react2.default.createElement(_header2.default, {\n baseUrl: baseUrl,\n pages: pages,\n profile: this.props.profile,\n toggleNav: this.toggleNav,\n toggleModeration: this.toggleModeration,\n user: this.props.user\n }),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-3 hidden-xs hidden-sm' },\n _react2.default.createElement(\n 'div',\n { className: 'profile-side-avatar' },\n _react2.default.createElement(_avatar2.default, { user: this.props.profile, size: '400' })\n ),\n _react2.default.createElement(_navs.SideNav, {\n baseUrl: baseUrl,\n pages: pages,\n profile: this.props.profile\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-md-9' },\n this.props.children\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_withDropdown2.default);\n\nexports.default = _class;\nfunction select(store) {\n return {\n isAuthenticated: store.auth.user.id === store.profile.id,\n\n tick: store.tick.tick,\n user: store.auth.user,\n users: store.users,\n posts: store.posts,\n profile: store.profile,\n profileDetails: store['profile-details'],\n 'username-history': store['username-history']\n };\n}\n\nvar COMPONENTS = {\n 'posts': _feed.Posts,\n 'threads': _feed.Threads,\n 'followers': _followers2.default,\n 'follows': _follows2.default,\n 'details': _details2.default,\n 'username-history': _usernameHistory2.default,\n 'ban-details': _banDetails2.default\n};\n\nfunction paths() {\n var paths = [];\n _2.default.get('PROFILE_PAGES').forEach(function (item) {\n paths.push(Object.assign({}, item, {\n path: _2.default.get('PROFILE').url + item.component + '/',\n component: (0, _reactRedux.connect)(select)(COMPONENTS[item.component])\n }));\n });\n\n return paths;\n}\n\n},{\"../..\":291,\"../../reducers/profile\":343,\"../../services/polls\":361,\"../../services/store\":364,\"../avatar\":3,\"../with-dropdown\":288,\"./ban-details\":167,\"./details\":175,\"./feed\":176,\"./followers\":179,\"./follows\":180,\"./header\":181,\"./moderation/nav\":186,\"./navs\":187,\"./username-history\":189,\"react\":\"react\",\"react-redux\":\"react-redux\"}],189:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _quickSearch = require('../quick-search');\n\nvar _quickSearch2 = _interopRequireDefault(_quickSearch);\n\nvar _root = require('../username-history/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _usernameHistory = require('../../reducers/username-history');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _pageTitle = require('../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.loadMore = function () {\n _this.setState({\n isBusy: true\n });\n\n _this.loadChanges(_this.state.page + 1, _this.state.search);\n };\n\n _this.search = function (ev) {\n _this.setState({\n isLoaded: false,\n isBusy: true,\n\n search: ev.target.value,\n\n count: 0,\n more: 0,\n\n page: 1,\n pages: 1\n });\n\n _this.loadChanges(1, ev.target.value);\n };\n\n if (_index2.default.has('PROFILE_NAME_HISTORY')) {\n _this.initWithPreloadedData(_index2.default.pop('PROFILE_NAME_HISTORY'));\n } else {\n _this.initWithoutPreloadedData();\n }\n return _this;\n }\n\n _createClass(_class, [{\n key: 'initWithPreloadedData',\n value: function initWithPreloadedData(data) {\n this.state = {\n isLoaded: true,\n isBusy: false,\n\n search: '',\n\n count: data.count,\n more: data.more,\n\n page: data.page,\n pages: data.pages\n };\n\n _store2.default.dispatch((0, _usernameHistory.hydrate)(data.results));\n }\n }, {\n key: 'initWithoutPreloadedData',\n value: function initWithoutPreloadedData() {\n this.state = {\n isLoaded: false,\n isBusy: false,\n\n search: '',\n\n count: 0,\n more: 0,\n\n page: 1,\n pages: 1\n };\n\n this.loadChanges();\n }\n }, {\n key: 'loadChanges',\n value: function loadChanges() {\n var _this2 = this;\n\n var page = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n var search = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n _ajax2.default.get(_index2.default.get('USERNAME_CHANGES_API'), {\n user: this.props.profile.id,\n search: search,\n page: page || 1\n }, 'search-username-history').then(function (data) {\n if (page === 1) {\n _store2.default.dispatch((0, _usernameHistory.hydrate)(data.results));\n } else {\n _store2.default.dispatch((0, _usernameHistory.append)(data.results));\n }\n\n _this2.setState({\n isLoaded: true,\n isBusy: false,\n\n count: data.count,\n more: data.more,\n\n page: data.page,\n pages: data.pages\n });\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n });\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: gettext(\"Username history\"),\n parent: this.props.profile.username\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getLabel',\n\n /* jshint ignore:end */\n\n value: function getLabel() {\n if (!this.state.isLoaded) {\n return gettext('Loading...');\n } else if (this.state.search) {\n var message = ngettext(\"Found %(changes)s username change.\", \"Found %(changes)s username changes.\", this.state.count);\n\n return interpolate(message, {\n 'changes': this.state.count\n }, true);\n } else if (this.props.profile.id === this.props.user.id) {\n var _message = ngettext(\"Your username was changed %(changes)s time.\", \"Your username was changed %(changes)s times.\", this.state.count);\n\n return interpolate(_message, {\n 'changes': this.state.count\n }, true);\n } else {\n var _message2 = ngettext(\"%(username)s's username was changed %(changes)s time.\", \"%(username)s's username was changed %(changes)s times.\", this.state.count);\n\n return interpolate(_message2, {\n 'username': this.props.profile.username,\n 'changes': this.state.count\n }, true);\n }\n }\n }, {\n key: 'getEmptyMessage',\n value: function getEmptyMessage() {\n if (this.state.search) {\n return gettext(\"Search returned no username changes matching specified criteria.\");\n } else if (this.props.user.id === this.props.profile.id) {\n return gettext(\"No name changes have been recorded for your account.\");\n } else {\n return interpolate(gettext(\"%(username)s's username was never changed.\"), {\n 'username': this.props.profile.username\n }, true);\n }\n }\n }, {\n key: 'getMoreButton',\n value: function getMoreButton() {\n if (!this.state.more) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'pager-more' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn btn-default btn-outline',\n loading: this.state.isBusy,\n onClick: this.loadMore\n },\n interpolate(gettext(\"Show older (%(more)s)\"), {\n 'more': this.state.more\n }, true)\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'profile-username-history' },\n _react2.default.createElement(\n 'nav',\n { className: 'toolbar' },\n _react2.default.createElement(\n 'h3',\n { className: 'toolbar-left' },\n this.getLabel()\n ),\n _react2.default.createElement(_quickSearch2.default, { className: 'toolbar-right',\n value: this.state.search,\n onChange: this.search,\n placeholder: gettext(\"Search history...\") })\n ),\n _react2.default.createElement(_root2.default, { isLoaded: this.state.isLoaded,\n emptyMessage: this.getEmptyMessage(),\n changes: this.props['username-history'] }),\n this.getMoreButton()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../index\":291,\"../../reducers/username-history\":350,\"../../services/ajax\":352,\"../../services/page-title\":360,\"../../services/snackbar\":363,\"../../services/store\":364,\"../button\":5,\"../quick-search\":190,\"../username-history/root\":269,\"react\":\"react\"}],190:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: \"getClassName\",\n value: function getClassName() {\n if (this.props.className) {\n return \"form-search \" + this.props.className;\n } else {\n return \"form-search\";\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n \"div\",\n { className: this.getClassName() },\n _react2.default.createElement(\"input\", { type: \"text\",\n className: \"form-control\",\n value: this.props.value,\n onChange: this.props.onChange,\n placeholder: this.props.placeholder || gettext(\"Search...\") }),\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"search\"\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],191:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _loader = require('./loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nvar _register = require('./register.js');\n\nvar _register2 = _interopRequireDefault(_register);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _captcha = require('../services/captcha');\n\nvar _captcha2 = _interopRequireDefault(_captcha);\n\nvar _modal = require('../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.showRegisterForm = function () {\n if (misago.get('SETTINGS').account_activation === 'closed') {\n _snackbar2.default.info(gettext(\"New registrations are currently disabled.\"));\n } else if (_this.state.isLoaded) {\n _modal2.default.show(_react2.default.createElement(_register2.default, {\n criteria: _this.state.criteria\n }));\n } else {\n _this.setState({ isLoading: true });\n\n Promise.all([_captcha2.default.load(), _ajax2.default.get(misago.get('AUTH_CRITERIA_API'))]).then(function (result) {\n _this.setState({\n isLoading: false,\n isLoaded: true,\n criteria: result[1]\n });\n\n _modal2.default.show(_react2.default.createElement(_register2.default, {\n criteria: result[1]\n }));\n }, function () {\n _this.setState({ isLoading: false });\n\n _snackbar2.default.error(gettext(\"Registration is currently unavailable due to an error.\"));\n });\n }\n };\n\n _this.state = {\n isLoading: false,\n isLoaded: false,\n\n criteria: null\n };\n return _this;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'getClassName',\n\n /* jshint ignore:end */\n\n value: function getClassName() {\n return this.props.className + (this.state.isLoading ? ' btn-loading' : '');\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn ' + this.getClassName(),\n disabled: this.state.isLoading,\n onClick: this.showRegisterForm,\n type: 'button'\n },\n gettext(\"Register\"),\n this.state.isLoading ? _react2.default.createElement(_loader2.default, null) : null\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../services/ajax\":352,\"../services/captcha\":354,\"../services/modal\":358,\"../services/snackbar\":363,\"./loader\":54,\"./register.js\":192,\"react\":\"react\"}],192:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.RegisterComplete = exports.RegisterForm = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('./form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _passwordStrength = require('./password-strength');\n\nvar _passwordStrength2 = _interopRequireDefault(_passwordStrength);\n\nvar _ = require('..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _auth = require('../services/auth');\n\nvar _auth2 = _interopRequireDefault(_auth);\n\nvar _captcha = require('../services/captcha');\n\nvar _captcha2 = _interopRequireDefault(_captcha);\n\nvar _modal = require('../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _bannedPage = require('../utils/banned-page');\n\nvar _bannedPage2 = _interopRequireDefault(_bannedPage);\n\nvar _validators = require('../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar RegisterForm = exports.RegisterForm = function (_Form) {\n _inherits(RegisterForm, _Form);\n\n function RegisterForm(props) {\n _classCallCheck(this, RegisterForm);\n\n var _this = _possibleConstructorReturn(this, (RegisterForm.__proto__ || Object.getPrototypeOf(RegisterForm)).call(this, props));\n\n var _this$props$criteria = _this.props.criteria,\n username = _this$props$criteria.username,\n password = _this$props$criteria.password;\n\n\n var passwordMinLength = 0;\n password.forEach(function (item) {\n if (item.name === 'MinimumLengthValidator') {\n passwordMinLength = item.min_length;\n }\n });\n\n _this.state = {\n isLoading: false,\n\n username: '',\n email: '',\n password: '',\n captcha: '',\n\n validators: {\n username: [validators.usernameContent(), validators.usernameMinLength(username.min_length), validators.usernameMaxLength(username.max_length)],\n email: [validators.email()],\n password: [validators.passwordMinLength(passwordMinLength)],\n captcha: _captcha2.default.validator()\n },\n\n errors: {}\n };\n return _this;\n }\n\n _createClass(RegisterForm, [{\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n this.setState({\n errors: this.validate()\n });\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(_2.default.get('USERS_API'), {\n username: this.state.username,\n email: this.state.email,\n password: this.state.password,\n captcha: this.state.captcha\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n this.props.callback(apiResponse);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n this.setState({\n 'errors': Object.assign({}, this.state.errors, rejection)\n });\n\n if (rejection.__all__ && rejection.__all__.length > 0) {\n _snackbar2.default.error(rejection.__all__[0]);\n } else {\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n }\n } else if (rejection.status === 403 && rejection.ban) {\n (0, _bannedPage2.default)(rejection.ban);\n _modal2.default.hide();\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'getLegalFootNote',\n value: function getLegalFootNote() {\n if (!_2.default.get('TERMS_OF_SERVICE_URL')) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'p',\n { className: 'legal-footnote' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n ),\n _react2.default.createElement(\n 'a',\n {\n href: _2.default.get('TERMS_OF_SERVICE_URL'),\n target: '_blank'\n },\n gettext(\"By registering you agree to site's terms and conditions.\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog modal-register', role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Register\")\n )\n ),\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement('input', { type: 'type', style: { display: 'none' } }),\n _react2.default.createElement('input', { type: 'password', style: { display: 'none' } }),\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Username\"), 'for': 'id_username',\n validation: this.state.errors.username },\n _react2.default.createElement('input', { type: 'text', id: 'id_username', className: 'form-control',\n 'aria-describedby': 'id_username_status',\n disabled: this.state.isLoading,\n onChange: this.bindInput('username'),\n value: this.state.username })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"E-mail\"), 'for': 'id_email',\n validation: this.state.errors.email },\n _react2.default.createElement('input', { type: 'text', id: 'id_email', className: 'form-control',\n 'aria-describedby': 'id_email_status',\n disabled: this.state.isLoading,\n onChange: this.bindInput('email'),\n value: this.state.email })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Password\"), 'for': 'id_password',\n validation: this.state.errors.password,\n extra: _react2.default.createElement(_passwordStrength2.default, {\n password: this.state.password,\n inputs: [this.state.username, this.state.email]\n }) },\n _react2.default.createElement('input', { type: 'password', id: 'id_password', className: 'form-control',\n 'aria-describedby': 'id_password_status',\n disabled: this.state.isLoading,\n onChange: this.bindInput('password'),\n value: this.state.password })\n ),\n _captcha2.default.component({\n form: this\n }),\n this.getLegalFootNote()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Register account\")\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return RegisterForm;\n}(_form2.default);\n\nvar RegisterComplete = exports.RegisterComplete = function (_React$Component) {\n _inherits(RegisterComplete, _React$Component);\n\n function RegisterComplete() {\n _classCallCheck(this, RegisterComplete);\n\n return _possibleConstructorReturn(this, (RegisterComplete.__proto__ || Object.getPrototypeOf(RegisterComplete)).apply(this, arguments));\n }\n\n _createClass(RegisterComplete, [{\n key: 'getLead',\n value: function getLead() {\n if (this.props.activation === 'user') {\n return gettext(\"%(username)s, your account has been created but you need to activate it before you will be able to sign in.\");\n } else if (this.props.activation === 'admin') {\n return gettext(\"%(username)s, your account has been created but board administrator will have to activate it before you will be able to sign in.\");\n }\n }\n }, {\n key: 'getSubscript',\n value: function getSubscript() {\n if (this.props.activation === 'user') {\n return gettext(\"We have sent an e-mail to %(email)s with link that you have to click to activate your account.\");\n } else if (this.props.activation === 'admin') {\n return gettext(\"We will send an e-mail to %(email)s when this takes place.\");\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog modal-message modal-register',\n role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Registration complete\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n interpolate(this.getLead(), { 'username': this.props.username }, true)\n ),\n _react2.default.createElement(\n 'p',\n null,\n interpolate(this.getSubscript(), { 'email': this.props.email }, true)\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n gettext(\"Ok\")\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return RegisterComplete;\n}(_react2.default.Component);\n\nvar _class = function (_React$Component2) {\n _inherits(_class, _React$Component2);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this3 = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this3.completeRegistration = function (apiResponse) {\n if (apiResponse.activation === 'active') {\n _modal2.default.hide();\n _auth2.default.signIn(apiResponse);\n } else {\n _this3.setState({\n complete: apiResponse\n });\n }\n };\n\n _this3.state = {\n complete: false\n };\n return _this3;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n if (this.state.complete) {\n return _react2.default.createElement(RegisterComplete, {\n activation: this.state.complete.activation,\n email: this.state.complete.email,\n username: this.state.complete.username\n });\n }\n\n return _react2.default.createElement(RegisterForm, _extends({\n callback: this.completeRegistration\n }, this.props));\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"..\":291,\"../services/ajax\":352,\"../services/auth\":353,\"../services/captcha\":354,\"../services/modal\":358,\"../services/snackbar\":363,\"../utils/banned-page\":366,\"../utils/validators\":380,\"./button\":5,\"./form\":52,\"./form-group\":51,\"./password-strength\":96,\"react\":\"react\"}],193:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.LinkSent = exports.RequestLinkForm = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _validators = require('../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nvar _bannedPage = require('../utils/banned-page');\n\nvar _bannedPage2 = _interopRequireDefault(_bannedPage);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n\n\nvar RequestLinkForm = exports.RequestLinkForm = function (_Form) {\n _inherits(RequestLinkForm, _Form);\n\n function RequestLinkForm(props) {\n _classCallCheck(this, RequestLinkForm);\n\n var _this = _possibleConstructorReturn(this, (RequestLinkForm.__proto__ || Object.getPrototypeOf(RequestLinkForm)).call(this, props));\n\n _this.state = {\n 'isLoading': false,\n\n 'email': '',\n\n 'validators': {\n 'email': [validators.email()]\n }\n };\n return _this;\n }\n\n _createClass(RequestLinkForm, [{\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(gettext(\"Enter a valid email address.\"));\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(_index2.default.get('SEND_ACTIVATION_API'), {\n 'email': this.state.email\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n this.props.callback(apiResponse);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (['already_active', 'inactive_admin'].indexOf(rejection.code) > -1) {\n _snackbar2.default.info(rejection.detail);\n } else if (rejection.status === 403 && rejection.ban) {\n (0, _bannedPage2.default)(rejection.ban);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'well well-form well-form-request-activation-link' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'form-group' },\n _react2.default.createElement(\n 'div',\n { className: 'control-input' },\n _react2.default.createElement('input', { type: 'text', className: 'form-control',\n placeholder: gettext(\"Your e-mail address\"),\n disabled: this.state.isLoading,\n onChange: this.bindInput('email'),\n value: this.state.email })\n )\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary btn-block',\n loading: this.state.isLoading },\n gettext(\"Send link\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return RequestLinkForm;\n}(_form2.default);\n\nvar LinkSent = exports.LinkSent = function (_React$Component) {\n _inherits(LinkSent, _React$Component);\n\n function LinkSent() {\n _classCallCheck(this, LinkSent);\n\n return _possibleConstructorReturn(this, (LinkSent.__proto__ || Object.getPrototypeOf(LinkSent)).apply(this, arguments));\n }\n\n _createClass(LinkSent, [{\n key: 'getMessage',\n value: function getMessage() {\n return interpolate(gettext(\"Activation link was sent to %(email)s\"), {\n email: this.props.user.email\n }, true);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'well well-form well-form-request-activation-link well-done' },\n _react2.default.createElement(\n 'div',\n { className: 'done-message' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'check'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n null,\n this.getMessage()\n )\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-primary btn-block',\n type: 'button',\n onClick: this.props.callback\n },\n gettext(\"Request another link\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return LinkSent;\n}(_react2.default.Component);\n\nvar _class = function (_React$Component2) {\n _inherits(_class, _React$Component2);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this3 = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this3.complete = function (apiResponse) {\n _this3.setState({\n complete: apiResponse\n });\n };\n\n _this3.reset = function () {\n _this3.setState({\n complete: false\n });\n };\n\n _this3.state = {\n complete: false\n };\n return _this3;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n if (this.state.complete) {\n return _react2.default.createElement(LinkSent, { user: this.state.complete, callback: this.reset });\n } else {\n return _react2.default.createElement(RequestLinkForm, { callback: this.complete });\n };\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../index\":291,\"../services/ajax\":352,\"../services/snackbar\":363,\"../utils/banned-page\":366,\"../utils/validators\":380,\"./button\":5,\"./form\":52,\"react\":\"react\"}],194:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.AccountInactivePage = exports.LinkSent = exports.RequestResetForm = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _validators = require('../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nvar _bannedPage = require('../utils/banned-page');\n\nvar _bannedPage2 = _interopRequireDefault(_bannedPage);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar RequestResetForm = exports.RequestResetForm = function (_Form) {\n _inherits(RequestResetForm, _Form);\n\n function RequestResetForm(props) {\n _classCallCheck(this, RequestResetForm);\n\n var _this = _possibleConstructorReturn(this, (RequestResetForm.__proto__ || Object.getPrototypeOf(RequestResetForm)).call(this, props));\n\n _this.state = {\n 'isLoading': false,\n\n 'email': '',\n\n 'validators': {\n 'email': [validators.email()]\n }\n };\n return _this;\n }\n\n _createClass(RequestResetForm, [{\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(gettext(\"Enter a valid email address.\"));\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(_index2.default.get('SEND_PASSWORD_RESET_API'), {\n 'email': this.state.email\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n this.props.callback(apiResponse);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (['inactive_user', 'inactive_admin'].indexOf(rejection.code) > -1) {\n this.props.showInactivePage(rejection);\n } else if (rejection.status === 403 && rejection.ban) {\n (0, _bannedPage2.default)(rejection.ban);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'well well-form well-form-request-password-reset' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'form-group' },\n _react2.default.createElement(\n 'div',\n { className: 'control-input' },\n _react2.default.createElement('input', { type: 'text', className: 'form-control',\n placeholder: gettext(\"Your e-mail address\"),\n disabled: this.state.isLoading,\n onChange: this.bindInput('email'),\n value: this.state.email })\n )\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary btn-block',\n loading: this.state.isLoading },\n gettext(\"Send link\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return RequestResetForm;\n}(_form2.default);\n\nvar LinkSent = exports.LinkSent = function (_React$Component) {\n _inherits(LinkSent, _React$Component);\n\n function LinkSent() {\n _classCallCheck(this, LinkSent);\n\n return _possibleConstructorReturn(this, (LinkSent.__proto__ || Object.getPrototypeOf(LinkSent)).apply(this, arguments));\n }\n\n _createClass(LinkSent, [{\n key: 'getMessage',\n value: function getMessage() {\n return interpolate(gettext(\"Reset password link was sent to %(email)s\"), {\n email: this.props.user.email\n }, true);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'well well-form well-form-request-password-reset well-done' },\n _react2.default.createElement(\n 'div',\n { className: 'done-message' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'check'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n null,\n this.getMessage()\n )\n ),\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-primary btn-block',\n onClick: this.props.callback },\n gettext(\"Request another link\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return LinkSent;\n}(_react2.default.Component);\n\nvar AccountInactivePage = exports.AccountInactivePage = function (_React$Component2) {\n _inherits(AccountInactivePage, _React$Component2);\n\n function AccountInactivePage() {\n _classCallCheck(this, AccountInactivePage);\n\n return _possibleConstructorReturn(this, (AccountInactivePage.__proto__ || Object.getPrototypeOf(AccountInactivePage)).apply(this, arguments));\n }\n\n _createClass(AccountInactivePage, [{\n key: 'getActivateButton',\n value: function getActivateButton() {\n if (this.props.activation === 'inactive_user') {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'p',\n null,\n _react2.default.createElement(\n 'a',\n { href: _index2.default.get('REQUEST_ACTIVATION_URL') },\n gettext(\"Activate your account.\")\n )\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'page page-message page-message-info page-forgotten-password-inactive' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'message-panel' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"Your account is inactive.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n this.props.message\n ),\n this.getActivateButton()\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return AccountInactivePage;\n}(_react2.default.Component);\n\nvar _class = function (_React$Component3) {\n _inherits(_class, _React$Component3);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this4 = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this4.complete = function (apiResponse) {\n _this4.setState({\n complete: apiResponse\n });\n };\n\n _this4.reset = function () {\n _this4.setState({\n complete: false\n });\n };\n\n _this4.state = {\n complete: false\n };\n return _this4;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'showInactivePage',\n value: function showInactivePage(apiResponse) {\n _reactDom2.default.render(_react2.default.createElement(AccountInactivePage, {\n activation: apiResponse.code,\n message: apiResponse.detail\n }), document.getElementById('page-mount'));\n }\n /* jshint ignore:end */\n\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n if (this.state.complete) {\n return _react2.default.createElement(LinkSent, {\n callback: this.reset,\n user: this.state.complete\n });\n }\n\n return _react2.default.createElement(RequestResetForm, {\n callback: this.complete,\n showInactivePage: this.showInactivePage\n });\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../index\":291,\"../services/ajax\":352,\"../services/snackbar\":363,\"../utils/banned-page\":366,\"../utils/validators\":380,\"./button\":5,\"./form\":52,\"react\":\"react\",\"react-dom\":\"react-dom\"}],195:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.PasswordChangedPage = exports.ResetPasswordForm = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _signIn = require('./sign-in.js');\n\nvar _signIn2 = _interopRequireDefault(_signIn);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _auth = require('../services/auth');\n\nvar _auth2 = _interopRequireDefault(_auth);\n\nvar _modal = require('../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _bannedPage = require('../utils/banned-page');\n\nvar _bannedPage2 = _interopRequireDefault(_bannedPage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar ResetPasswordForm = exports.ResetPasswordForm = function (_Form) {\n _inherits(ResetPasswordForm, _Form);\n\n function ResetPasswordForm(props) {\n _classCallCheck(this, ResetPasswordForm);\n\n var _this = _possibleConstructorReturn(this, (ResetPasswordForm.__proto__ || Object.getPrototypeOf(ResetPasswordForm)).call(this, props));\n\n _this.state = {\n 'isLoading': false,\n\n 'password': ''\n };\n return _this;\n }\n\n _createClass(ResetPasswordForm, [{\n key: 'clean',\n value: function clean() {\n if (this.state.password.trim().length) {\n return true;\n } else {\n _snackbar2.default.error(gettext(\"Enter new password.\"));\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(_index2.default.get('CHANGE_PASSWORD_API'), {\n 'password': this.state.password\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n this.props.callback(apiResponse);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 403 && rejection.ban) {\n (0, _bannedPage2.default)(rejection.ban);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'well well-form well-form-reset-password' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'form-group' },\n _react2.default.createElement(\n 'div',\n { className: 'control-input' },\n _react2.default.createElement('input', { type: 'password', className: 'form-control',\n placeholder: gettext(\"Enter new password\"),\n disabled: this.state.isLoading,\n onChange: this.bindInput('password'),\n value: this.state.password })\n )\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary btn-block',\n loading: this.state.isLoading },\n gettext(\"Change password\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return ResetPasswordForm;\n}(_form2.default);\n\nvar PasswordChangedPage = exports.PasswordChangedPage = function (_React$Component) {\n _inherits(PasswordChangedPage, _React$Component);\n\n function PasswordChangedPage() {\n _classCallCheck(this, PasswordChangedPage);\n\n return _possibleConstructorReturn(this, (PasswordChangedPage.__proto__ || Object.getPrototypeOf(PasswordChangedPage)).apply(this, arguments));\n }\n\n _createClass(PasswordChangedPage, [{\n key: 'getMessage',\n value: function getMessage() {\n return interpolate(gettext(\"%(username)s, your password has been changed successfully.\"), {\n username: this.props.user.username\n }, true);\n }\n }, {\n key: 'showSignIn',\n value: function showSignIn() {\n _modal2.default.show(_signIn2.default);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'page page-message page-message-success page-forgotten-password-changed' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'message-panel' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'check'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.getMessage()\n ),\n _react2.default.createElement(\n 'p',\n null,\n gettext(\"You will have to sign in using new password before continuing.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-primary', onClick: this.showSignIn },\n gettext(\"Sign in\")\n )\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return PasswordChangedPage;\n}(_react2.default.Component);\n\nvar _class = function (_React$Component2) {\n _inherits(_class, _React$Component2);\n\n function _class() {\n var _ref;\n\n var _temp, _this3, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this3 = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this3), _this3.complete = function (apiResponse) {\n _auth2.default.softSignOut();\n\n // nuke \"redirect_to\" field so we don't end\n // coming back to error page after sign in\n $('#hidden-login-form input[name=\"redirect_to\"]').remove();\n\n _reactDom2.default.render(_react2.default.createElement(PasswordChangedPage, { user: apiResponse }), document.getElementById('page-mount'));\n }, _temp), _possibleConstructorReturn(_this3, _ret);\n }\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(ResetPasswordForm, { callback: this.complete });\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../index\":291,\"../services/ajax\":352,\"../services/auth\":353,\"../services/modal\":358,\"../services/snackbar\":363,\"../utils/banned-page\":366,\"./button\":5,\"./form\":52,\"./sign-in.js\":204,\"react\":\"react\",\"react-dom\":\"react-dom\"}],196:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _form = require('../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _posts = require('../../reducers/posts');\n\nvar _search = require('../../reducers/search');\n\nvar _users = require('../../reducers/users');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onQueryChange = function (event) {\n _this.changeValue('query', event.target.value);\n };\n\n _this.state = {\n isLoading: false,\n\n query: props.search.query\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (this.state.query.length) {\n this.handleSubmit();\n }\n }\n }, {\n key: 'clean',\n value: function clean() {\n if (!this.state.query.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter search query.\"));\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n _store2.default.dispatch((0, _search.update)({\n isLoading: true\n }));\n\n return _ajax2.default.get(_2.default.get('SEARCH_API'), {\n q: this.state.query.trim()\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(providers) {\n _store2.default.dispatch((0, _search.update)({\n query: this.state.query.trim(),\n isLoading: false,\n providers: providers\n }));\n\n providers.forEach(function (provider) {\n if (provider.id === 'users') {\n _store2.default.dispatch((0, _users.hydrate)(provider.results.results));\n } else if (provider.id === 'threads') {\n _store2.default.dispatch((0, _posts.load)(provider.results));\n }\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n _snackbar2.default.apiError(rejection);\n\n _store2.default.dispatch((0, _search.update)({\n isLoading: false\n }));\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'page-header-bg' },\n _react2.default.createElement(\n 'div',\n { className: 'page-header page-search-form' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-md-3' },\n _react2.default.createElement(\n 'h1',\n null,\n gettext(\"Search\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-md-9' },\n _react2.default.createElement(\n 'div',\n { className: 'row xs-margin-top sm-margin-top' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-8 col-md-9' },\n _react2.default.createElement(\n 'div',\n { className: 'form-group' },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.props.search.isLoading || this.state.isLoading,\n onChange: this.onQueryChange,\n type: 'text',\n value: this.state.query\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-4 col-md-3' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-primary btn-block btn-outline',\n disabled: this.props.search.isLoading || this.state.isLoading\n },\n gettext(\"Search\")\n )\n )\n )\n )\n )\n )\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../..\":291,\"../../reducers/posts\":341,\"../../reducers/search\":344,\"../../reducers/users\":351,\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../../services/store\":364,\"../form\":52,\"react\":\"react\"}],197:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.select = select;\n\nexports.default = function (providers) {\n return providers.map(function (provider) {\n return {\n path: provider.url,\n component: (0, _reactRedux.connect)(select)(components[provider.id]),\n provider: provider\n };\n });\n};\n\nvar _reactRedux = require('react-redux');\n\nvar _threads = require('./threads');\n\nvar _threads2 = _interopRequireDefault(_threads);\n\nvar _users = require('./users');\n\nvar _users2 = _interopRequireDefault(_users);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar components = {\n threads: _threads2.default,\n users: _users2.default\n};\n\nfunction select(store) {\n return {\n 'posts': store.posts,\n 'search': store.search,\n 'tick': store.tick.tick,\n 'user': store.auth.user,\n 'users': store.users\n };\n}\n\n},{\"./threads\":200,\"./users\":202,\"react-redux\":\"react-redux\"}],198:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'page page-search' },\n _react2.default.createElement(_form2.default, {\n provider: props.provider,\n search: props.search\n }),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-3' },\n _react2.default.createElement(_sidenav2.default, { providers: props.search.providers })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-md-9' },\n props.children,\n _react2.default.createElement(SearchTime, {\n provider: props.provider,\n search: props.search\n })\n )\n )\n )\n );\n};\n\nexports.SearchTime = SearchTime;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _sidenav = require('./sidenav');\n\nvar _sidenav2 = _interopRequireDefault(_sidenav);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction SearchTime(props) {\n var time = null;\n props.search.providers.forEach(function (p) {\n if (p.id === props.provider.id) {\n time = p.time;\n }\n });\n\n if (time === null) return null;\n\n var copy = gettext(\"Search took %(time)s s to complete\");\n\n return _react2.default.createElement(\n 'footer',\n { className: 'search-footer' },\n _react2.default.createElement(\n 'p',\n null,\n interpolate(copy, { time: time }, true)\n )\n );\n}\n\n},{\"./form\":196,\"./sidenav\":199,\"react\":\"react\"}],199:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'list-group nav-side' },\n props.providers.map(function (provider) {\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n activeClassName: 'active',\n className: 'list-group-item',\n key: provider.id,\n to: provider.url\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n provider.icon\n ),\n provider.name,\n _react2.default.createElement(Badge, { results: provider.results })\n );\n })\n );\n};\n\nexports.Badge = Badge;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction Badge(props) {\n if (!props.results) return null;\n\n var count = props.results.count;\n if (count > 1000000) {\n count = Math.ceil(count / 1000000) + 'KK';\n } else if (count > 1000) {\n count = Math.ceil(count / 1000) + 'K';\n }\n\n return _react2.default.createElement(\n 'span',\n { className: 'badge' },\n count\n );\n} // jshint ignore:start\n\n},{\"react\":\"react\",\"react-router\":\"react-router\"}],200:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _page2.default,\n {\n provider: props.route.provider,\n search: props.search\n },\n _react2.default.createElement(\n Blankslate,\n {\n query: props.search.query,\n posts: props.posts\n },\n _react2.default.createElement(_results2.default, _extends({\n provider: props.route.provider,\n query: props.search.query\n }, props.posts))\n )\n );\n};\n\nexports.Blankslate = Blankslate;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _page = require('../page');\n\nvar _page2 = _interopRequireDefault(_page);\n\nvar _results = require('./results');\n\nvar _results2 = _interopRequireDefault(_results);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction Blankslate(props) {\n if (props.posts && props.posts.count) return props.children;\n\n if (props.query.length) {\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"No threads matching search query have been found.\")\n );\n }\n\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"Enter at least two characters to search threads.\")\n );\n}\n\n},{\"../page\":198,\"./results\":201,\"react\":\"react\"}],201:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.LoadMore = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_postFeed2.default, {\n isReady: true,\n posts: props.results\n }),\n _react2.default.createElement(LoadMore, props)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _postFeed = require('../../post-feed');\n\nvar _postFeed2 = _interopRequireDefault(_postFeed);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _misagoMarkup = require('../../misago-markup');\n\nvar _misagoMarkup2 = _interopRequireDefault(_misagoMarkup);\n\nvar _posts = require('../../../reducers/posts');\n\nvar _search = require('../../../reducers/search');\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar LoadMore = exports.LoadMore = function (_React$Component) {\n _inherits(LoadMore, _React$Component);\n\n function LoadMore() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, LoadMore);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = LoadMore.__proto__ || Object.getPrototypeOf(LoadMore)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _store2.default.dispatch((0, _posts.update)({\n isBusy: true\n }));\n\n _ajax2.default.get(_this.props.provider.api, {\n q: _this.props.query,\n page: _this.props.next\n }).then(function (providers) {\n providers.forEach(function (provider) {\n if (provider.id !== 'threads') return;\n _store2.default.dispatch((0, _posts.append)(provider.results));\n _store2.default.dispatch((0, _search.updateProvider)(provider));\n });\n\n _store2.default.dispatch((0, _posts.update)({\n isBusy: false\n }));\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n\n _store2.default.dispatch((0, _posts.update)({\n isBusy: false\n }));\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(LoadMore, [{\n key: 'render',\n value: function render() {\n if (!this.props.more) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'pager-more' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn btn-default btn-outline',\n loading: this.props.isBusy,\n onClick: this.onClick\n },\n gettext(\"Show more\")\n )\n );\n }\n }]);\n\n return LoadMore;\n}(_react2.default.Component);\n\n},{\"../../../reducers/posts\":341,\"../../../reducers/search\":344,\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../button\":5,\"../../misago-markup\":56,\"../../post-feed\":115,\"react\":\"react\"}],202:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _page2.default,\n {\n provider: props.route.provider,\n search: props.search\n },\n _react2.default.createElement(\n Blankslate,\n {\n query: props.search.query,\n users: props.users\n },\n _react2.default.createElement(_usersList2.default, {\n cols: 3,\n isReady: true,\n users: props.users\n })\n )\n );\n};\n\nexports.Blankslate = Blankslate;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _page = require('../page');\n\nvar _page2 = _interopRequireDefault(_page);\n\nvar _usersList = require('../../users-list');\n\nvar _usersList2 = _interopRequireDefault(_usersList);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction Blankslate(props) {\n if (props.users.length) return props.children;\n\n if (props.query.length) {\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"No users matching search query have been found.\")\n );\n }\n\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"Enter at least two characters to search users.\")\n );\n}\n\n},{\"../../users-list\":273,\"../page\":198,\"react\":\"react\"}],203:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.Icon = Icon;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.change = function (value) {\n return function () {\n _this.props.onChange({\n target: {\n value: value\n }\n });\n };\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: \"getChoice\",\n value: function getChoice() {\n var _this2 = this;\n\n var choice = null;\n this.props.choices.map(function (item) {\n if (item.value === _this2.props.value) {\n choice = item;\n }\n });\n return choice;\n }\n }, {\n key: \"getIcon\",\n value: function getIcon() {\n return this.getChoice().icon;\n }\n }, {\n key: \"getLabel\",\n value: function getLabel() {\n return this.getChoice().label;\n }\n\n /* jshint ignore:start */\n\n }, {\n key: \"render\",\n\n /* jshint ignore:end */\n\n value: function render() {\n var _this3 = this;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n \"div\",\n { className: \"btn-group btn-select-group\" },\n _react2.default.createElement(\n \"button\",\n { type: \"button\",\n className: \"btn btn-select dropdown-toggle\",\n id: this.props.id || null,\n \"data-toggle\": \"dropdown\",\n \"aria-haspopup\": \"true\",\n \"aria-expanded\": \"false\",\n \"aria-describedby\": this.props['aria-describedby'] || null,\n disabled: this.props.disabled || false },\n _react2.default.createElement(Icon, { icon: this.getIcon() }),\n this.getLabel()\n ),\n _react2.default.createElement(\n \"ul\",\n { className: \"dropdown-menu\" },\n this.props.choices.map(function (item, i) {\n return _react2.default.createElement(\n \"li\",\n { key: i },\n _react2.default.createElement(\n \"button\",\n { type: \"button\", className: \"btn-link\",\n onClick: _this3.change(item.value) },\n _react2.default.createElement(Icon, { icon: item.icon }),\n item.label\n )\n );\n })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\n/* jshint ignore:start */\n\n\nexports.default = _class;\nfunction Icon(_ref2) {\n var icon = _ref2.icon;\n\n if (!icon) return null;\n\n return _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n icon\n );\n}\n/* jshint ignore:end */\n\n},{\"react\":\"react\"}],204:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _bannedPage = require('../utils/banned-page');\n\nvar _bannedPage2 = _interopRequireDefault(_bannedPage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n 'isLoading': false,\n 'showActivation': false,\n\n 'username': '',\n 'password': '',\n\n 'validators': {\n 'username': [],\n 'password': []\n }\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n if (!this.isValid()) {\n _snackbar2.default.error(gettext(\"Fill out both fields.\"));\n return false;\n } else {\n return true;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(_index2.default.get('AUTH_API'), {\n 'username': this.state.username,\n 'password': this.state.password\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess() {\n var form = $('#hidden-login-form');\n\n form.append('');\n form.append('');\n\n // fill out form with user credentials and submit it, this will tell\n // Misago to redirect user back to right page, and will trigger browser's\n // key ring feature\n form.find('input[type=\"hidden\"]').val(_ajax2.default.getCsrfToken());\n form.find('input[name=\"redirect_to\"]').val(window.location.pathname);\n form.find('input[name=\"username\"]').val(this.state.username);\n form.find('input[name=\"password\"]').val(this.state.password);\n form.submit();\n\n // keep form loading\n this.setState({\n 'isLoading': true\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n if (rejection.code === 'inactive_admin') {\n _snackbar2.default.info(rejection.detail);\n } else if (rejection.code === 'inactive_user') {\n _snackbar2.default.info(rejection.detail);\n this.setState({\n 'showActivation': true\n });\n } else if (rejection.code === 'banned') {\n (0, _bannedPage2.default)(rejection.detail);\n _modal2.default.hide();\n } else {\n _snackbar2.default.error(rejection.detail);\n }\n } else if (rejection.status === 403 && rejection.ban) {\n (0, _bannedPage2.default)(rejection.ban);\n _modal2.default.hide();\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'getActivationButton',\n value: function getActivationButton() {\n if (!this.state.showActivation) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'a',\n {\n className: 'btn btn-success btn-block',\n href: _index2.default.get('REQUEST_ACTIVATION_URL')\n },\n gettext(\"Activate account\")\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n {\n className: 'modal-dialog modal-sm modal-sign-in',\n role: 'document'\n },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Sign in\")\n )\n ),\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'div',\n { className: 'form-group' },\n _react2.default.createElement(\n 'div',\n { className: 'control-input' },\n _react2.default.createElement('input', {\n className: 'form-control input-lg',\n disabled: this.state.isLoading,\n id: 'id_username',\n onChange: this.bindInput('username'),\n placeholder: gettext(\"Username or e-mail\"),\n type: 'text',\n value: this.state.username\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'form-group' },\n _react2.default.createElement(\n 'div',\n { className: 'control-input' },\n _react2.default.createElement('input', {\n className: 'form-control input-lg',\n disabled: this.state.isLoading,\n id: 'id_password',\n onChange: this.bindInput('password'),\n placeholder: gettext(\"Password\"),\n type: 'password',\n value: this.state.password\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n this.getActivationButton(),\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-primary btn-block',\n loading: this.state.isLoading\n },\n gettext(\"Sign in\")\n ),\n _react2.default.createElement(\n 'a',\n {\n className: 'btn btn-default btn-block',\n href: _index2.default.get('FORGOTTEN_PASSWORD_URL')\n },\n gettext(\"Forgot password?\")\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../index\":291,\"../services/ajax\":352,\"../services/modal\":358,\"../services/snackbar\":363,\"../utils/banned-page\":366,\"./button\":5,\"./form\":52,\"react\":\"react\"}],205:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Snackbar = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.select = select;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n/* jshint ignore:start */\nvar TYPES_CLASSES = {\n 'info': 'alert-info',\n 'success': 'alert-success',\n 'warning': 'alert-warning',\n 'error': 'alert-danger'\n};\n/* jshint ignore:end */\n\nvar Snackbar = exports.Snackbar = function (_React$Component) {\n _inherits(Snackbar, _React$Component);\n\n function Snackbar() {\n _classCallCheck(this, Snackbar);\n\n return _possibleConstructorReturn(this, (Snackbar.__proto__ || Object.getPrototypeOf(Snackbar)).apply(this, arguments));\n }\n\n _createClass(Snackbar, [{\n key: 'getSnackbarClass',\n value: function getSnackbarClass() {\n var snackbarClass = 'alerts-snackbar';\n if (this.props.isVisible) {\n snackbarClass += ' in';\n } else {\n snackbarClass += ' out';\n }\n return snackbarClass;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getSnackbarClass() },\n _react2.default.createElement(\n 'p',\n { className: 'alert ' + TYPES_CLASSES[this.props.type] },\n this.props.message\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return Snackbar;\n}(_react2.default.Component);\n\nfunction select(state) {\n return state.snackbar;\n}\n\n},{\"react\":\"react\"}],206:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n \"div\",\n { className: \"page-breadcrumbs\" },\n _react2.default.createElement(\n \"div\",\n { className: \"container\" },\n _react2.default.createElement(\n \"ol\",\n { className: \"breadcrumb hidden-xs\" },\n props.path.map(function (item) {\n return _react2.default.createElement(Breadcrumb, {\n key: item.id,\n node: item\n });\n })\n ),\n _react2.default.createElement(GoBack, props)\n )\n );\n};\n\nexports.Breadcrumb = Breadcrumb;\nexports.GoBack = GoBack;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction Breadcrumb(props) {\n return _react2.default.createElement(\n \"li\",\n null,\n _react2.default.createElement(\n \"a\",\n { href: props.node.url.index },\n props.node.name\n )\n );\n}\n\nfunction GoBack(props) {\n var lastItem = props.path[props.path.length - 1];\n\n return _react2.default.createElement(\n \"a\",\n { href: lastItem.url.index, className: \"go-back-sm visible-xs-block\" },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"chevron_left\"\n ),\n lastItem.name\n );\n}\n/* jshint ignore:end */\n\n},{\"react\":\"react\"}],207:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.Moderation = Moderation;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _breadcrumbs = require('./breadcrumbs');\n\nvar _breadcrumbs2 = _interopRequireDefault(_breadcrumbs);\n\nvar _thread = require('../moderation/thread');\n\nvar _stats = require('./stats');\n\nvar _stats2 = _interopRequireDefault(_stats);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _validators = require('../../posting/utils/validators');\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _thread2 = require('../../../reducers/thread');\n\nvar thread = _interopRequireWildcard(_thread2);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onChange = function (event) {\n _this.changeValue('title', event.target.value);\n };\n\n _this.onEdit = function () {\n _this.setState({\n isEditing: true\n });\n };\n\n _this.onCancel = function () {\n _this.setState({\n title: _this.props.thread.title,\n\n isEditing: false\n });\n };\n\n _this.state = {\n isEditing: false,\n isLoading: false,\n\n title: props.thread.title,\n\n validators: {\n title: (0, _validators.getTitleValidators)()\n },\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n if (!this.state.title.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter thread title.\"));\n return false;\n }\n\n var errors = this.validate();\n\n if (errors.title) {\n _snackbar2.default.error(errors.title[0]);\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.patch(this.props.thread.api.index, [{ op: 'replace', path: 'title', value: this.state.title }]);\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(data) {\n _store2.default.dispatch(thread.update(data));\n\n this.setState({\n 'isEditing': false\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n var _props = this.props,\n thread = _props.thread,\n user = _props.user;\n\n var showModeration = !!user.id && (0, _thread.isModerationVisible)(thread);\n\n if (this.state.isEditing) {\n return _react2.default.createElement(\n 'div',\n { className: 'page-header' },\n _react2.default.createElement(_breadcrumbs2.default, { path: thread.path }),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row xs-margin-top title-edit-form' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-6 col-md-6' },\n _react2.default.createElement('input', {\n className: 'form-control',\n type: 'text',\n value: this.state.title,\n onChange: this.onChange\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-6 col-md-4' },\n _react2.default.createElement(\n 'div',\n { className: 'row xs-margin-top-half sm-margin-top-no md-margin-top-no' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-6' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-primary btn-block btn-outline',\n disabled: this.state.isLoading,\n title: gettext(\"Change title\")\n },\n gettext(\"Save changes\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-6' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-outline',\n disabled: this.state.isLoading,\n onClick: this.onCancel,\n title: gettext(\"Cancel\"),\n type: 'button'\n },\n gettext(\"Cancel\")\n )\n )\n )\n )\n )\n )\n ),\n _react2.default.createElement(_stats2.default, { thread: thread })\n );\n } else if (user.id && thread.acl.can_edit) {\n return _react2.default.createElement(\n 'div',\n { className: 'page-header' },\n _react2.default.createElement(_breadcrumbs2.default, { path: thread.path }),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: showModeration ? \"col-sm-9 col-md-8\" : \"col-sm-10 col-md-10\" },\n _react2.default.createElement(\n 'h1',\n null,\n thread.title\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: showModeration ? \"col-sm-3 col-md-4\" : \"col-sm-3 col-md-2\" },\n _react2.default.createElement(\n 'div',\n { className: 'row xs-margin-top md-margin-top-no' },\n _react2.default.createElement(\n 'div',\n { className: showModeration ? \"col-xs-6\" : \"col-xs-12\" },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-outline',\n onClick: this.onEdit,\n title: gettext(\"Edit title\"),\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'edit'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'hidden-sm' },\n gettext(\"Edit\")\n )\n )\n ),\n showModeration && _react2.default.createElement(Moderation, this.props)\n )\n )\n )\n ),\n _react2.default.createElement(_stats2.default, { thread: thread })\n );\n } else if (showModeration) {\n return _react2.default.createElement(\n 'div',\n { className: 'page-header' },\n _react2.default.createElement(_breadcrumbs2.default, { path: thread.path }),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-9 col-md-10' },\n _react2.default.createElement(\n 'h1',\n null,\n thread.title\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-3 col-md-2' },\n _react2.default.createElement(\n 'div',\n { className: 'row xs-margin-top md-margin-top-no' },\n _react2.default.createElement(Moderation, _extends({\n isSingle: true\n }, this.props))\n )\n )\n )\n ),\n _react2.default.createElement(_stats2.default, { thread: thread })\n );\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'page-header' },\n _react2.default.createElement(_breadcrumbs2.default, { path: thread.path }),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'h1',\n null,\n thread.title\n )\n ),\n _react2.default.createElement(_stats2.default, { thread: thread })\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\nfunction Moderation(props) {\n return _react2.default.createElement(\n 'div',\n { className: props.isSingle ? \"col-xs-12\" : \"col-xs-6\" },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group btn-group-justified' },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-expanded': 'false',\n 'aria-haspopup': 'true',\n className: 'btn btn-default btn-outline dropdown-toggle',\n 'data-toggle': 'dropdown',\n disabled: props.thread.isBusy,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'settings'\n ),\n _react2.default.createElement(\n 'span',\n { className: props.isSingle ? \"\" : \"hidden-sm\" },\n gettext(\"Moderation\")\n )\n ),\n _react2.default.createElement(_thread.ModerationControls, {\n posts: props.posts,\n thread: props.thread,\n user: props.user\n })\n )\n )\n );\n}\n\n},{\"../../../reducers/thread\":347,\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../form\":52,\"../../posting/utils/validators\":137,\"../moderation/thread\":216,\"./breadcrumbs\":206,\"./stats\":208,\"react\":\"react\"}],208:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Weight = Weight;\nexports.Unapproved = Unapproved;\nexports.IsHidden = IsHidden;\nexports.IsClosed = IsClosed;\nexports.Replies = Replies;\nexports.LastReply = LastReply;\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'header-stats' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-inline' },\n _react2.default.createElement(Weight, { thread: props.thread }),\n _react2.default.createElement(Unapproved, { thread: props.thread }),\n _react2.default.createElement(IsHidden, { thread: props.thread }),\n _react2.default.createElement(IsClosed, { thread: props.thread }),\n _react2.default.createElement(Replies, { thread: props.thread }),\n _react2.default.createElement(LastReply, { thread: props.thread })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _escapeHtml = require('../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nvar LAST_POSTER_URL = '%(user)s';\nvar LAST_POSTER_SPAN = '%(user)s';\nvar LAST_REPLY = '%(relative)s';\n\nfunction Weight(props) {\n if (props.thread.weight == 2) {\n return _react2.default.createElement(\n 'li',\n { className: 'thread-pinned-globally' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'bookmark'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-legend' },\n gettext(\"Pinned globally\")\n )\n );\n } else if (props.thread.weight == 1) {\n return _react2.default.createElement(\n 'li',\n { className: 'thread-pinned-locally' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'bookmark_border'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-legend' },\n gettext(\"Pinned locally\")\n )\n );\n } else {\n return null;\n }\n}\n\nfunction Unapproved(props) {\n if (props.thread.is_unapproved) {\n return _react2.default.createElement(\n 'li',\n { className: 'thread-unapproved' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'remove_circle'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-legend' },\n gettext(\"Unapproved\")\n )\n );\n } else if (props.thread.has_unapproved_posts) {\n return _react2.default.createElement(\n 'li',\n { className: 'thread-unapproved-posts' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'remove_circle_outline'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-legend' },\n gettext(\"Unapproved posts\")\n )\n );\n } else {\n return null;\n }\n}\n\nfunction IsHidden(props) {\n if (props.thread.is_hidden) {\n return _react2.default.createElement(\n 'li',\n { className: 'thread-hidden' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility_off'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-legend' },\n gettext(\"Hidden\")\n )\n );\n } else {\n return null;\n }\n}\n\nfunction IsClosed(props) {\n if (props.thread.is_closed) {\n return _react2.default.createElement(\n 'li',\n { className: 'thread-closed' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_outline'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-legend' },\n gettext(\"Closed\")\n )\n );\n } else {\n return null;\n }\n}\n\nfunction Replies(props) {\n var message = ngettext(\"%(replies)s reply\", \"%(replies)s replies\", props.thread.replies);\n var legend = interpolate(message, { 'replies': props.thread.replies }, true);\n\n return _react2.default.createElement(\n 'li',\n { className: 'thread-replies' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'forum'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-legend' },\n legend\n )\n );\n}\n\n/* jshint ignore:end */\nfunction LastReply(props) {\n var user = null;\n if (props.thread.url.last_poster) {\n user = interpolate(LAST_POSTER_URL, {\n url: (0, _escapeHtml2.default)(props.thread.url.last_poster),\n user: (0, _escapeHtml2.default)(props.thread.last_poster_name)\n }, true);\n } else {\n user = interpolate(LAST_POSTER_SPAN, {\n user: (0, _escapeHtml2.default)(props.thread.last_poster_name)\n }, true);\n };\n\n var date = interpolate(LAST_REPLY, {\n absolute: (0, _escapeHtml2.default)(props.thread.last_post_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(props.thread.last_post_on.fromNow())\n }, true);\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"last reply by %(user)s %(date)s\")), {\n date: date, user: user\n }, true);\n\n return _react2.default.createElement('li', { className: 'thread-last-reply', dangerouslySetInnerHTML: { __html: message } });\n}\n\n},{\"../../../utils/escape-html\":370,\"react\":\"react\"}],209:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.approve = approve;\nexports.protect = protect;\nexports.unprotect = unprotect;\nexports.hide = hide;\nexports.unhide = unhide;\nexports.patch = patch;\nexports.merge = merge;\nexports.remove = remove;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _post = require('../../../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _posts = require('../../../../reducers/posts');\n\nvar posts = _interopRequireWildcard(_posts);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _errorsList = require('./errors-list');\n\nvar _errorsList2 = _interopRequireDefault(_errorsList);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:line\n\nfunction approve(props) {\n var selection = props.selection;\n\n\n var ops = [{ 'op': 'replace', 'path': 'is-unapproved', 'value': false }];\n\n var newState = selection.map(function (post) {\n return {\n id: post.id,\n is_unapproved: false\n };\n });\n\n var previousState = selection.map(function (post) {\n return {\n id: post.id,\n is_unapproved: post.is_unapproved\n };\n });\n\n patch(props, ops, newState, previousState);\n} // jshint ignore:line\n// jshint ignore:line\nfunction protect(props) {\n var selection = props.selection;\n\n\n var ops = [{ 'op': 'replace', 'path': 'is-protected', 'value': true }];\n\n var newState = selection.map(function (post) {\n return {\n id: post.id,\n is_protected: true\n };\n });\n\n var previousState = selection.map(function (post) {\n return {\n id: post.id,\n is_protected: post.is_protected\n };\n });\n\n patch(props, ops, newState, previousState);\n}\n\nfunction unprotect(props) {\n var selection = props.selection;\n\n\n var ops = [{ 'op': 'replace', 'path': 'is-protected', 'value': false }];\n\n var newState = selection.map(function (post) {\n return {\n id: post.id,\n is_protected: false\n };\n });\n\n var previousState = selection.map(function (post) {\n return {\n id: post.id,\n is_protected: post.is_protected\n };\n });\n\n patch(props, ops, newState, previousState);\n}\n\nfunction hide(props) {\n var selection = props.selection;\n\n\n var ops = [{ 'op': 'replace', 'path': 'is-hidden', 'value': true }];\n\n var newState = selection.map(function (post) {\n return {\n id: post.id,\n is_hidden: true,\n hidden_on: (0, _moment2.default)(),\n hidden_by_name: props.user.username,\n url: Object.assign(post.url, {\n hidden_by: props.user.url\n })\n };\n });\n\n var previousState = selection.map(function (post) {\n return {\n id: post.id,\n is_hidden: post.is_hidden,\n hidden_on: post.hidden_on,\n hidden_by_name: post.hidden_by_name,\n url: post.url\n };\n });\n\n patch(props, ops, newState, previousState);\n}\n\nfunction unhide(props) {\n var selection = props.selection;\n\n\n var ops = [{ 'op': 'replace', 'path': 'is-hidden', 'value': false }];\n\n var newState = selection.map(function (post) {\n return {\n id: post.id,\n is_hidden: false,\n hidden_on: (0, _moment2.default)(),\n hidden_by_name: props.user.username,\n url: Object.assign(post.url, {\n hidden_by: props.user.url\n })\n };\n });\n\n var previousState = selection.map(function (post) {\n return {\n id: post.id,\n is_hidden: post.is_hidden,\n hidden_on: post.hidden_on,\n hidden_by_name: post.hidden_by_name,\n url: post.url\n };\n });\n\n patch(props, ops, newState, previousState);\n}\n\nfunction patch(props, ops, newState, previousState) {\n var selection = props.selection,\n thread = props.thread;\n\n // patch selected items\n\n newState.forEach(function (item) {\n post.patch(item, item);\n });\n\n // deselect all the things\n _store2.default.dispatch(posts.deselectAll());\n\n // call ajax\n var data = {\n ops: ops,\n\n ids: selection.map(function (post) {\n return post.id;\n })\n };\n\n _ajax2.default.patch(thread.api.posts.index, data).then(function (data) {\n data.forEach(function (item) {\n _store2.default.dispatch(post.patch(item, item));\n });\n }, function (rejection) {\n if (rejection.status !== 400) {\n // rollback all\n previousState.forEach(function (item) {\n _store2.default.dispatch(post.patch(item, item));\n });\n return _snackbar2.default.apiError(rejection);\n }\n\n var errors = [];\n var rollback = [];\n\n rejection.forEach(function (item) {\n if (item.detail) {\n errors.push(item);\n rollback.push(item.id);\n } else {\n _store2.default.dispatch(post.patch(item, item));\n }\n\n previousState.forEach(function (item) {\n if (rollback.indexOf(item) !== -1) {\n _store2.default.dispatch(post.patch(item, item));\n }\n });\n });\n\n var posts = {};\n selection.forEach(function (item) {\n posts[item.id] = item;\n });\n\n /* jshint ignore:start */\n _modal2.default.show(_react2.default.createElement(_errorsList2.default, {\n errors: errors,\n posts: posts\n }));\n /* jshint ignore:end */\n });\n}\n\nfunction merge(props) {\n var confirmed = confirm(gettext(\"Are you sure you want to merge selected posts? This action is not reversible!\"));\n if (!confirmed) {\n return;\n }\n\n props.selection.slice(1).map(function (selection) {\n _store2.default.dispatch(post.patch(selection, {\n isDeleted: true\n }));\n });\n\n _ajax2.default.post(props.thread.api.posts.merge, {\n posts: props.selection.map(function (post) {\n return post.id;\n })\n }).then(function (data) {\n _store2.default.dispatch(post.patch(data, post.hydrate(data)));\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n props.selection.slice(1).map(function (selection) {\n _store2.default.dispatch(post.patch(selection, {\n isDeleted: false\n }));\n });\n });\n\n _store2.default.dispatch(posts.deselectAll());\n}\n\nfunction remove(props) {\n var confirmed = confirm(gettext(\"Are you sure you want to delete selected posts? This action is not reversible!\"));\n if (!confirmed) {\n return;\n }\n\n props.selection.map(function (selection) {\n _store2.default.dispatch(post.patch(selection, {\n isDeleted: true\n }));\n });\n\n var ids = props.selection.map(function (post) {\n return post.id;\n });\n\n _ajax2.default.delete(props.thread.api.posts.index, ids).then(function () {\n return;\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n props.selection.map(function (selection) {\n _store2.default.dispatch(post.patch(selection, {\n isDeleted: false\n }));\n });\n });\n\n _store2.default.dispatch(posts.deselectAll());\n}\n\n},{\"../../../../reducers/post\":340,\"../../../../reducers/posts\":341,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"./errors-list\":211,\"moment\":\"moment\",\"react\":\"react\"}],210:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Delete = exports.Unhide = exports.Hide = exports.Unprotect = exports.Protect = exports.Split = exports.Move = exports.Merge = exports.Approve = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'ul',\n { className: 'dropdown-menu' },\n _react2.default.createElement(Approve, props),\n _react2.default.createElement(Merge, props),\n _react2.default.createElement(Move, props),\n _react2.default.createElement(Split, props),\n _react2.default.createElement(Protect, props),\n _react2.default.createElement(Unprotect, props),\n _react2.default.createElement(Unhide, props),\n _react2.default.createElement(Hide, props),\n _react2.default.createElement(Delete, props)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _actions = require('./actions');\n\nvar moderation = _interopRequireWildcard(_actions);\n\nvar _move = require('./move');\n\nvar _move2 = _interopRequireDefault(_move);\n\nvar _split = require('./split');\n\nvar _split2 = _interopRequireDefault(_split);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar Approve = exports.Approve = function (_React$Component) {\n _inherits(Approve, _React$Component);\n\n function Approve() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Approve);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Approve.__proto__ || Object.getPrototypeOf(Approve)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n moderation.approve(_this.props);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Approve, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return post.acl.can_approve && post.is_unapproved;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'done'\n ),\n gettext(\"Approve\")\n )\n );\n }\n }]);\n\n return Approve;\n}(_react2.default.Component);\n\nvar Merge = exports.Merge = function (_React$Component2) {\n _inherits(Merge, _React$Component2);\n\n function Merge() {\n var _ref2;\n\n var _temp2, _this2, _ret2;\n\n _classCallCheck(this, Merge);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, (_ref2 = Merge.__proto__ || Object.getPrototypeOf(Merge)).call.apply(_ref2, [this].concat(args))), _this2), _this2.onClick = function () {\n moderation.merge(_this2.props);\n }, _temp2), _possibleConstructorReturn(_this2, _ret2);\n }\n\n _createClass(Merge, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.length > 1 && this.props.selection.find(function (post) {\n return post.acl.can_merge;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'call_merge'\n ),\n gettext(\"Merge\")\n )\n );\n }\n }]);\n\n return Merge;\n}(_react2.default.Component);\n\nvar Move = exports.Move = function (_React$Component3) {\n _inherits(Move, _React$Component3);\n\n function Move() {\n var _ref3;\n\n var _temp3, _this3, _ret3;\n\n _classCallCheck(this, Move);\n\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _ret3 = (_temp3 = (_this3 = _possibleConstructorReturn(this, (_ref3 = Move.__proto__ || Object.getPrototypeOf(Move)).call.apply(_ref3, [this].concat(args))), _this3), _this3.onClick = function () {\n _modal2.default.show(_react2.default.createElement(_move2.default, _this3.props));\n }, _temp3), _possibleConstructorReturn(_this3, _ret3);\n }\n\n _createClass(Move, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return post.acl.can_move;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'arrow_forward'\n ),\n gettext(\"Move\")\n )\n );\n }\n }]);\n\n return Move;\n}(_react2.default.Component);\n\nvar Split = exports.Split = function (_React$Component4) {\n _inherits(Split, _React$Component4);\n\n function Split() {\n var _ref4;\n\n var _temp4, _this4, _ret4;\n\n _classCallCheck(this, Split);\n\n for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return _ret4 = (_temp4 = (_this4 = _possibleConstructorReturn(this, (_ref4 = Split.__proto__ || Object.getPrototypeOf(Split)).call.apply(_ref4, [this].concat(args))), _this4), _this4.onClick = function () {\n _modal2.default.show(_react2.default.createElement(_split2.default, _this4.props));\n }, _temp4), _possibleConstructorReturn(_this4, _ret4);\n }\n\n _createClass(Split, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return post.acl.can_move;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'call_split'\n ),\n gettext(\"Split\")\n )\n );\n }\n }]);\n\n return Split;\n}(_react2.default.Component);\n\nvar Protect = exports.Protect = function (_React$Component5) {\n _inherits(Protect, _React$Component5);\n\n function Protect() {\n var _ref5;\n\n var _temp5, _this5, _ret5;\n\n _classCallCheck(this, Protect);\n\n for (var _len5 = arguments.length, args = Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {\n args[_key5] = arguments[_key5];\n }\n\n return _ret5 = (_temp5 = (_this5 = _possibleConstructorReturn(this, (_ref5 = Protect.__proto__ || Object.getPrototypeOf(Protect)).call.apply(_ref5, [this].concat(args))), _this5), _this5.onClick = function () {\n moderation.protect(_this5.props);\n }, _temp5), _possibleConstructorReturn(_this5, _ret5);\n }\n\n _createClass(Protect, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return !post.is_protected && post.acl.can_protect;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_outline'\n ),\n gettext(\"Protect\")\n )\n );\n }\n }]);\n\n return Protect;\n}(_react2.default.Component);\n\nvar Unprotect = exports.Unprotect = function (_React$Component6) {\n _inherits(Unprotect, _React$Component6);\n\n function Unprotect() {\n var _ref6;\n\n var _temp6, _this6, _ret6;\n\n _classCallCheck(this, Unprotect);\n\n for (var _len6 = arguments.length, args = Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n args[_key6] = arguments[_key6];\n }\n\n return _ret6 = (_temp6 = (_this6 = _possibleConstructorReturn(this, (_ref6 = Unprotect.__proto__ || Object.getPrototypeOf(Unprotect)).call.apply(_ref6, [this].concat(args))), _this6), _this6.onClick = function () {\n moderation.unprotect(_this6.props);\n }, _temp6), _possibleConstructorReturn(_this6, _ret6);\n }\n\n _createClass(Unprotect, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return post.is_protected && post.acl.can_protect;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_open'\n ),\n gettext(\"Unprotect\")\n )\n );\n }\n }]);\n\n return Unprotect;\n}(_react2.default.Component);\n\nvar Hide = exports.Hide = function (_React$Component7) {\n _inherits(Hide, _React$Component7);\n\n function Hide() {\n var _ref7;\n\n var _temp7, _this7, _ret7;\n\n _classCallCheck(this, Hide);\n\n for (var _len7 = arguments.length, args = Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {\n args[_key7] = arguments[_key7];\n }\n\n return _ret7 = (_temp7 = (_this7 = _possibleConstructorReturn(this, (_ref7 = Hide.__proto__ || Object.getPrototypeOf(Hide)).call.apply(_ref7, [this].concat(args))), _this7), _this7.onClick = function () {\n moderation.hide(_this7.props);\n }, _temp7), _possibleConstructorReturn(_this7, _ret7);\n }\n\n _createClass(Hide, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return post.acl.can_hide && !post.is_hidden;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility_off'\n ),\n gettext(\"Hide\")\n )\n );\n }\n }]);\n\n return Hide;\n}(_react2.default.Component);\n\nvar Unhide = exports.Unhide = function (_React$Component8) {\n _inherits(Unhide, _React$Component8);\n\n function Unhide() {\n var _ref8;\n\n var _temp8, _this8, _ret8;\n\n _classCallCheck(this, Unhide);\n\n for (var _len8 = arguments.length, args = Array(_len8), _key8 = 0; _key8 < _len8; _key8++) {\n args[_key8] = arguments[_key8];\n }\n\n return _ret8 = (_temp8 = (_this8 = _possibleConstructorReturn(this, (_ref8 = Unhide.__proto__ || Object.getPrototypeOf(Unhide)).call.apply(_ref8, [this].concat(args))), _this8), _this8.onClick = function () {\n moderation.unhide(_this8.props);\n }, _temp8), _possibleConstructorReturn(_this8, _ret8);\n }\n\n _createClass(Unhide, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return post.acl.can_unhide && post.is_hidden;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility'\n ),\n gettext(\"Unhide\")\n )\n );\n }\n }]);\n\n return Unhide;\n}(_react2.default.Component);\n\nvar Delete = exports.Delete = function (_React$Component9) {\n _inherits(Delete, _React$Component9);\n\n function Delete() {\n var _ref9;\n\n var _temp9, _this9, _ret9;\n\n _classCallCheck(this, Delete);\n\n for (var _len9 = arguments.length, args = Array(_len9), _key9 = 0; _key9 < _len9; _key9++) {\n args[_key9] = arguments[_key9];\n }\n\n return _ret9 = (_temp9 = (_this9 = _possibleConstructorReturn(this, (_ref9 = Delete.__proto__ || Object.getPrototypeOf(Delete)).call.apply(_ref9, [this].concat(args))), _this9), _this9.onClick = function () {\n moderation.remove(_this9.props);\n }, _temp9), _possibleConstructorReturn(_this9, _ret9);\n }\n\n _createClass(Delete, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return post.acl.can_delete;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'clear'\n ),\n gettext(\"Delete\")\n )\n );\n }\n }]);\n\n return Delete;\n}(_react2.default.Component);\n\n},{\"../../../../services/modal\":358,\"./actions\":209,\"./move\":213,\"./split\":214,\"react\":\"react\"}],211:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var errors = _ref.errors,\n posts = _ref.posts;\n\n return _react2.default.createElement(\n \"div\",\n { className: \"modal-dialog\", role: \"document\" },\n _react2.default.createElement(\n \"div\",\n { className: \"modal-content\" },\n _react2.default.createElement(\n \"div\",\n { className: \"modal-header\" },\n _react2.default.createElement(\n \"button\",\n {\n \"aria-label\": gettext(\"Close\"),\n className: \"close\",\n \"data-dismiss\": \"modal\",\n type: \"button\"\n },\n _react2.default.createElement(\n \"span\",\n { \"aria-hidden\": \"true\" },\n \"\\xD7\"\n )\n ),\n _react2.default.createElement(\n \"h4\",\n { className: \"modal-title\" },\n gettext(\"Moderation\")\n )\n ),\n _react2.default.createElement(\n \"div\",\n { className: \"modal-body\" },\n _react2.default.createElement(\n \"p\",\n { className: \"lead\" },\n gettext(\"One or more posts could not be changed:\")\n ),\n _react2.default.createElement(\n \"ul\",\n { className: \"list-unstyled list-errored-items\" },\n errors.map(function (post) {\n return _react2.default.createElement(PostErrors, {\n errors: post.detail,\n key: post.id,\n post: posts[post.id]\n });\n })\n )\n )\n )\n );\n};\n\nexports.PostErrors = PostErrors;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction PostErrors(_ref2) {\n var errors = _ref2.errors,\n post = _ref2.post;\n\n var heading = interpolate(gettext(\"%(username)s on %(posted_on)s\"), {\n posted_on: post.posted_on.format('LL, LT'),\n username: post.poster_name\n }, true);\n\n return _react2.default.createElement(\n \"li\",\n null,\n _react2.default.createElement(\n \"h5\",\n null,\n heading,\n \":\"\n ),\n errors.map(function (error, i) {\n return _react2.default.createElement(\n \"p\",\n { key: i },\n error\n );\n })\n );\n}\n\n},{\"react\":\"react\"}],212:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; /* jshint ignore:start */\n\n\nexports.default = function (props) {\n if (!props.user.id || !isVisible(props.thread, props.posts.results)) {\n return null;\n }\n\n var selection = props.posts.results.filter(function (post) {\n return post.isSelected;\n });\n\n return _react2.default.createElement(\n 'div',\n { className: 'dropup' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-expanded': 'true',\n 'aria-haspopup': 'true',\n className: 'btn btn-default dropdown-toggle btn-block btn-outline',\n 'data-toggle': 'dropdown',\n disabled: !selection.length,\n type: 'button'\n },\n gettext(\"Posts options\")\n ),\n _react2.default.createElement(_dropdown2.default, _extends({ selection: selection }, props))\n );\n};\n\nexports.isVisible = isVisible;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _dropdown = require('./dropdown');\n\nvar _dropdown2 = _interopRequireDefault(_dropdown);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction isVisible(thread, posts) {\n if (thread.acl.can_merge_posts && posts.length > 1) {\n // fast test: show moderation menu if we can merge posts\n return true;\n }\n\n // slow test: show moderation if any of posts has moderation options\n var visible = false;\n posts.forEach(function (post) {\n if (!post.is_event) {\n var showModeration = post.acl.can_approve && post.is_unapproved || post.acl.can_delete || !post.is_hidden && post.acl.can_hide || post.acl.can_move || post.acl.can_merge || post.acl.can_protect || post.is_hidden && post.acl.can_unhide || post.acl.can_unprotect;\n\n if (showModeration) {\n visible = true;\n }\n }\n });\n return visible;\n}\n\n},{\"./dropdown\":210,\"react\":\"react\"}],213:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ModalHeader = ModalHeader;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _post = require('../../../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onUrlChange = function (event) {\n _this.changeValue('url', event.target.value);\n };\n\n _this.state = {\n isLoading: false,\n\n url: '',\n\n validators: {\n url: []\n },\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n if (!this.state.url.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter link to the other thread.\"));\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.thread.api.posts.move, {\n new_thread: this.state.url,\n posts: this.props.selection.map(function (post) {\n return post.id;\n })\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n this.props.selection.forEach(function (selection) {\n _store2.default.dispatch(post.patch(selection, {\n isDeleted: true\n }));\n });\n\n _modal2.default.hide();\n\n _snackbar2.default.success(gettext(\"Selected posts were moved to the other thread.\"));\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog', role: 'document' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(ModalHeader, null),\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n {\n 'for': 'id_url',\n label: gettext(\"Link to thread you want to move posts to\")\n },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n id: 'id_url',\n onChange: this.onUrlChange,\n value: this.state.url\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-primary', loading: this.state.isLoading },\n gettext(\"Move posts\")\n )\n )\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\nfunction ModalHeader(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Move posts\")\n )\n );\n}\n\n},{\"../../../../reducers/post\":340,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"../../../button\":5,\"../../../form\":52,\"../../../form-group\":51,\"react\":\"react\"}],214:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ModerationForm = exports.PostingConfig = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _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; }; /* jshint ignore:start */\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nexports.default = function (props) {\n return _react2.default.createElement(PostingConfig, _extends({}, props, { Form: ModerationForm }));\n};\n\nexports.Loader = Loader;\nexports.Error = Error;\nexports.Modal = Modal;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _categorySelect = require('../../../category-select');\n\nvar _categorySelect2 = _interopRequireDefault(_categorySelect);\n\nvar _modalLoader = require('../../../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _select = require('../../../select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nvar _post = require('../../../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _validators = require('../../../../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar PostingConfig = exports.PostingConfig = function (_React$Component) {\n _inherits(PostingConfig, _React$Component);\n\n function PostingConfig(props) {\n _classCallCheck(this, PostingConfig);\n\n var _this = _possibleConstructorReturn(this, (PostingConfig.__proto__ || Object.getPrototypeOf(PostingConfig)).call(this, props));\n\n _this.state = {\n isLoaded: false,\n isError: false,\n\n categories: []\n };\n return _this;\n }\n\n _createClass(PostingConfig, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(misago.get('THREAD_EDITOR_API')).then(function (data) {\n // hydrate categories, extract posting options\n var categories = data.map(function (item) {\n return Object.assign(item, {\n disabled: item.post === false,\n label: item.name,\n value: item.id,\n post: item.post\n });\n });\n\n _this2.setState({\n isLoaded: true,\n categories: categories\n });\n }, function (rejection) {\n _this2.setState({\n isError: rejection.detail\n });\n });\n }\n }, {\n key: 'render',\n value: function render() {\n if (this.state.isError) {\n return _react2.default.createElement(Error, { message: this.state.isError });\n } else if (this.state.isLoaded) {\n return _react2.default.createElement(ModerationForm, _extends({}, this.props, { categories: this.state.categories }));\n } else {\n return _react2.default.createElement(Loader, null);\n }\n }\n }]);\n\n return PostingConfig;\n}(_react2.default.Component);\n\nvar ModerationForm = exports.ModerationForm = function (_Form) {\n _inherits(ModerationForm, _Form);\n\n function ModerationForm(props) {\n _classCallCheck(this, ModerationForm);\n\n var _this3 = _possibleConstructorReturn(this, (ModerationForm.__proto__ || Object.getPrototypeOf(ModerationForm)).call(this, props));\n\n _this3.onCategoryChange = function (ev) {\n var categoryId = ev.target.value;\n var newState = {\n category: categoryId\n };\n\n if (_this3.acl[categoryId].can_pin_threads < newState.weight) {\n newState.weight = 0;\n }\n\n if (!_this3.acl[categoryId].can_hide_threads) {\n newState.is_hidden = 0;\n }\n\n if (!_this3.acl[categoryId].can_close_threads) {\n newState.is_closed = false;\n }\n\n _this3.setState(newState);\n };\n\n _this3.state = {\n isLoading: false,\n\n title: '',\n category: null,\n categories: props.categories,\n weight: 0,\n is_hidden: 0,\n is_closed: false,\n\n validators: {\n title: [validators.required()]\n },\n\n errors: {}\n };\n\n _this3.isHiddenChoices = [{\n 'value': 0,\n 'icon': 'visibility',\n 'label': gettext(\"No\")\n }, {\n 'value': 1,\n 'icon': 'visibility_off',\n 'label': gettext(\"Yes\")\n }];\n\n _this3.isClosedChoices = [{\n 'value': false,\n 'icon': 'lock_outline',\n 'label': gettext(\"No\")\n }, {\n 'value': true,\n 'icon': 'lock',\n 'label': gettext(\"Yes\")\n }];\n\n _this3.acl = {};\n _this3.props.categories.forEach(function (category) {\n if (category.post) {\n if (!_this3.state.category) {\n _this3.state.category = category.id;\n }\n\n _this3.acl[category.id] = {\n can_pin_threads: category.post.pin,\n can_close_threads: category.post.close,\n can_hide_threads: category.post.hide\n };\n }\n });\n return _this3;\n }\n\n _createClass(ModerationForm, [{\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n this.setState({\n errors: this.validate()\n });\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.thread.api.posts.split, {\n title: this.state.title,\n category: this.state.category,\n weight: this.state.weight,\n is_hidden: this.state.is_hidden,\n is_closed: this.state.is_closed,\n posts: this.props.selection.map(function (post) {\n return post.id;\n })\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n this.props.selection.forEach(function (selection) {\n _store2.default.dispatch(post.patch(selection, {\n isDeleted: true\n }));\n });\n\n _modal2.default.hide();\n\n _snackbar2.default.success(gettext(\"Selected posts were split into new thread.\"));\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n this.setState({\n 'errors': Object.assign({}, this.state.errors, rejection)\n });\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n } else if (rejection.status === 403 && Array.isArray(rejection)) {\n _modal2.default.show(_react2.default.createElement(ErrorsModal, { errors: rejection }));\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'getWeightChoices',\n value: function getWeightChoices() {\n var choices = [{\n 'value': 0,\n 'icon': 'remove',\n 'label': gettext(\"Not pinned\")\n }, {\n 'value': 1,\n 'icon': 'bookmark_border',\n 'label': gettext(\"Pinned locally\")\n }];\n\n if (this.acl[this.state.category].can_pin_threads == 2) {\n choices.push({\n 'value': 2,\n 'icon': 'bookmark',\n 'label': gettext(\"Pinned globally\")\n });\n }\n\n return choices;\n }\n }, {\n key: 'renderWeightField',\n value: function renderWeightField() {\n if (this.acl[this.state.category].can_pin_threads) {\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Thread weight\"),\n 'for': 'id_weight',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8' },\n _react2.default.createElement(_select2.default, { id: 'id_weight',\n onChange: this.bindInput('weight'),\n value: this.state.weight,\n choices: this.getWeightChoices() })\n );\n } else {\n return null;\n }\n }\n }, {\n key: 'renderHiddenField',\n value: function renderHiddenField() {\n if (this.acl[this.state.category].can_hide_threads) {\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Hide thread\"),\n 'for': 'id_is_hidden',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8' },\n _react2.default.createElement(_select2.default, { id: 'id_is_closed',\n onChange: this.bindInput('is_hidden'),\n value: this.state.is_hidden,\n choices: this.isHiddenChoices })\n );\n } else {\n return null;\n }\n }\n }, {\n key: 'renderClosedField',\n value: function renderClosedField() {\n if (this.acl[this.state.category].can_close_threads) {\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Close thread\"),\n 'for': 'id_is_closed',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8' },\n _react2.default.createElement(_select2.default, { id: 'id_is_closed',\n onChange: this.bindInput('is_closed'),\n value: this.state.is_closed,\n choices: this.isClosedChoices })\n );\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n Modal,\n { className: 'modal-dialog' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Thread title\"),\n 'for': 'id_title',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8',\n validation: this.state.errors.title },\n _react2.default.createElement('input', { id: 'id_title',\n className: 'form-control',\n type: 'text',\n onChange: this.bindInput('title'),\n value: this.state.title })\n ),\n _react2.default.createElement('div', { className: 'clearfix' }),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Category\"),\n 'for': 'id_category',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8',\n validation: this.state.errors.category },\n _react2.default.createElement(_categorySelect2.default, { id: 'id_category',\n onChange: this.onCategoryChange,\n value: this.state.category,\n choices: this.state.categories })\n ),\n _react2.default.createElement('div', { className: 'clearfix' }),\n this.renderWeightField(),\n this.renderHiddenField(),\n this.renderClosedField()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Split posts\")\n )\n )\n )\n );\n }\n }]);\n\n return ModerationForm;\n}(_form2.default);\n\nfunction Loader() {\n return _react2.default.createElement(\n Modal,\n { className: 'modal-dialog' },\n _react2.default.createElement(_modalLoader2.default, null)\n );\n}\n\nfunction Error(props) {\n return _react2.default.createElement(\n Modal,\n { className: 'modal-dialog modal-message' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"You can't move selected posts at the moment.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n props.message\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n gettext(\"Ok\")\n )\n )\n );\n}\n\nfunction Modal(props) {\n return _react2.default.createElement(\n 'div',\n { className: props.className, role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Split posts into new thread\")\n )\n ),\n props.children\n )\n );\n}\n\n},{\"../../../../reducers/post\":340,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"../../../../utils/validators\":380,\"../../../button\":5,\"../../../category-select\":18,\"../../../form\":52,\"../../../form-group\":51,\"../../../modal-loader\":57,\"../../../select\":203,\"react\":\"react\"}],215:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _merge = require('./merge');\n\nvar _merge2 = _interopRequireDefault(_merge);\n\nvar _move = require('./move');\n\nvar _move2 = _interopRequireDefault(_move);\n\nvar _thread = require('../../../../reducers/thread');\n\nvar thread = _interopRequireWildcard(_thread);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.callApi = function (ops, successMessage) {\n _store2.default.dispatch(thread.busy());\n\n // by the chance update thread acl too\n ops.push({ op: 'add', path: 'acl', value: true });\n\n _ajax2.default.patch(_this.props.thread.api.index, ops).then(function (data) {\n _store2.default.dispatch(thread.update(data));\n _store2.default.dispatch(thread.release());\n _snackbar2.default.success(successMessage);\n }, function (rejection) {\n _store2.default.dispatch(thread.release());\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n });\n }, _this.pinGlobally = function () {\n _this.callApi([{\n op: 'replace',\n path: 'weight',\n value: 2\n }], gettext(\"Thread has been pinned globally.\"));\n }, _this.pinLocally = function () {\n _this.callApi([{\n op: 'replace',\n path: 'weight',\n value: 1\n }], gettext(\"Thread has been pinned locally.\"));\n }, _this.unpin = function () {\n _this.callApi([{\n op: 'replace',\n path: 'weight',\n value: 0\n }], gettext(\"Thread has been unpinned.\"));\n }, _this.approve = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-unapproved',\n value: false\n }], gettext(\"Thread has been approved.\"));\n }, _this.open = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-closed',\n value: false\n }], gettext(\"Thread has been opened.\"));\n }, _this.close = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-closed',\n value: true\n }], gettext(\"Thread has been closed.\"));\n }, _this.unhide = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-hidden',\n value: false\n }], gettext(\"Thread has been made visible.\"));\n }, _this.hide = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-hidden',\n value: true\n }], gettext(\"Thread has been made hidden.\"));\n }, _this.move = function () {\n _modal2.default.show(_react2.default.createElement(_move2.default, {\n posts: _this.props.posts,\n thread: _this.props.thread\n }));\n }, _this.merge = function () {\n _modal2.default.show(_react2.default.createElement(_merge2.default, { thread: _this.props.thread }));\n }, _this.delete = function () {\n if (!confirm(gettext(\"Are you sure you want to delete this thread?\"))) {\n return;\n }\n\n _store2.default.dispatch(thread.busy());\n\n _ajax2.default.delete(_this.props.thread.api.index).then(function (data) {\n _snackbar2.default.success(gettext(\"Thread has been deleted.\"));\n window.location = _this.props.thread.category.url.index;\n }, function (rejection) {\n _store2.default.dispatch(thread.release());\n _snackbar2.default.apiError(rejection);\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'getPinGloballyButton',\n value: function getPinGloballyButton() {\n if (this.props.thread.weight === 2) return null;\n if (!this.props.thread.acl.can_pin_globally) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.pinGlobally,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'bookmark'\n ),\n gettext(\"Pin globally\")\n )\n );\n }\n }, {\n key: 'getPinLocallyButton',\n value: function getPinLocallyButton() {\n if (this.props.thread.weight === 1) return null;\n if (!this.props.thread.acl.can_pin) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.pinLocally,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'bookmark_border'\n ),\n gettext(\"Pin locally\")\n )\n );\n }\n }, {\n key: 'getUnpinButton',\n value: function getUnpinButton() {\n if (this.props.thread.weight === 0) return null;\n if (!this.props.thread.acl.can_pin) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.unpin,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'panorama_fish_eye'\n ),\n gettext(\"Unpin\")\n )\n );\n }\n }, {\n key: 'getMoveButton',\n value: function getMoveButton() {\n if (!this.props.thread.acl.can_move) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.move,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'arrow_forward'\n ),\n gettext(\"Move\")\n )\n );\n }\n }, {\n key: 'getMergeButton',\n value: function getMergeButton() {\n if (!this.props.thread.acl.can_merge) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.merge,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'call_merge'\n ),\n gettext(\"Merge\")\n )\n );\n }\n }, {\n key: 'getApproveButton',\n value: function getApproveButton() {\n if (!this.props.thread.is_unapproved) return null;\n if (!this.props.thread.acl.can_approve) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.approve,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'done'\n ),\n gettext(\"Approve\")\n )\n );\n }\n }, {\n key: 'getOpenButton',\n value: function getOpenButton() {\n if (!this.props.thread.is_closed) return null;\n if (!this.props.thread.acl.can_close) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.open,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_open'\n ),\n gettext(\"Open\")\n )\n );\n }\n }, {\n key: 'getCloseButton',\n value: function getCloseButton() {\n if (this.props.thread.is_closed) return null;\n if (!this.props.thread.acl.can_close) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.close,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_outline'\n ),\n gettext(\"Close\")\n )\n );\n }\n }, {\n key: 'getUnhideButton',\n value: function getUnhideButton() {\n if (!this.props.thread.is_hidden) return null;\n if (!this.props.thread.acl.can_unhide) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.unhide,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility'\n ),\n gettext(\"Unhide\")\n )\n );\n }\n }, {\n key: 'getHideButton',\n value: function getHideButton() {\n if (this.props.thread.is_hidden) return null;\n if (!this.props.thread.acl.can_hide) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.hide,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility_off'\n ),\n gettext(\"Hide\")\n )\n );\n }\n }, {\n key: 'getDeleteButton',\n value: function getDeleteButton() {\n if (!this.props.thread.acl.can_delete) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.delete,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'clear'\n ),\n gettext(\"Delete\")\n )\n );\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'ul',\n { className: 'dropdown-menu dropdown-menu-right stick-to-bottom' },\n this.getPinGloballyButton(),\n this.getPinLocallyButton(),\n this.getUnpinButton(),\n this.getMoveButton(),\n this.getMergeButton(),\n this.getApproveButton(),\n this.getOpenButton(),\n this.getCloseButton(),\n this.getUnhideButton(),\n this.getHideButton(),\n this.getDeleteButton()\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../../reducers/thread\":347,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"./merge\":218,\"./move\":219,\"react\":\"react\"}],216:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.isModerationVisible = exports.ModerationControls = undefined;\n\nvar _controls = require('./controls');\n\nvar _controls2 = _interopRequireDefault(_controls);\n\nvar _isVisible = require('./is-visible');\n\nvar _isVisible2 = _interopRequireDefault(_isVisible);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.ModerationControls = _controls2.default;\nexports.isModerationVisible = _isVisible2.default;\n\n},{\"./controls\":215,\"./is-visible\":217}],217:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (thread) {\n return !!(thread.acl.can_approve && thread.is_unapproved || thread.acl.can_close || thread.acl.can_delete || thread.acl.can_hide || thread.acl.can_move || thread.acl.can_pin || thread.acl.can_pin_globally || thread.acl.can_unhide);\n};\n\n},{}],218:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ModalHeader = ModalHeader;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _form = require('../../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _mergePolls = require('../../../merge-polls');\n\nvar _mergePolls2 = _interopRequireDefault(_mergePolls);\n\nvar _thread = require('../../../../reducers/thread');\n\nvar thread = _interopRequireWildcard(_thread);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.handleSuccess = function (success) {\n _this.handleSuccessUnmounted(success);\n\n // keep form loading\n _this.setState({\n 'isLoading': true\n });\n };\n\n _this.handleSuccessUnmounted = function (success) {\n _snackbar2.default.success(gettext(\"Thread has been merged with other one.\"));\n window.location = success.url;\n };\n\n _this.handleError = function (rejection) {\n _store2.default.dispatch(thread.release());\n\n if (rejection.status === 400) {\n if (rejection.polls) {\n _modal2.default.show(_react2.default.createElement(_mergePolls2.default, {\n api: _this.props.thread.api.merge,\n data: { other_thread: _this.state.url },\n polls: rejection.polls,\n onError: _this.handleError,\n onSuccess: _this.handleSuccessUnmounted\n }));\n } else {\n _snackbar2.default.error(rejection.detail);\n }\n } else {\n _snackbar2.default.apiError(rejection);\n }\n };\n\n _this.onUrlChange = function (event) {\n _this.changeValue('url', event.target.value);\n };\n\n _this.state = {\n isLoading: false,\n\n url: '',\n\n validators: {\n url: []\n },\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n if (!this.state.url.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter link to the other thread.\"));\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n // freeze thread\n _store2.default.dispatch(thread.busy());\n\n return _ajax2.default.post(this.props.thread.api.merge, {\n other_thread: this.state.url\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog', role: 'document' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(ModalHeader, null),\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n {\n 'for': 'id_url',\n label: gettext(\"Link to thread you want to merge with\"),\n help_text: gettext(\"Merge will delete current thread and move its contents to the thread specified here.\")\n },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading || this.props.thread.isBusy,\n id: 'id_url',\n onChange: this.onUrlChange,\n value: this.state.url\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-primary', loading: this.state.isLoading || this.props.thread.isBusy },\n gettext(\"Merge thread\")\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\n/* jshint ignore:start */\n\n\nexports.default = _class;\nfunction ModalHeader(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Merge thread\")\n )\n );\n}\n/* jshint ignore:end */\n\n},{\"../../../../reducers/thread\":347,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"../../../form\":52,\"../../../form-group\":51,\"../../../merge-polls\":55,\"react\":\"react\"}],219:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ModalHeader = ModalHeader;\nexports.ModalLoading = ModalLoading;\nexports.ModalMessage = ModalMessage;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _form = require('../../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _categorySelect = require('../../../category-select');\n\nvar _categorySelect2 = _interopRequireDefault(_categorySelect);\n\nvar _modalLoader = require('../../../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _posts = require('../../../../reducers/posts');\n\nvar posts = _interopRequireWildcard(_posts);\n\nvar _thread = require('../../../../reducers/thread');\n\nvar thread = _interopRequireWildcard(_thread);\n\nvar _ = require('../../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onCategoryChange = function (event) {\n _this.changeValue('category', event.target.value);\n };\n\n _this.state = {\n isReady: false,\n isLoading: false,\n isError: false,\n\n category: null,\n categories: []\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(_2.default.get('THREAD_EDITOR_API')).then(function (data) {\n var category = null;\n\n // hydrate categories, extract posting options\n var categories = data.map(function (item) {\n // pick first category that allows posting and if it may, override it with initial one\n if (item.post !== false && !category) {\n category = item.id;\n }\n\n return Object.assign(item, {\n disabled: item.post === false,\n label: item.name,\n value: item.id\n });\n });\n\n _this2.setState({\n isReady: true,\n\n category: category,\n categories: categories\n });\n }, function (rejection) {\n _this2.setState({\n isError: rejection.detail\n });\n });\n }\n }, {\n key: 'send',\n value: function send() {\n // freeze thread\n _store2.default.dispatch(thread.busy());\n\n return _ajax2.default.patch(this.props.thread.api.index, [{ op: 'replace', path: 'category', value: this.state.category }]);\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess() {\n // refresh thread and displayed posts\n _ajax2.default.get(this.props.thread.api.posts.index, { page: this.props.posts.page }).then(function (data) {\n _store2.default.dispatch(thread.replace(data));\n _store2.default.dispatch(posts.load(data.post_set));\n _store2.default.dispatch(thread.release());\n\n _snackbar2.default.success(gettext(\"Thread has been moved.\"));\n _modal2.default.hide();\n }, function (rejection) {\n _store2.default.dispatch(thread.release());\n _snackbar2.default.apiError(rejection);\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n if (this.state.isReady) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog', role: 'document' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(ModalHeader, null),\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { 'for': 'id_category', label: gettext(\"New category\") },\n _react2.default.createElement(_categorySelect2.default, {\n choices: this.state.categories,\n disabled: this.state.isLoading || this.props.thread.isBusy,\n id: 'id_category',\n onChange: this.onCategoryChange,\n value: this.state.category\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-primary', loading: this.state.isLoading || this.props.thread.isBusy },\n gettext(\"Move thread\")\n )\n )\n )\n )\n );\n } else if (this.state.isError) {\n return _react2.default.createElement(ModalMessage, { message: this.state.isError });\n } else {\n return _react2.default.createElement(ModalLoading, null);\n }\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\n/* jshint ignore:start */\n\n\nexports.default = _class;\nfunction ModalHeader(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Move thread\")\n )\n );\n}\n\nfunction ModalLoading(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog', role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(ModalHeader, null),\n _react2.default.createElement(_modalLoader2.default, null)\n )\n );\n}\n\nfunction ModalMessage(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog modal-message', role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(ModalHeader, null),\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"You can't move this thread at the moment.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n props.message\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n gettext(\"Ok\")\n )\n )\n )\n );\n}\n/* jshint ignore:end */\n\n},{\"../../../..\":291,\"../../../../reducers/posts\":341,\"../../../../reducers/thread\":347,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"../../../category-select\":18,\"../../../form\":52,\"../../../form-group\":51,\"../../../modal-loader\":57,\"react\":\"react\"}],220:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'nav',\n { className: 'misago-pagination pull-left' },\n _react2.default.createElement(Pager, props),\n _react2.default.createElement(More, { more: props.posts.more })\n );\n};\n\nexports.Pager = Pager;\nexports.FirstPage = FirstPage;\nexports.PreviousPage = PreviousPage;\nexports.NextPage = NextPage;\nexports.LastPage = LastPage;\nexports.More = More;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction Pager(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'row row-paginator' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(FirstPage, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(PreviousPage, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(NextPage, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(LastPage, props)\n )\n );\n} /* jshint ignore:start */\nfunction FirstPage(props) {\n if (props.posts.isLoaded && props.posts.first) {\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-outline btn-icon',\n to: props.thread.url.index,\n title: gettext(\"Go to first page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'first_page'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-outline btn-icon disabled',\n title: gettext(\"Go to first page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'first_page'\n )\n );\n }\n}\n\nfunction PreviousPage(props) {\n if (props.posts.isLoaded && props.posts.page > 1) {\n var previousUrl = '';\n if (props.posts.previous) {\n previousUrl = props.posts.previous + '/';\n }\n\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-outline btn-icon',\n to: props.thread.url.index + previousUrl,\n title: gettext(\"Go to previous page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_left'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-outline btn-icon disabled',\n title: gettext(\"Go to previous page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_left'\n )\n );\n }\n}\n\nfunction NextPage(props) {\n if (props.posts.isLoaded && props.posts.more) {\n var nextUrl = '';\n if (props.posts.next) {\n nextUrl = props.posts.next + '/';\n }\n\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-outline btn-icon',\n to: props.thread.url.index + nextUrl,\n title: gettext(\"Go to next page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_right'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-outline btn-icon disabled',\n title: gettext(\"Go to next page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_right'\n )\n );\n }\n}\n\nfunction LastPage(props) {\n if (props.posts.isLoaded && props.posts.last) {\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-outline btn-icon',\n to: props.thread.url.index + props.posts.last + '/',\n title: gettext(\"Go to last page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'last_page'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-outline btn-icon disabled',\n title: gettext(\"Go to last page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'last_page'\n )\n );\n }\n}\n\nfunction More(props) {\n var message = null;\n if (props.more) {\n message = ngettext(\"There is %(more)s more post in this thread.\", \"There are %(more)s more posts in this thread.\", props.more);\n message = interpolate(message, { 'more': props.more }, true);\n } else {\n message = gettext(\"There are no more posts in this thread.\");\n }\n\n return _react2.default.createElement(\n 'p',\n null,\n message\n );\n}\n\n},{\"react\":\"react\",\"react-router\":\"react-router\"}],221:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'button',\n {\n className: props.className || 'btn btn-primary btn-outline',\n onClick: props.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chat'\n ),\n gettext(\"Reply\")\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],222:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.select = select;\nexports.paths = paths;\n\nvar _reactRedux = require('react-redux');\n\nvar _route = require('./route');\n\nvar _route2 = _interopRequireDefault(_route);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction select(store) {\n return {\n 'participants': store.participants,\n 'poll': store.poll,\n 'posts': store.posts,\n 'thread': store.thread,\n 'tick': store.tick.tick,\n 'user': store.auth.user\n };\n}\n\nfunction paths() {\n var thread = _index2.default.get('THREAD');\n var basePath = thread.url.index.replace(thread.slug + '-' + thread.pk, ':slug');\n\n return [{\n path: basePath,\n component: (0, _reactRedux.connect)(select)(_route2.default)\n }, {\n path: basePath + ':page/',\n component: (0, _reactRedux.connect)(select)(_route2.default)\n }];\n}\n\n},{\"../../index\":291,\"./route\":223,\"react-redux\":\"react-redux\"}],223:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _participants = require('../participants');\n\nvar _participants2 = _interopRequireDefault(_participants);\n\nvar _poll = require('../poll');\n\nvar _postsList = require('../posts-list');\n\nvar _postsList2 = _interopRequireDefault(_postsList);\n\nvar _header = require('./header');\n\nvar _header2 = _interopRequireDefault(_header);\n\nvar _toolbarTop = require('./toolbar-top');\n\nvar _toolbarTop2 = _interopRequireDefault(_toolbarTop);\n\nvar _toolbarBottom = require('./toolbar-bottom');\n\nvar _toolbarBottom2 = _interopRequireDefault(_toolbarBottom);\n\nvar _participants3 = require('../../reducers/participants');\n\nvar participants = _interopRequireWildcard(_participants3);\n\nvar _poll2 = require('../../reducers/poll');\n\nvar poll = _interopRequireWildcard(_poll2);\n\nvar _posts = require('../../reducers/posts');\n\nvar posts = _interopRequireWildcard(_posts);\n\nvar _thread = require('../../reducers/thread');\n\nvar thread = _interopRequireWildcard(_thread);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _polls = require('../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _pageTitle = require('../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.update = function (data) {\n _store2.default.dispatch(thread.replace(data));\n _store2.default.dispatch(posts.load(data.post_set));\n\n if (data.participants) {\n _store2.default.dispatch(participants.replace(data.participants));\n }\n\n if (data.poll) {\n _store2.default.dispatch(poll.replace(data.poll));\n }\n\n _this.setPageTitle();\n }, _this.openReplyForm = function () {\n _posting2.default.open({\n mode: 'REPLY',\n\n config: _this.props.thread.api.editor,\n submit: _this.props.thread.api.posts.index\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (this.shouldFetchData()) {\n this.fetchData();\n this.setPageTitle();\n }\n\n this.startPollingApi();\n }\n }, {\n key: 'componentDidUpdate',\n value: function componentDidUpdate() {\n if (this.shouldFetchData()) {\n this.fetchData();\n this.startPollingApi();\n this.setPageTitle();\n }\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this.stopPollingApi();\n }\n }, {\n key: 'shouldFetchData',\n value: function shouldFetchData() {\n if (this.props.posts.isLoaded) {\n var page = (this.props.params.page || 1) * 1;\n return page != this.props.posts.page;\n } else {\n return false;\n }\n }\n }, {\n key: 'fetchData',\n value: function fetchData() {\n var _this2 = this;\n\n _store2.default.dispatch(posts.unload());\n\n _ajax2.default.get(this.props.thread.api.posts.index, {\n page: this.props.params.page || 1\n }, 'posts').then(function (data) {\n _this2.update(data);\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n });\n }\n }, {\n key: 'startPollingApi',\n value: function startPollingApi() {\n _polls2.default.start({\n poll: 'thread-posts',\n\n url: this.props.thread.api.posts.index,\n data: {\n page: this.props.params.page || 1\n },\n update: this.update,\n\n frequency: 120 * 1000,\n delayed: true\n });\n }\n }, {\n key: 'stopPollingApi',\n value: function stopPollingApi() {\n _polls2.default.stop('thread-posts');\n }\n }, {\n key: 'setPageTitle',\n value: function setPageTitle() {\n _pageTitle2.default.set({\n title: this.props.thread.title,\n parent: this.props.thread.category.name,\n page: (this.props.params.page || 1) * 1\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n var className = 'page page-thread';\n if (this.props.thread.category.css_class) {\n className += ' page-thread-' + this.props.thread.category.css_class;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'page-header-bg' },\n _react2.default.createElement(_header2.default, this.props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(_toolbarTop2.default, _extends({\n openReplyForm: this.openReplyForm\n }, this.props)),\n _react2.default.createElement(_poll.Poll, {\n poll: this.props.poll,\n thread: this.props.thread,\n user: this.props.user\n }),\n _react2.default.createElement(_participants2.default, {\n participants: this.props.participants,\n thread: this.props.thread,\n user: this.props.user\n }),\n _react2.default.createElement(_postsList2.default, this.props),\n _react2.default.createElement(_toolbarBottom2.default, _extends({\n openReplyForm: this.openReplyForm\n }, this.props))\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../reducers/participants\":338,\"../../reducers/poll\":339,\"../../reducers/posts\":341,\"../../reducers/thread\":347,\"../../services/ajax\":352,\"../../services/page-title\":360,\"../../services/polls\":361,\"../../services/posting\":362,\"../../services/snackbar\":363,\"../../services/store\":364,\"../participants\":94,\"../poll\":99,\"../posts-list\":144,\"./header\":207,\"./toolbar-bottom\":225,\"./toolbar-top\":226,\"react\":\"react\"}],224:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Email = exports.Enable = exports.Disable = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n if (!props.user.id) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: props.className },\n _react2.default.createElement(\n 'button',\n {\n 'aria-expanded': 'true',\n 'aria-haspopup': 'true',\n className: 'btn btn-default dropdown-toggle btn-block btn-outline',\n 'data-toggle': 'dropdown',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n getIcon(props.thread.subscription)\n ),\n getLabel(props.thread.subscription)\n ),\n _react2.default.createElement(Dropdown, props)\n );\n};\n\nexports.getIcon = getIcon;\nexports.getLabel = getLabel;\nexports.Dropdown = Dropdown;\nexports.update = update;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _thread = require('../../reducers/thread');\n\nvar actions = _interopRequireWildcard(_thread);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nfunction getIcon(subscription) {\n if (subscription === true) {\n return 'star';\n } else if (subscription === false) {\n return 'star_half';\n } else {\n return 'star_border';\n }\n}\n\nfunction getLabel(subscription) {\n if (subscription === true) {\n return gettext(\"E-mail\");\n } else if (subscription === false) {\n return gettext(\"Enabled\");\n } else {\n return gettext(\"Disabled\");\n }\n}\n\nfunction Dropdown(props) {\n return _react2.default.createElement(\n 'ul',\n { className: props.dropdownClassName || \"dropdown-menu stick-to-bottom\" },\n _react2.default.createElement(Disable, props),\n _react2.default.createElement(Enable, props),\n _react2.default.createElement(Email, props)\n );\n}\n\nvar Disable = exports.Disable = function (_React$Component) {\n _inherits(Disable, _React$Component);\n\n function Disable() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Disable);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Disable.__proto__ || Object.getPrototypeOf(Disable)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n if (_this.props.thread.subscription === null) {\n return;\n }\n\n update(_this.props.thread, null, 'unsubscribe');\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Disable, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'star_border'\n ),\n gettext(\"Unsubscribe\")\n )\n );\n }\n }]);\n\n return Disable;\n}(_react2.default.Component);\n\nvar Enable = exports.Enable = function (_React$Component2) {\n _inherits(Enable, _React$Component2);\n\n function Enable() {\n var _ref2;\n\n var _temp2, _this2, _ret2;\n\n _classCallCheck(this, Enable);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, (_ref2 = Enable.__proto__ || Object.getPrototypeOf(Enable)).call.apply(_ref2, [this].concat(args))), _this2), _this2.onClick = function () {\n if (_this2.props.thread.subscription === false) {\n return;\n }\n\n update(_this2.props.thread, false, 'notify');\n }, _temp2), _possibleConstructorReturn(_this2, _ret2);\n }\n\n _createClass(Enable, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'star_half'\n ),\n gettext(\"Subscribe\")\n )\n );\n }\n }]);\n\n return Enable;\n}(_react2.default.Component);\n\nvar Email = exports.Email = function (_React$Component3) {\n _inherits(Email, _React$Component3);\n\n function Email() {\n var _ref3;\n\n var _temp3, _this3, _ret3;\n\n _classCallCheck(this, Email);\n\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _ret3 = (_temp3 = (_this3 = _possibleConstructorReturn(this, (_ref3 = Email.__proto__ || Object.getPrototypeOf(Email)).call.apply(_ref3, [this].concat(args))), _this3), _this3.onClick = function () {\n if (_this3.props.thread.subscription === true) {\n return;\n }\n\n update(_this3.props.thread, true, 'email');\n }, _temp3), _possibleConstructorReturn(_this3, _ret3);\n }\n\n _createClass(Email, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'star'\n ),\n gettext(\"Subscribe with e-mail\")\n )\n );\n }\n }]);\n\n return Email;\n}(_react2.default.Component);\n\nfunction update(thread, newState, value) {\n var oldState = {\n subscription: thread.subscription\n };\n\n _store2.default.dispatch(actions.update({\n subscription: newState\n }));\n\n _ajax2.default.patch(thread.api.index, [{ op: 'replace', path: 'subscription', value: value }]).then(function (finalState) {\n _store2.default.dispatch(actions.update(finalState));\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n _store2.default.dispatch(actions.update(oldState));\n });\n}\n\n},{\"../../reducers/thread\":347,\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../../services/store\":364,\"react\":\"react\"}],225:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; /* jshint ignore:start */\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'row row-toolbar' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 text-center visible-xs-block' },\n _react2.default.createElement(_paginator.More, { more: props.posts.more }),\n _react2.default.createElement('div', { className: 'toolbar-vertical-spacer' })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-md-7' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-4 col-md-5' },\n _react2.default.createElement(_paginator.Pager, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-8 col-md-7 hidden-xs' },\n _react2.default.createElement(_paginator.More, { more: props.posts.more })\n )\n )\n ),\n _react2.default.createElement(\n Options,\n { visible: !!props.user.id },\n _react2.default.createElement('div', { className: 'toolbar-vertical-spacer hidden-md hidden-lg' }),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(Spacer, props),\n _react2.default.createElement(Moderation, props),\n _react2.default.createElement(Subscription, props),\n _react2.default.createElement(Reply, {\n thread: props.thread,\n onClick: props.openReplyForm\n })\n )\n )\n );\n};\n\nexports.Options = Options;\nexports.Moderation = Moderation;\nexports.Subscription = Subscription;\nexports.Reply = Reply;\nexports.Spacer = Spacer;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _paginator = require('./paginator');\n\nvar _posts = require('./moderation/posts');\n\nvar _posts2 = _interopRequireDefault(_posts);\n\nvar _replyButton = require('./reply-button');\n\nvar _replyButton2 = _interopRequireDefault(_replyButton);\n\nvar _subscription = require('./subscription');\n\nvar _subscription2 = _interopRequireDefault(_subscription);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction Options(props) {\n if (!props.visible) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-md-5' },\n props.children\n );\n}\n\nfunction Moderation(props) {\n if (!props.user.id) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-sm-4 hidden-xs' },\n _react2.default.createElement(_posts2.default, props)\n );\n}\n\nfunction Subscription(props) {\n var xsClass = \"col-xs-6\";\n if (!props.thread.acl.can_reply) {\n xsClass = 'col-xs-12';\n }\n\n return _react2.default.createElement(\n 'div',\n { className: xsClass + \" col-sm-4\" },\n _react2.default.createElement(_subscription2.default, _extends({\n btnClassName: 'btn-block',\n className: 'dropup'\n }, props))\n );\n}\n\nfunction Reply(props) {\n if (!props.thread.acl.can_reply) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-6 col-sm-4' },\n _react2.default.createElement(_replyButton2.default, {\n className: 'btn btn-primary btn-block btn-outline',\n onClick: props.onClick\n })\n );\n}\n\nfunction Spacer(props) {\n if (props.thread.acl.can_reply) return null;\n\n return _react2.default.createElement('div', { className: 'hidden-xs hidden-sm col-sm-4' });\n}\n\n},{\"./moderation/posts\":212,\"./paginator\":220,\"./reply-button\":221,\"./subscription\":224,\"react\":\"react\"}],226:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.StartPollCompact = exports.StartPoll = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _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; }; /* jshint ignore:start */\n\n\nexports.default = function (props) {\n var hiddenSpecialOption = !props.thread.acl.can_start_poll || props.thread.poll;\n\n return _react2.default.createElement(\n 'div',\n { className: 'row row-toolbar row-toolbar-bottom-margin' },\n _react2.default.createElement(GotoMenu, props),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-9 col-md-5 col-md-offset-2' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(Spacer, { visible: !props.user.id }),\n _react2.default.createElement(Spacer, { visible: hiddenSpecialOption }),\n _react2.default.createElement(SubscriptionMenu, props),\n _react2.default.createElement(StartPoll, props),\n _react2.default.createElement(Reply, props)\n )\n )\n );\n};\n\nexports.GotoMenu = GotoMenu;\nexports.GotoNew = GotoNew;\nexports.GotoUnapproved = GotoUnapproved;\nexports.GotoLast = GotoLast;\nexports.CompactOptions = CompactOptions;\nexports.GotoNewCompact = GotoNewCompact;\nexports.GotoUnapprovedCompact = GotoUnapprovedCompact;\nexports.GotoLastCompact = GotoLastCompact;\nexports.Reply = Reply;\nexports.SubscriptionMenu = SubscriptionMenu;\nexports.Spacer = Spacer;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _replyButton = require('./reply-button');\n\nvar _replyButton2 = _interopRequireDefault(_replyButton);\n\nvar _subscription = require('./subscription');\n\nvar _subscription2 = _interopRequireDefault(_subscription);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nfunction GotoMenu(props) {\n var user = props.user;\n\n\n var className = 'col-xs-3 col-sm-3 col-md-5';\n if (user.is_anonymous) {\n className = 'col-xs-12 col-sm-3 col-md-5';\n }\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'row hidden-xs hidden-sm' },\n _react2.default.createElement(GotoLast, { thread: props.thread }),\n _react2.default.createElement(GotoNew, { thread: props.thread }),\n _react2.default.createElement(GotoUnapproved, { thread: props.thread })\n ),\n _react2.default.createElement(CompactOptions, props)\n );\n}\n\nfunction GotoNew(props) {\n if (!props.thread.is_new) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-sm-4' },\n _react2.default.createElement(\n 'a',\n {\n href: props.thread.url.new_post,\n className: 'btn btn-default btn-block btn-outline',\n title: gettext('Go to first new post')\n },\n gettext(\"New\")\n )\n );\n}\n\nfunction GotoUnapproved(props) {\n if (!props.thread.has_unapproved_posts || !props.thread.acl.can_approve) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-sm-4' },\n _react2.default.createElement(\n 'a',\n {\n href: props.thread.url.unapproved_post,\n className: 'btn btn-default btn-block btn-outline',\n title: gettext('Go to first unapproved post')\n },\n gettext(\"Unapproved\")\n )\n );\n}\n\nfunction GotoLast(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'col-sm-4' },\n _react2.default.createElement(\n 'a',\n {\n href: props.thread.url.last_post,\n className: 'btn btn-default btn-block btn-outline',\n title: gettext('Go to last post')\n },\n gettext(\"Last\")\n )\n );\n}\n\nfunction CompactOptions(props) {\n var user = props.user;\n\n if (user.is_anonymous) {\n return _react2.default.createElement(\n 'div',\n { className: 'visible-xs-block visible-sm-block' },\n _react2.default.createElement(\n 'a',\n {\n href: props.thread.url.last_post,\n className: 'btn btn-default btn-block btn-outline'\n },\n gettext(\"Last post\")\n )\n );\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'dropdown visible-xs-block visible-sm-block' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-expanded': 'true',\n 'aria-haspopup': 'true',\n className: 'btn btn-default dropdown-toggle btn-block btn-outline',\n 'data-toggle': 'dropdown',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'expand_more'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'btn-text hidden-xs' },\n gettext(\"Options\")\n )\n ),\n _react2.default.createElement(\n 'ul',\n { className: 'dropdown-menu' },\n _react2.default.createElement(StartPollCompact, props),\n _react2.default.createElement(GotoNewCompact, props),\n _react2.default.createElement(GotoUnapprovedCompact, props),\n _react2.default.createElement(GotoLastCompact, props)\n )\n );\n}\n\nfunction GotoNewCompact(props) {\n if (!props.thread.is_new) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n {\n href: props.thread.url.new_post,\n className: 'btn btn-link'\n },\n gettext(\"Go to first new post\")\n )\n );\n}\n\nfunction GotoUnapprovedCompact(props) {\n if (!props.thread.has_unapproved_posts || !props.thread.acl.can_approve) {\n return null;\n }\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n {\n href: props.thread.url.unapproved_post,\n className: 'btn btn-link'\n },\n gettext(\"Go to first unapproved post\")\n )\n );\n}\n\nfunction GotoLastCompact(props) {\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n {\n href: props.thread.url.last_post,\n className: 'btn btn-link'\n },\n gettext(\"Go to last post\")\n )\n );\n}\n\nfunction Reply(props) {\n if (!props.thread.acl.can_reply) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-sm-4 hidden-xs' },\n _react2.default.createElement(_replyButton2.default, {\n className: 'btn btn-primary btn-block btn-outline',\n onClick: props.openReplyForm\n })\n );\n}\n\nfunction SubscriptionMenu(props) {\n if (!props.user.id) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-4' },\n _react2.default.createElement(_subscription2.default, _extends({\n className: 'dropdown',\n dropdownClassName: 'dropdown-menu dropdown-menu-right stick-to-bottom'\n }, props))\n );\n}\n\nvar StartPoll = exports.StartPoll = function (_React$Component) {\n _inherits(StartPoll, _React$Component);\n\n function StartPoll() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, StartPoll);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = StartPoll.__proto__ || Object.getPrototypeOf(StartPoll)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _posting2.default.open({\n mode: 'POLL',\n submit: _this.props.thread.api.poll,\n\n thread: _this.props.thread,\n poll: null\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(StartPoll, [{\n key: 'render',\n value: function render() {\n if (!this.props.thread.acl.can_start_poll || this.props.thread.poll) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-sm-4 hidden-xs' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-outline',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'poll'\n ),\n gettext(\"Add poll\")\n )\n );\n }\n }]);\n\n return StartPoll;\n}(_react2.default.Component);\n\nvar StartPollCompact = exports.StartPollCompact = function (_StartPoll) {\n _inherits(StartPollCompact, _StartPoll);\n\n function StartPollCompact() {\n _classCallCheck(this, StartPollCompact);\n\n return _possibleConstructorReturn(this, (StartPollCompact.__proto__ || Object.getPrototypeOf(StartPollCompact)).apply(this, arguments));\n }\n\n _createClass(StartPollCompact, [{\n key: 'render',\n value: function render() {\n if (!this.props.thread.acl.can_start_poll || this.props.thread.poll) {\n return null;\n }\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n gettext(\"Add poll\")\n )\n );\n }\n }]);\n\n return StartPollCompact;\n}(StartPoll);\n\nfunction Spacer(props) {\n if (!props.visible) return null;\n\n return _react2.default.createElement('div', { className: 'col-sm-4 hidden-xs' });\n}\n\n},{\"../../services/posting\":362,\"./reply-button\":221,\"./subscription\":224,\"react\":\"react\"}],227:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (!props.isLoaded) {\n return _react2.default.createElement(_preview2.default, null);\n }\n\n if (props.threads.length === 0) {\n return _react2.default.createElement(\n _empty2.default,\n {\n diffSize: props.diffSize,\n applyDiff: props.applyDiff\n },\n props.children\n );\n }\n\n return _react2.default.createElement(_ready2.default, {\n activeCategory: props.category,\n categories: props.categories,\n list: props.list,\n threads: props.threads,\n\n diffSize: props.diffSize,\n applyDiff: props.applyDiff,\n\n showOptions: props.showOptions,\n selection: props.selection,\n\n busyThreads: props.busyThreads\n });\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _empty = require('./list/empty');\n\nvar _empty2 = _interopRequireDefault(_empty);\n\nvar _ready = require('./list/ready');\n\nvar _ready2 = _interopRequireDefault(_ready);\n\nvar _preview = require('./list/preview');\n\nvar _preview2 = _interopRequireDefault(_preview);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./list/empty\":229,\"./list/preview\":230,\"./list/ready\":231,\"react\":\"react\"}],228:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n var diffSize = props.diffSize,\n applyDiff = props.applyDiff;\n\n\n if (diffSize === 0) return null;\n\n return _react2.default.createElement(\n \"li\",\n { className: \"list-group-item threads-diff-message\" },\n _react2.default.createElement(\n \"button\",\n {\n type: \"button\",\n className: \"btn btn-block btn-default\",\n onClick: applyDiff\n },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"cached\"\n ),\n _react2.default.createElement(\n \"span\",\n { className: \"diff-message\" },\n getMessage(diffSize)\n )\n )\n );\n};\n\nexports.getMessage = getMessage;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction getMessage(diffSize) {\n var message = ngettext(\"There is %(threads)s new or updated thread. Click this message to show it.\", \"There are %(threads)s new or updated threads. Click this message to show them.\", diffSize);\n\n return interpolate(message, {\n threads: diffSize\n }, true);\n}\n\n},{\"react\":\"react\"}],229:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _diffMessage = require('./diff-message');\n\nvar _diffMessage2 = _interopRequireDefault(_diffMessage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getDiffMessage',\n value: function getDiffMessage() {\n if (this.props.diffSize === 0) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(_diffMessage2.default, {\n applyDiff: this.props.applyDiff,\n diffSize: this.props.diffSize\n });\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'threads-list ui-ready' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-group' },\n this.getDiffMessage(),\n this.props.children\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./diff-message\":228,\"react\":\"react\"}],230:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _preview = require('../thread/preview');\n\nvar _preview2 = _interopRequireDefault(_preview);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'threads-list ui-preview' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-group' },\n _react2.default.createElement(_preview2.default, null)\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../thread/preview\":238,\"react\":\"react\"}],231:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'threads-list ui-ready' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-group' },\n _react2.default.createElement(_diffMessage2.default, {\n diffSize: props.diffSize,\n applyDiff: props.applyDiff\n }),\n props.threads.map(function (thread) {\n return _react2.default.createElement(_ready2.default, {\n activeCategory: props.activeCategory,\n categories: props.categories,\n list: props.list,\n thread: thread,\n\n showOptions: props.showOptions,\n isSelected: props.selection.indexOf(thread.id) >= 0,\n\n isBusy: props.busyThreads.indexOf(thread.id) >= 0,\n key: thread.id\n });\n })\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _diffMessage = require('./diff-message');\n\nvar _diffMessage2 = _interopRequireDefault(_diffMessage);\n\nvar _ready = require('../thread/ready');\n\nvar _ready2 = _interopRequireDefault(_ready);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../thread/ready\":239,\"./diff-message\":228,\"react\":\"react\"}],232:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category,\n isBusy = _ref.isBusy,\n showOptions = _ref.showOptions,\n isSelected = _ref.isSelected,\n thread = _ref.thread;\n\n var className = 'col-xs-12 col-sm-12';\n if (showOptions) {\n if (thread.moderation.length) {\n className = 'col-xs-6 col-sm-12';\n } else {\n className = 'col-xs-9 col-sm-12';\n }\n }\n\n var statusFlags = 0;\n if (thread.is_hidden) statusFlags += 1;\n if (thread.is_closed) statusFlags += 1;\n if (thread.has_poll) statusFlags += 1;\n\n var allFlagsVisible = showOptions && statusFlags === 3;\n\n var textClassName = 'detail-text hidden-xs';\n if (allFlagsVisible) {\n textClassName += ' hidden-sm';\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'row thread-details-bottom' },\n _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(_category2.default, {\n className: 'item-title thread-detail-category hidden-xs',\n category: category\n }),\n _react2.default.createElement(HiddenLabel, {\n textClassName: textClassName,\n display: thread.is_hidden\n }),\n _react2.default.createElement(ClosedLabel, {\n textClassName: textClassName,\n display: thread.is_closed\n }),\n _react2.default.createElement(PollLabel, {\n textClassName: textClassName,\n display: thread.has_poll\n }),\n _react2.default.createElement(RepliesLabel, {\n forceFullText: !showOptions || statusFlags < 2,\n replies: thread.replies\n }),\n _react2.default.createElement(LastReplyLabel, {\n datetime: thread.last_post_on,\n url: thread.url.last_post\n }),\n _react2.default.createElement(LastPoster, {\n posterName: thread.last_poster_name,\n url: thread.url.last_poster\n })\n ),\n _react2.default.createElement(_options.OptionsXs, {\n disabled: isBusy,\n display: showOptions,\n isSelected: isSelected,\n thread: thread\n })\n );;\n};\n\nexports.HiddenLabel = HiddenLabel;\nexports.ClosedLabel = ClosedLabel;\nexports.PollLabel = PollLabel;\nexports.RepliesLabel = RepliesLabel;\nexports.LastReplyLabel = LastReplyLabel;\nexports.LastPoster = LastPoster;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _category = require('./category');\n\nvar _category2 = _interopRequireDefault(_category);\n\nvar _options = require('../options');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction HiddenLabel(_ref2) {\n var display = _ref2.display,\n textClassName = _ref2.textClassName;\n\n if (!display) return null;\n\n return _react2.default.createElement(\n 'span',\n { className: 'thread-detail-hidden' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility_off'\n ),\n _react2.default.createElement(\n 'span',\n { className: textClassName },\n gettext(\"Hidden\")\n )\n );\n}\n\nfunction ClosedLabel(_ref3) {\n var display = _ref3.display,\n textClassName = _ref3.textClassName;\n\n if (!display) return null;\n\n return _react2.default.createElement(\n 'span',\n { className: 'thread-detail-closed' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_outline'\n ),\n _react2.default.createElement(\n 'span',\n { className: textClassName },\n gettext(\"Closed\")\n )\n );\n}\n\nfunction PollLabel(_ref4) {\n var display = _ref4.display,\n textClassName = _ref4.textClassName;\n\n if (!display) return null;\n\n return _react2.default.createElement(\n 'span',\n { className: 'thread-detail-poll' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'assessment'\n ),\n _react2.default.createElement(\n 'span',\n { className: textClassName },\n gettext(\"Poll\")\n )\n );\n}\n\nfunction RepliesLabel(_ref5) {\n var replies = _ref5.replies,\n forceFullText = _ref5.forceFullText;\n\n var text = ngettext(\"%(replies)s reply\", \"%(replies)s replies\", replies);\n\n var compactClassName = '';\n var fullClassName = '';\n\n if (forceFullText) {\n compactClassName = 'detail-text hide';\n fullClassName = 'detail-text';\n } else {\n compactClassName = 'detail-text visible-xs-inline-block';\n fullClassName = 'detail-text hidden-xs';\n }\n\n return _react2.default.createElement(\n 'span',\n { className: 'thread-detail-replies' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'forum'\n ),\n _react2.default.createElement(\n 'span',\n { className: compactClassName },\n replies\n ),\n _react2.default.createElement(\n 'span',\n { className: fullClassName },\n interpolate(text, { replies: replies }, true)\n )\n );\n}\n\nfunction LastReplyLabel(_ref6) {\n var datetime = _ref6.datetime,\n url = _ref6.url;\n\n return _react2.default.createElement(\n 'a',\n {\n className: 'visible-sm-inline-block thread-detail-last-reply',\n href: url,\n title: datetime.format('LLL')\n },\n datetime.fromNow(true)\n );\n}\n\nfunction LastPoster(props) {\n var posterName = props.posterName,\n url = props.url;\n\n var className = 'visible-sm-inline-block item-title thread-last-poster';\n\n if (url) {\n return _react2.default.createElement(\n 'a',\n { className: className, href: url },\n posterName\n );\n }\n\n return _react2.default.createElement(\n 'span',\n { className: className },\n posterName\n );;\n}\n\n},{\"../options\":237,\"./category\":233,\"react\":\"react\"}],233:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category,\n className = _ref.className;\n\n if (!category) return null;\n\n if (category.css_class) {\n className += ' thread-detail-category-' + category.css_class;\n }\n\n return _react2.default.createElement(\n 'a',\n {\n className: className,\n href: category.url.index\n },\n category.name\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],234:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.TopDetails = exports.BottomDetails = undefined;\n\nvar _bottom = require('./bottom');\n\nvar _bottom2 = _interopRequireDefault(_bottom);\n\nvar _top = require('./top');\n\nvar _top2 = _interopRequireDefault(_top);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nexports.BottomDetails = _bottom2.default;\nexports.TopDetails = _top2.default;\n\n},{\"./bottom\":232,\"./top\":235}],235:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category,\n thread = _ref.thread;\n\n return _react2.default.createElement(\n 'div',\n { className: 'thread-details-top' },\n _react2.default.createElement(NewLabel, {\n isRead: thread.is_read,\n url: thread.url.new_post\n }),\n _react2.default.createElement(PinnedLabel, { weight: thread.weight }),\n _react2.default.createElement(UnapprovedLabel, {\n thread: thread.is_unapproved,\n posts: thread.has_unapproved_posts\n }),\n _react2.default.createElement(_category2.default, {\n className: 'item-title thread-detail-category visible-xs-inline-block',\n category: category\n }),\n _react2.default.createElement(LastReplyLabel, {\n datetime: thread.last_post_on,\n url: thread.url.last_post\n }),\n _react2.default.createElement(LastPoster, {\n posterName: thread.last_poster_name,\n url: thread.url.last_poster\n })\n );\n};\n\nexports.NewLabel = NewLabel;\nexports.PinnedLabel = PinnedLabel;\nexports.UnapprovedLabel = UnapprovedLabel;\nexports.LastReplyLabel = LastReplyLabel;\nexports.LastPoster = LastPoster;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _category = require('./category');\n\nvar _category2 = _interopRequireDefault(_category);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction NewLabel(_ref2) {\n var isRead = _ref2.isRead,\n url = _ref2.url;\n\n if (isRead) return null;\n\n return _react2.default.createElement(\n 'a',\n {\n className: 'thread-detail-new',\n href: url\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'comment'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'detail-text' },\n gettext(\"New posts\")\n )\n );\n} /* jshint ignore:start */\nfunction PinnedLabel(_ref3) {\n var weight = _ref3.weight;\n\n if (weight === 0) return null;\n\n var className = 'thread-detail-pinned-globally';\n var icon = 'bookmark';\n var text = gettext(\"Pinned globally\");\n\n if (weight === 1) {\n className = 'thread-detail-pinned-locally';\n icon = 'bookmark_border';\n text = gettext(\"Pinned locally\");\n }\n\n return _react2.default.createElement(\n 'span',\n { className: className },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n icon\n ),\n _react2.default.createElement(\n 'span',\n { className: 'detail-text' },\n text\n )\n );\n}\n\nfunction UnapprovedLabel(_ref4) {\n var posts = _ref4.posts,\n thread = _ref4.thread;\n\n if (!posts && !thread) return null;\n\n var className = 'thread-detail-unapproved-posts';\n var icon = 'remove_circle_outline';\n var text = gettext(\"Unapproved posts\");\n\n if (thread) {\n className = 'thread-detail-unapproved';\n icon = 'remove_circle';\n text = gettext(\"Unapproved\");\n }\n\n return _react2.default.createElement(\n 'span',\n { className: className },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n icon\n ),\n _react2.default.createElement(\n 'span',\n { className: 'detail-text' },\n text\n )\n );\n}\n\nfunction LastReplyLabel(_ref5) {\n var datetime = _ref5.datetime,\n url = _ref5.url;\n\n return _react2.default.createElement(\n 'a',\n {\n className: 'visible-xs-inline-block thread-detail-last-reply',\n href: url,\n title: datetime.format('LLL')\n },\n datetime.fromNow(true)\n );\n}\n\nfunction LastPoster(props) {\n var posterName = props.posterName,\n url = props.url;\n\n\n if (url) {\n return _react2.default.createElement(\n 'a',\n {\n className: 'visible-xs-inline-block item-title thread-last-poster',\n href: url\n },\n posterName\n );\n }\n\n return _react2.default.createElement(\n 'span',\n { className: 'visible-xs-inline-block item-title thread-last-poster' },\n posterName\n );\n}\n\n},{\"./category\":233,\"react\":\"react\"}],236:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var thread = _ref.thread;\n\n return _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n _userUrl2.default,\n {\n className: 'thread-last-poster-avatar',\n title: thread.last_poster_name,\n url: thread.url.last_poster\n },\n _react2.default.createElement(_avatar2.default, {\n className: 'media-object',\n size: 40,\n user: thread.last_poster\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n _userUrl2.default,\n {\n className: 'item-title thread-last-poster',\n url: thread.url.last_poster\n },\n thread.last_poster_name\n ),\n _react2.default.createElement(Timestamp, {\n datetime: thread.last_post_on,\n url: thread.url.last_post\n })\n )\n );\n};\n\nexports.Timestamp = Timestamp;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _userUrl = require('./user-url');\n\nvar _userUrl2 = _interopRequireDefault(_userUrl);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction Timestamp(_ref2) {\n var datetime = _ref2.datetime,\n url = _ref2.url;\n\n return _react2.default.createElement(\n 'a',\n {\n className: 'thread-last-reply',\n href: url,\n title: datetime.format('LLL')\n },\n datetime.fromNow(true)\n );\n}\n\n},{\"../../avatar\":3,\"./user-url\":244,\"react\":\"react\"}],237:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Checkbox = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.Options = Options;\nexports.OptionsXs = OptionsXs;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _compact = require('./subscription/compact');\n\nvar _compact2 = _interopRequireDefault(_compact);\n\nvar _full = require('./subscription/full');\n\nvar _full2 = _interopRequireDefault(_full);\n\nvar _selection = require('../../../reducers/selection');\n\nvar select = _interopRequireWildcard(_selection);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nfunction Options(_ref) {\n var display = _ref.display,\n disabled = _ref.disabled,\n isSelected = _ref.isSelected,\n thread = _ref.thread;\n\n if (!display) return null;\n\n var className = 'col-sm-2 col-md-2 hidden-xs';\n if (thread.moderation.length) {\n className = 'col-sm-3 col-md-2 hidden-xs';\n }\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'row thread-options' },\n _react2.default.createElement(_full2.default, {\n thread: thread,\n disabled: disabled\n }),\n _react2.default.createElement(_compact2.default, {\n thread: thread,\n disabled: disabled\n }),\n _react2.default.createElement(Checkbox, {\n thread: thread,\n disabled: disabled,\n isSelected: isSelected\n })\n )\n );\n}\n\nfunction OptionsXs(_ref2) {\n var display = _ref2.display,\n disabled = _ref2.disabled,\n isSelected = _ref2.isSelected,\n thread = _ref2.thread;\n\n if (!display) return null;\n\n var className = '';\n if (thread.moderation.length) {\n className += 'col-xs-6';\n } else {\n className += 'col-xs-3';\n }\n className += ' visible-xs-block thread-options-xs';\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'row thread-options' },\n _react2.default.createElement(_full2.default, {\n thread: thread,\n disabled: disabled\n }),\n _react2.default.createElement(_compact2.default, {\n thread: thread,\n disabled: disabled\n }),\n _react2.default.createElement(Checkbox, {\n thread: thread,\n disabled: disabled,\n isSelected: isSelected\n })\n )\n );\n}\n\nvar Checkbox = exports.Checkbox = function (_React$Component) {\n _inherits(Checkbox, _React$Component);\n\n function Checkbox() {\n var _ref3;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Checkbox);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref3 = Checkbox.__proto__ || Object.getPrototypeOf(Checkbox)).call.apply(_ref3, [this].concat(args))), _this), _this.toggleSelection = function () {\n _store2.default.dispatch(select.item(_this.props.thread.id));\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Checkbox, [{\n key: 'render',\n value: function render() {\n var _props = this.props,\n disabled = _props.disabled,\n isSelected = _props.isSelected,\n thread = _props.thread;\n\n\n if (!thread.moderation.length) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-6' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-icon btn-block',\n onClick: this.toggleSelection,\n disabled: disabled\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n isSelected ? 'check_box' : 'check_box_outline_blank'\n )\n )\n );\n }\n }]);\n\n return Checkbox;\n}(_react2.default.Component);\n\n},{\"../../../reducers/selection\":345,\"../../../services/store\":364,\"./subscription/compact\":240,\"./subscription/full\":241,\"react\":\"react\"}],238:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _random = require('../../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'list-group-item thread-preview' },\n _react2.default.createElement(\n 'div',\n { className: 'thread-details-top visible-xs-block' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 80) + \"px\" }\n },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 80) + \"px\" }\n },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 80) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'span',\n { className: 'item-title thread-title' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(60, 200) + \"px\" }\n },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text hidden-xs',\n style: { width: random.int(60, 200) + \"px\" }\n },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text hidden-xs',\n style: { width: random.int(60, 200) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'thread-details-bottom' },\n _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 80) + \"px\" }\n },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 80) + \"px\" }\n },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 80) + \"px\" }\n },\n '\\xA0'\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../utils/random\":375,\"react\":\"react\"}],239:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n var activeCategory = props.activeCategory,\n categories = props.categories,\n list = props.list,\n thread = props.thread,\n isBusy = props.isBusy,\n isSelected = props.isSelected,\n showOptions = props.showOptions;\n\n\n var category = null;\n if (activeCategory.id !== thread.category) {\n category = categories[thread.category];\n }\n\n var flavor = category || activeCategory;\n\n var className = 'thread-main col-xs-12';\n if (showOptions) {\n if (thread.moderation.length) {\n className += ' col-sm-9 col-md-7';\n } else {\n className += ' col-sm-10 col-md-7';\n }\n } else {\n className += ' col-sm-12 col-md-9';\n }\n\n return _react2.default.createElement(\n 'li',\n { className: getClassName(thread.is_read, isBusy, isSelected, flavor) },\n _react2.default.createElement(_details.TopDetails, {\n category: category,\n thread: thread\n }),\n _react2.default.createElement(\n 'div',\n { className: 'row thread-row' },\n _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left hidden-xs' },\n _react2.default.createElement(\n _userUrl2.default,\n {\n className: 'thread-starter-avatar',\n title: thread.starter_name,\n url: thread.url.starter\n },\n _react2.default.createElement(_avatar2.default, {\n size: 40,\n user: thread.starter\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'a',\n { href: thread.url.index, className: 'item-title thread-title' },\n thread.title\n ),\n _react2.default.createElement(_details.BottomDetails, {\n category: category,\n disabled: isBusy,\n isSelected: isSelected,\n showOptions: showOptions,\n thread: thread\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-md-3 hidden-xs hidden-sm thread-last-action' },\n _react2.default.createElement(_lastAction2.default, { thread: thread })\n ),\n _react2.default.createElement(_options.Options, {\n disabled: isBusy,\n display: showOptions,\n isSelected: isSelected,\n thread: thread\n })\n )\n );\n};\n\nexports.getClassName = getClassName;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _details = require('./details');\n\nvar _lastAction = require('./last-action');\n\nvar _lastAction2 = _interopRequireDefault(_lastAction);\n\nvar _options = require('./options');\n\nvar _userUrl = require('./user-url');\n\nvar _userUrl2 = _interopRequireDefault(_userUrl);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getClassName(isRead, isBusy, isSelected, flavor) {\n var styles = ['list-group-item'];\n\n if (flavor && flavor.css_class) {\n styles.push('list-group-category-has-flavor');\n styles.push('list-group-item-category-' + flavor.css_class);\n }\n\n if (isRead) {\n styles.push('thread-read');\n } else {\n styles.push('thread-new');\n }\n\n if (isBusy) {\n styles.push('thread-busy');\n } else if (isSelected) {\n styles.push('thread-selected');\n }\n\n return styles.join(' ');\n} /* jshint ignore:start */\n\n},{\"../../avatar\":3,\"./details\":234,\"./last-action\":236,\"./options\":237,\"./user-url\":244,\"react\":\"react\"}],240:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _full = require('./full');\n\nvar _full2 = _interopRequireDefault(_full);\n\nvar _modal = require('./modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _modal3 = require('../../../../services/modal');\n\nvar _modal4 = _interopRequireDefault(_modal3);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_SubscriptionFull) {\n _inherits(_class, _SubscriptionFull);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.showOptions = function () {\n _modal4.default.show(_react2.default.createElement(_modal2.default, { thread: _this.props.thread }));\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n var moderation = this.props.thread.moderation;\n\n\n var className = '';\n if (moderation.length) {\n className += 'col-xs-6';\n } else {\n className += 'col-xs-12';\n }\n className += ' hidden-md hidden-lg';\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: this.getClassName(),\n disabled: this.props.disabled,\n onClick: this.showOptions\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n this.getIcon()\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_full2.default);\n\nexports.default = _class;\n\n},{\"../../../../services/modal\":358,\"./full\":241,\"./modal\":242,\"react\":\"react\"}],241:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.Label = Label;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _options = require('./options');\n\nvar _options2 = _interopRequireDefault(_options);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getIcon',\n value: function getIcon() {\n if (this.props.thread.subscription === true) {\n return 'star';\n } else if (this.props.thread.subscription === false) {\n return 'star_half';\n }\n\n return 'star_border';\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.props.thread.subscription === true) {\n return \"btn btn-default btn-icon btn-block btn-subscribe btn-subscribe-full dropdown-toggle\";\n } else if (this.props.thread.subscription === false) {\n return \"btn btn-default btn-icon btn-block btn-subscribe btn-subscribe-half dropdown-toggle\";\n }\n\n return \"btn btn-default btn-icon btn-block btn-subscribe dropdown-toggle\";\n }\n }, {\n key: 'render',\n value: function render() {\n var _props$thread = this.props.thread,\n moderation = _props$thread.moderation,\n subscription = _props$thread.subscription;\n\n var fullwidth = !moderation.length;\n\n var className = fullwidth ? 'col-xs-12' : 'col-xs-6';\n className += ' hidden-xs hidden-sm';\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group btn-group-justified' },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group' },\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: this.getClassName(),\n disabled: this.props.disabled,\n 'data-toggle': 'dropdown',\n 'aria-haspopup': 'true',\n 'aria-expanded': 'false'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n this.getIcon()\n ),\n _react2.default.createElement(Label, {\n moderation: moderation,\n subscription: subscription\n })\n ),\n _react2.default.createElement(_options2.default, {\n className: 'dropdown-menu dropdown-menu-right',\n thread: this.props.thread\n })\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction Label(_ref) {\n var moderation = _ref.moderation,\n subscription = _ref.subscription;\n\n if (moderation.length) return null;\n\n var text = gettext(\"Disabled\");\n if (subscription === true) {\n text = gettext(\"E-mail\");\n } else if (subscription === false) {\n text = gettext(\"Enabled\");\n }\n\n return _react2.default.createElement(\n 'span',\n { className: 'btn-text' },\n text\n );\n}\n\n},{\"./options\":243,\"react\":\"react\"}],242:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _options = require('./options');\n\nvar _options2 = _interopRequireDefault(_options);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog modal-sm',\n role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Change subscription\")\n )\n ),\n _react2.default.createElement(_options2.default, { className: 'modal-menu', thread: this.props.thread })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./options\":243,\"react\":\"react\"}],243:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _threads = require('../../../../reducers/threads');\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\n/* jshint ignore:start */\nvar STATE_UPDATES = {\n 'unsubscribe': null,\n 'notify': false,\n 'email': true\n};\n/* jshint ignore:end */\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.setSubscription = function (newState) {\n _modal2.default.hide();\n\n _this.setState({\n isLoading: true\n });\n\n var oldState = _this.props.thread.subscription;\n\n _store2.default.dispatch((0, _threads.patch)(_this.props.thread, {\n subscription: STATE_UPDATES[newState]\n }));\n\n _ajax2.default.patch(_this.props.thread.api.index, [{ op: 'replace', path: 'subscription', value: newState }]).then(function () {\n _this.setState({\n isLoading: false\n });\n }, function (rejection) {\n _this.setState({\n isLoading: false\n });\n _store2.default.dispatch((0, _threads.patch)(_this.props.thread, {\n subscription: STATE_UPDATES[oldState]\n }));\n _snackbar2.default.apiError(rejection);\n });\n };\n\n _this.unsubscribe = function () {\n _this.setSubscription('unsubscribe');\n };\n\n _this.notify = function () {\n _this.setSubscription('notify');\n };\n\n _this.email = function () {\n _this.setSubscription('email');\n };\n\n _this.state = {\n isLoading: false\n };\n return _this;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'ul',\n { className: this.props.className },\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { className: 'btn-link', onClick: this.unsubscribe },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'star_border'\n ),\n gettext(\"Unsubscribe\")\n )\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { className: 'btn-link', onClick: this.notify },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'star_half'\n ),\n gettext(\"Subscribe\")\n )\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { className: 'btn-link', onClick: this.email },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'star'\n ),\n gettext(\"Subscribe with e-mail\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../../reducers/threads\":348,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"../../../button\":5,\"react\":\"react\"}],244:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var children = _ref.children,\n className = _ref.className,\n title = _ref.title,\n url = _ref.url;\n\n if (url) {\n return _react2.default.createElement(\n 'a',\n {\n className: className,\n href: url,\n title: title\n },\n children\n );\n }\n\n return _react2.default.createElement(\n 'span',\n {\n className: className,\n title: title\n },\n children\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],245:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Subcategory = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar Subcategory = exports.Subcategory = function (_React$Component) {\n _inherits(Subcategory, _React$Component);\n\n function Subcategory() {\n _classCallCheck(this, Subcategory);\n\n return _possibleConstructorReturn(this, (Subcategory.__proto__ || Object.getPrototypeOf(Subcategory)).apply(this, arguments));\n }\n\n _createClass(Subcategory, [{\n key: 'getUrl',\n value: function getUrl() {\n if (this.props.listPath) {\n return this.props.category.url.index + this.props.listPath;\n } else {\n return this.props.category.url.index;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n _reactRouter.Link,\n { to: this.getUrl(), className: 'btn btn-link' },\n this.props.category.name\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return Subcategory;\n}(_react2.default.Component);\n\nvar _class = function (_React$Component2) {\n _inherits(_class, _React$Component2);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n var _this3 = this;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'dropdown category-picker' },\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: 'btn btn-default btn-outline dropdown-toggle btn-block',\n 'data-toggle': 'dropdown',\n 'aria-haspopup': 'true',\n 'aria-expanded': 'false'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'label_outline'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'hidden-xs' },\n gettext(\"Category\")\n )\n ),\n _react2.default.createElement(\n 'ul',\n { className: 'dropdown-menu stick-to-bottom categories-menu' },\n this.props.choices.map(function (id) {\n if (_this3.props.categories[id]) {\n return _react2.default.createElement(Subcategory, {\n category: _this3.props.categories[id],\n listPath: _this3.props.list.path,\n key: id\n });\n } else {\n return null;\n }\n })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\",\"react-router\":\"react-router\"}],246:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.compareLastPostAge = compareLastPostAge;\nexports.compareGlobalWeight = compareGlobalWeight;\nexports.compareWeight = compareWeight;\nfunction compareLastPostAge(a, b) {\n if (a.last_post > b.last_post) {\n return -1;\n } else if (a.last_post < b.last_post) {\n return 1;\n } else {\n return 0;\n }\n}\n\nfunction compareGlobalWeight(a, b) {\n if (a.weight === 2 && a.weight > b.weight) {\n return -1;\n } else if (b.weight === 2 && a.weight < b.weight) {\n return 1;\n } else {\n return compareLastPostAge(a, b);\n }\n}\n\nfunction compareWeight(a, b) {\n if (a.weight > b.weight) {\n return -1;\n } else if (a.weight < b.weight) {\n return 1;\n } else {\n return compareLastPostAge(a, b);\n }\n}\n\n},{}],247:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _pageLead = require('../page-lead');\n\nvar _pageLead2 = _interopRequireDefault(_pageLead);\n\nvar _toolbar = require('./toolbar');\n\nvar _toolbar2 = _interopRequireDefault(_toolbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getCategoryDescription',\n value: function getCategoryDescription() {\n if (this.props.pageLead) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'category-description' },\n _react2.default.createElement(\n 'div',\n { className: 'page-lead' },\n _react2.default.createElement(\n 'p',\n null,\n this.props.pageLead\n )\n )\n );\n /* jshint ignore:end */\n } else if (this.props.route.category.description) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'category-description' },\n _react2.default.createElement(_pageLead2.default, { copy: this.props.route.category.description.html })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getDisableToolbar',\n value: function getDisableToolbar() {\n return !this.props.isLoaded || this.props.isBusy || this.props.busyThreads.length;\n }\n }, {\n key: 'getToolbar',\n value: function getToolbar() {\n var isVisible = this.props.subcategories.length || this.props.user.id;\n\n if (!isVisible) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(_toolbar2.default, {\n subcategories: this.props.subcategories,\n categories: this.props.route.categories,\n categoriesMap: this.props.route.categoriesMap,\n list: this.props.route.list,\n\n threads: this.props.threads,\n moderation: this.props.moderation,\n selection: this.props.selection,\n selectAllThreads: this.props.selectAllThreads,\n selectNoneThreads: this.props.selectNoneThreads,\n\n addThreads: this.props.addThreads,\n freezeThread: this.props.freezeThread,\n deleteThread: this.props.deleteThread,\n updateThread: this.props.updateThread,\n\n api: this.props.api,\n route: this.props.route,\n disabled: this.getDisableToolbar(),\n user: this.props.user\n });\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'container' },\n this.getCategoryDescription(),\n this.getToolbar(),\n this.props.children\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../page-lead\":85,\"./toolbar\":258,\"react\":\"react\"}],248:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ParentCategory = ParentCategory;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _dropdownToggle = require('../dropdown-toggle');\n\nvar _dropdownToggle2 = _interopRequireDefault(_dropdownToggle);\n\nvar _nav = require('./nav');\n\nvar _nav2 = _interopRequireDefault(_nav);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.startThread = function () {\n _posting2.default.open(_this.props.startThread || {\n mode: 'START',\n\n config: _2.default.get('THREAD_EDITOR_API'),\n submit: _2.default.get('THREADS_API'),\n\n category: _this.props.route.category.id\n });\n };\n\n _this.state = {\n isBusy: false\n };\n return _this;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'hasGoBackButton',\n\n /* jshint ignore:end */\n\n value: function hasGoBackButton() {\n return !!this.props.route.category.parent;\n }\n }, {\n key: 'getGoBackButton',\n value: function getGoBackButton() {\n if (!this.props.route.category.parent) return null;\n\n /* jshint ignore:start */\n var parent = this.props.categories[this.props.route.category.parent];\n\n return _react2.default.createElement(\n 'div',\n { className: 'hidden-xs col-sm-2 col-lg-1' },\n _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-icon btn-aligned btn-go-back btn-block btn-outline',\n to: parent.url.index + this.props.route.list.path\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'keyboard_arrow_left'\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getStartThreadButton',\n value: function getStartThreadButton() {\n if (!this.props.user.id) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-primary btn-block btn-outline',\n onClick: this.startThread,\n disabled: this.props.disabled\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chat'\n ),\n gettext(\"Start thread\")\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n var headerClassName = 'col-xs-12';\n if (this.hasGoBackButton()) {\n headerClassName += ' col-sm-10 col-lg-11 sm-align-row-buttons';\n }\n\n var isAuthenticated = !!this.props.user.id;\n\n return _react2.default.createElement(\n 'div',\n { className: 'page-header-bg' },\n _react2.default.createElement(\n 'div',\n { className: 'page-header' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: isAuthenticated ? \"col-sm-9 col-md-10\" : \"col-xs-12\" },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n this.getGoBackButton(),\n _react2.default.createElement(\n 'div',\n { className: headerClassName },\n _react2.default.createElement(ParentCategory, {\n categories: this.props.categories,\n category: this.props.route.category.parent\n }),\n _react2.default.createElement(\n 'h1',\n null,\n this.props.title\n )\n )\n )\n ),\n isAuthenticated && _react2.default.createElement(\n 'div',\n { className: 'col-sm-3 col-md-2 xs-margin-top' },\n this.getStartThreadButton()\n )\n )\n ),\n _react2.default.createElement(_nav2.default, {\n baseUrl: this.props.route.category.url.index,\n list: this.props.route.list,\n lists: this.props.route.lists\n })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\n/* jshint ignore:start */\n\n\nexports.default = _class;\nfunction ParentCategory(_ref) {\n var categories = _ref.categories,\n category = _ref.category;\n\n if (!category) return null;\n\n var parent = categories[category];\n\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'go-back-sm visible-xs-block',\n to: parent.url.index\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_left'\n ),\n parent.parent ? parent.name : gettext(\"Threads\")\n );\n}\n/* jshint ignore:end */\n\n},{\"../..\":291,\"../../services/ajax\":352,\"../../services/posting\":362,\"../../services/snackbar\":363,\"../../services/store\":364,\"../button\":5,\"../dropdown-toggle\":24,\"./nav\":255,\"react\":\"react\",\"react-router\":\"react-router\"}],249:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n if (this.props.list.type === 'all') {\n if (this.props.emptyMessage) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'list-group-item empty-message' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.props.emptyMessage\n ),\n _react2.default.createElement(\n 'p',\n null,\n gettext(\"Why not start one yourself?\")\n )\n );\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'list-group-item empty-message' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.props.category.special_role ? gettext(\"There are no threads on this forum... yet!\") : gettext(\"There are no threads in this category.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n gettext(\"Why not start one yourself?\")\n )\n );\n /* jshint ignore:end */\n }\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'list-group-item empty-message' },\n gettext(\"No threads matching specified criteria were found.\")\n );\n /* jshint ignore:end */\n }\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],250:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _errorsList = require('./errors-list');\n\nvar _errorsList2 = _interopRequireDefault(_errorsList);\n\nvar _merge = require('./merge');\n\nvar _merge2 = _interopRequireDefault(_merge);\n\nvar _move = require('./move');\n\nvar _move2 = _interopRequireDefault(_move);\n\nvar _selection = require('../../../reducers/selection');\n\nvar select = _interopRequireWildcard(_selection);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _countdown = require('../../../utils/countdown');\n\nvar _countdown2 = _interopRequireDefault(_countdown);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.callApi = function (ops, successMessage) {\n var onSuccess = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n\n // freeze threads\n _this.props.threads.forEach(function (thread) {\n _this.props.freezeThread(thread.id);\n });\n\n // list ids\n var ids = _this.props.threads.map(function (thread) {\n return thread.id;\n });\n\n // always return current acl\n ops.push({ op: 'add', path: 'acl', value: true });\n\n _ajax2.default.patch(_this.props.api, { ids: ids, ops: ops }).then(function (data) {\n // unfreeze\n _this.props.threads.forEach(function (thread) {\n _this.props.freezeThread(thread.id);\n });\n\n // update threads\n data.forEach(function (thread) {\n _this.props.updateThread(thread);\n });\n\n // show success message and call callback\n _snackbar2.default.success(successMessage);\n if (onSuccess) {\n onSuccess();\n }\n }, function (rejection) {\n // unfreeze\n _this.props.threads.forEach(function (thread) {\n _this.props.freezeThread(thread.id);\n });\n\n // escape on non-400 error\n if (rejection.status !== 400) {\n return _snackbar2.default.apiError(rejection);\n }\n\n // build errors list\n var errors = [];\n var threadsMap = {};\n\n _this.props.threads.forEach(function (thread) {\n threadsMap[thread.id] = thread;\n });\n\n rejection.forEach(function (_ref2) {\n var id = _ref2.id,\n detail = _ref2.detail;\n\n if (typeof threadsMap[id] !== 'undefined') {\n errors.push({\n errors: detail,\n thread: threadsMap[id]\n });\n }\n });\n\n _modal2.default.show(_react2.default.createElement(_errorsList2.default, { errors: errors }));\n });\n }, _this.pinGlobally = function () {\n _this.callApi([{\n op: 'replace',\n path: 'weight',\n value: 2\n }], gettext(\"Selected threads were pinned globally.\"));\n }, _this.pinLocally = function () {\n _this.callApi([{\n op: 'replace',\n path: 'weight',\n value: 1\n }], gettext(\"Selected threads were pinned locally.\"));\n }, _this.unpin = function () {\n _this.callApi([{\n op: 'replace',\n path: 'weight',\n value: 0\n }], gettext(\"Selected threads were unpinned.\"));\n }, _this.approve = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-unapproved',\n value: false\n }], gettext(\"Selected threads were approved.\"));\n }, _this.open = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-closed',\n value: false\n }], gettext(\"Selected threads were opened.\"));\n }, _this.close = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-closed',\n value: true\n }], gettext(\"Selected threads were closed.\"));\n }, _this.unhide = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-hidden',\n value: false\n }], gettext(\"Selected threads were unhidden.\"));\n }, _this.hide = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-hidden',\n value: true\n }], gettext(\"Selected threads were hidden.\"));\n }, _this.move = function () {\n _modal2.default.show(_react2.default.createElement(_move2.default, {\n callApi: _this.callApi,\n categories: _this.props.categories,\n categoriesMap: _this.props.categoriesMap,\n route: _this.props.route,\n user: _this.props.user\n }));\n }, _this.merge = function () {\n var errors = [];\n _this.props.threads.forEach(function (thread) {\n if (!thread.acl.can_merge) {\n errors.append({\n 'id': thread.id,\n 'title': thread.title,\n 'errors': [gettext(\"You don't have permission to merge this thread with others.\")]\n });\n }\n });\n\n if (_this.props.threads.length < 2) {\n _snackbar2.default.info(gettext(\"You have to select at least two threads to merge.\"));\n } else if (errors.length) {\n _modal2.default.show(_react2.default.createElement(_errorsList2.default, { errors: errors }));\n return;\n } else {\n _modal2.default.show(_react2.default.createElement(_merge2.default, _this.props));\n }\n }, _this.delete = function () {\n if (!confirm(gettext(\"Are you sure you want to delete selected threads?\"))) {\n return;\n }\n\n _this.props.threads.map(function (thread) {\n _this.props.freezeThread(thread.id);\n });\n\n var ids = _this.props.threads.map(function (thread) {\n return thread.id;\n });\n\n _ajax2.default.delete(_this.props.api, ids).then(function () {\n _this.props.threads.map(function (thread) {\n _this.props.freezeThread(thread.id);\n _this.props.deleteThread(thread);\n });\n\n _snackbar2.default.success(gettext(\"Selected threads were deleted.\"));\n }, function (rejection) {\n if (rejection.status === 400) {\n (function () {\n var failedThreads = rejection.map(function (thread) {\n return thread.id;\n });\n\n _this.props.threads.map(function (thread) {\n _this.props.freezeThread(thread.id);\n if (failedThreads.indexOf(thread.id) === -1) {\n _this.props.deleteThread(thread);\n }\n });\n\n _modal2.default.show(_react2.default.createElement(_errorsList2.default, { errors: rejection }));\n })();\n } else {\n _snackbar2.default.apiError(rejection);\n }\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'getPinGloballyButton',\n\n /* jshint ignore:end */\n\n value: function getPinGloballyButton() {\n if (!this.props.moderation.can_pin_globally) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.pinGlobally,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'bookmark'\n ),\n gettext(\"Pin threads globally\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getPinLocallyButton',\n value: function getPinLocallyButton() {\n if (!this.props.moderation.can_pin) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.pinLocally,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'bookmark_border'\n ),\n gettext(\"Pin threads locally\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getUnpinButton',\n value: function getUnpinButton() {\n if (!this.props.moderation.can_pin) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.unpin,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'panorama_fish_eye'\n ),\n gettext(\"Unpin threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getMoveButton',\n value: function getMoveButton() {\n if (!this.props.moderation.can_move) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.move,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'arrow_forward'\n ),\n gettext(\"Move threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getMergeButton',\n value: function getMergeButton() {\n if (!this.props.moderation.can_merge) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.merge,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'call_merge'\n ),\n gettext(\"Merge threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getApproveButton',\n value: function getApproveButton() {\n if (!this.props.moderation.can_approve) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.approve,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'done'\n ),\n gettext(\"Approve threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getOpenButton',\n value: function getOpenButton() {\n if (!this.props.moderation.can_close) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.open,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_open'\n ),\n gettext(\"Open threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getCloseButton',\n value: function getCloseButton() {\n if (!this.props.moderation.can_close) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.close,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_outline'\n ),\n gettext(\"Close threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getUnhideButton',\n value: function getUnhideButton() {\n if (!this.props.moderation.can_unhide) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.unhide,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility'\n ),\n gettext(\"Unhide threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getHideButton',\n value: function getHideButton() {\n if (!this.props.moderation.can_hide) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n onClick: this.hide,\n type: 'button',\n className: 'btn btn-link'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility_off'\n ),\n gettext(\"Hide threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getDeleteButton',\n value: function getDeleteButton() {\n if (!this.props.moderation.can_delete) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.delete,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'clear'\n ),\n gettext(\"Delete threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'ul',\n { className: this.props.className },\n this.getPinGloballyButton(),\n this.getPinLocallyButton(),\n this.getUnpinButton(),\n this.getMoveButton(),\n this.getMergeButton(),\n this.getApproveButton(),\n this.getOpenButton(),\n this.getCloseButton(),\n this.getUnhideButton(),\n this.getHideButton(),\n this.getDeleteButton()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../reducers/selection\":345,\"../../../services/ajax\":352,\"../../../services/modal\":358,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../../utils/countdown\":369,\"./errors-list\":251,\"./merge\":252,\"./move\":253,\"react\":\"react\"}],251:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ThreadErrors = ThreadErrors;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: \"render\",\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n \"div\",\n { className: \"modal-dialog\", role: \"document\" },\n _react2.default.createElement(\n \"div\",\n { className: \"modal-content\" },\n _react2.default.createElement(\n \"div\",\n { className: \"modal-header\" },\n _react2.default.createElement(\n \"button\",\n {\n \"aria-label\": gettext(\"Close\"),\n className: \"close\",\n \"data-dismiss\": \"modal\",\n type: \"button\"\n },\n _react2.default.createElement(\n \"span\",\n { \"aria-hidden\": \"true\" },\n \"\\xD7\"\n )\n ),\n _react2.default.createElement(\n \"h4\",\n { className: \"modal-title\" },\n gettext(\"Threads moderation\")\n )\n ),\n _react2.default.createElement(\n \"div\",\n { className: \"modal-body\" },\n _react2.default.createElement(\n \"p\",\n { className: \"lead\" },\n gettext(\"One or more threads could not be deleted:\")\n ),\n _react2.default.createElement(\n \"ul\",\n { className: \"list-unstyled list-errored-items\" },\n this.props.errors.map(function (item) {\n return _react2.default.createElement(ThreadErrors, {\n errors: item.errors,\n key: item.thread.id,\n thread: item.thread\n });\n })\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\n/* jshint ignore:start */\n\n\nexports.default = _class;\nfunction ThreadErrors(_ref) {\n var errors = _ref.errors,\n thread = _ref.thread;\n\n return _react2.default.createElement(\n \"li\",\n null,\n _react2.default.createElement(\n \"h5\",\n null,\n thread.title\n ),\n errors.map(function (message, i) {\n return _react2.default.createElement(\n \"p\",\n null,\n message\n );\n })\n );\n}\n/* jshint ignore:end */\n\n},{\"react\":\"react\"}],252:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _categorySelect = require('../../category-select');\n\nvar _categorySelect2 = _interopRequireDefault(_categorySelect);\n\nvar _select = require('../../select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nvar _index = require('../../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _threads = require('../../../reducers/threads');\n\nvar _selection = require('../../../reducers/selection');\n\nvar select = _interopRequireWildcard(_selection);\n\nvar _errorsList = require('./errors-list');\n\nvar _errorsList2 = _interopRequireDefault(_errorsList);\n\nvar _mergePolls = require('../../merge-polls');\n\nvar _mergePolls2 = _interopRequireDefault(_mergePolls);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _validators = require('../../../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.getFormdata = function () {\n return {\n threads: _this.props.threads.map(function (thread) {\n return thread.id;\n }),\n title: _this.state.title,\n category: _this.state.category,\n weight: _this.state.weight,\n is_hidden: _this.state.is_hidden,\n is_closed: _this.state.is_closed\n };\n };\n\n _this.handleSuccess = function (apiResponse) {\n // unfreeze and remove merged threads\n _this.props.threads.forEach(function (thread) {\n _this.props.freezeThread(thread.id);\n _this.props.deleteThread(thread);\n });\n\n // deselect all threads\n _store2.default.dispatch(select.none());\n\n // append merged thread, filter threads\n _this.props.addThreads([apiResponse]);\n _store2.default.dispatch((0, _threads.filterThreads)(_this.props.route.category, _this.props.categoriesMap));\n\n // hide modal\n _modal2.default.hide();\n };\n\n _this.handleError = function (rejection) {\n if (rejection.status === 400) {\n if (rejection.polls) {\n _modal2.default.show(_react2.default.createElement(_mergePolls2.default, {\n api: _index2.default.get('MERGE_THREADS_API'),\n data: _this.getFormdata(),\n polls: rejection.polls,\n onError: _this.handleError,\n onSuccess: _this.handleSuccess\n }));\n } else {\n _this.setState({\n 'errors': Object.assign({}, _this.state.errors, rejection)\n });\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n }\n } else if (rejection.status === 403 && Array.isArray(rejection)) {\n _modal2.default.show(_react2.default.createElement(_errorsList2.default, { errors: rejection }));\n } else {\n _snackbar2.default.apiError(rejection);\n }\n };\n\n _this.onCategoryChange = function (ev) {\n var categoryId = ev.target.value;\n var newState = {\n category: categoryId\n };\n\n if (_this.acl[categoryId].can_pin_threads < newState.weight) {\n newState.weight = 0;\n }\n\n if (!_this.acl[categoryId].can_hide_threads) {\n newState.is_hidden = 0;\n }\n\n if (!_this.acl[categoryId].can_close_threads) {\n newState.is_closed = false;\n }\n\n _this.setState(newState);\n };\n\n _this.state = {\n isLoading: false,\n\n title: '',\n category: null,\n weight: 0,\n is_hidden: 0,\n is_closed: false,\n\n validators: {\n title: [validators.required()]\n },\n\n errors: {}\n };\n\n _this.acl = {};\n for (var i in props.user.acl.categories) {\n if (!props.user.acl.categories.hasOwnProperty(i)) {\n continue;\n }\n\n var acl = props.user.acl.categories[i];\n _this.acl[acl.id] = acl;\n }\n\n _this.categoryChoices = [];\n props.categories.forEach(function (category) {\n if (category.level > 0) {\n var _acl = _this.acl[category.id];\n var disabled = !_acl.can_start_threads || category.is_closed && !_acl.can_close_threads;\n\n _this.categoryChoices.push({\n value: category.id,\n disabled: disabled,\n level: category.level - 1,\n label: category.name\n });\n\n if (!disabled && !_this.state.category) {\n _this.state.category = category.id;\n }\n }\n });\n\n _this.isHiddenChoices = [{\n 'value': 0,\n 'icon': 'visibility',\n 'label': gettext(\"No\")\n }, {\n 'value': 1,\n 'icon': 'visibility_off',\n 'label': gettext(\"Yes\")\n }];\n\n _this.isClosedChoices = [{\n 'value': false,\n 'icon': 'lock_outline',\n 'label': gettext(\"No\")\n }, {\n 'value': true,\n 'icon': 'lock',\n 'label': gettext(\"Yes\")\n }];\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n this.setState({\n errors: this.validate()\n });\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(_index2.default.get('MERGE_THREADS_API'), this.getFormdata());\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getWeightChoices',\n\n /* jshint ignore:end */\n\n value: function getWeightChoices() {\n var choices = [{\n 'value': 0,\n 'icon': 'remove',\n 'label': gettext(\"Not pinned\")\n }, {\n 'value': 1,\n 'icon': 'bookmark_border',\n 'label': gettext(\"Pinned locally\")\n }];\n\n if (this.acl[this.state.category].can_pin_threads == 2) {\n choices.push({\n 'value': 2,\n 'icon': 'bookmark',\n 'label': gettext(\"Pinned globally\")\n });\n }\n\n return choices;\n }\n }, {\n key: 'renderWeightField',\n value: function renderWeightField() {\n if (this.acl[this.state.category].can_pin_threads) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Thread weight\"),\n 'for': 'id_weight' },\n _react2.default.createElement(_select2.default, { id: 'id_weight',\n onChange: this.bindInput('weight'),\n value: this.state.weight,\n choices: this.getWeightChoices() })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'renderHiddenField',\n value: function renderHiddenField() {\n if (this.acl[this.state.category].can_hide_threads) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Hide thread\"),\n 'for': 'id_is_hidden' },\n _react2.default.createElement(_select2.default, { id: 'id_is_closed',\n onChange: this.bindInput('is_hidden'),\n value: this.state.is_hidden,\n choices: this.isHiddenChoices })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'renderClosedField',\n value: function renderClosedField() {\n if (this.acl[this.state.category].can_close_threads) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Close thread\"),\n 'for': 'id_is_closed' },\n _react2.default.createElement(_select2.default, { id: 'id_is_closed',\n onChange: this.bindInput('is_closed'),\n value: this.state.is_closed,\n choices: this.isClosedChoices })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'renderForm',\n value: function renderForm() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Thread title\"),\n 'for': 'id_title',\n validation: this.state.errors.title },\n _react2.default.createElement('input', { id: 'id_title',\n className: 'form-control',\n type: 'text',\n onChange: this.bindInput('title'),\n value: this.state.title })\n ),\n _react2.default.createElement('div', { className: 'clearfix' }),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Category\"),\n 'for': 'id_category',\n validation: this.state.errors.category },\n _react2.default.createElement(_categorySelect2.default, { id: 'id_category',\n onChange: this.onCategoryChange,\n value: this.state.category,\n choices: this.categoryChoices })\n ),\n _react2.default.createElement('div', { className: 'clearfix' }),\n this.renderWeightField(),\n this.renderHiddenField(),\n this.renderClosedField()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Merge threads\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'renderCantMergeMessage',\n value: function renderCantMergeMessage() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"You can't move threads because there are no categories you are allowed to move them to.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n gettext(\"You need permission to start threads in category to be able to merge threads to it.\")\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n gettext(\"Ok\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (!this.state.category) {\n return 'modal-dialog modal-message';\n } else {\n return 'modal-dialog';\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName(), role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Merge threads\")\n )\n ),\n this.state.category ? this.renderForm() : this.renderCantMergeMessage()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../index\":291,\"../../../reducers/selection\":345,\"../../../reducers/threads\":348,\"../../../services/ajax\":352,\"../../../services/modal\":358,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../../utils/validators\":380,\"../../button\":5,\"../../category-select\":18,\"../../form\":52,\"../../form-group\":51,\"../../merge-polls\":55,\"../../select\":203,\"./errors-list\":251,\"react\":\"react\"}],253:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _categorySelect = require('../../category-select');\n\nvar _categorySelect2 = _interopRequireDefault(_categorySelect);\n\nvar _selection = require('../../../reducers/selection');\n\nvar select = _interopRequireWildcard(_selection);\n\nvar _threads = require('../../../reducers/threads');\n\nvar _modal = require('../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.handleSubmit = function (event) {\n // we don't reload page on submissions\n event.preventDefault();\n\n _modal2.default.hide();\n\n var onSuccess = function onSuccess() {\n _store2.default.dispatch((0, _threads.filterThreads)(_this.props.route.category, _this.props.categoriesMap));\n\n // deselect threads moved outside of visible scope\n var storeState = _store2.default.getState();\n var leftThreads = storeState.threads.map(function (thread) {\n return thread.id;\n });\n _store2.default.dispatch(select.all(storeState.selection.filter(function (thread) {\n return leftThreads.indexOf(thread) !== -1;\n })));\n };\n\n _this.props.callApi([{ op: 'replace', path: 'category', value: _this.state.category }, { op: 'replace', path: 'flatten-categories', value: null }, { op: 'add', path: 'acl', value: true }], gettext(\"Selected threads were moved.\"), onSuccess);\n };\n\n _this.state = {\n category: null\n };\n\n var acls = {};\n for (var i in props.user.acl.categories) {\n if (!props.user.acl.categories.hasOwnProperty(i)) {\n continue;\n }\n\n var acl = props.user.acl.categories[i];\n acls[acl.id] = acl;\n }\n\n _this.categoryChoices = [];\n props.categories.forEach(function (category) {\n if (category.level > 0) {\n var _acl = acls[category.id];\n var disabled = !_acl.can_start_threads || category.is_closed && !_acl.can_close_threads;\n\n _this.categoryChoices.push({\n value: category.id,\n disabled: disabled,\n level: category.level - 1,\n label: category.name\n });\n\n if (!disabled && !_this.state.category) {\n _this.state.category = category.id;\n }\n }\n });\n return _this;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'getClassName',\n\n /* jshint ignore:end */\n\n value: function getClassName() {\n if (!this.state.category) {\n return 'modal-dialog modal-message';\n } else {\n return 'modal-dialog';\n }\n }\n }, {\n key: 'renderForm',\n value: function renderForm() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"New category\"),\n 'for': 'id_new_category' },\n _react2.default.createElement(_categorySelect2.default, { id: 'id_new_category',\n onChange: this.bindInput('category'),\n value: this.state.category,\n choices: this.categoryChoices })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-primary' },\n gettext(\"Move threads\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'renderCantMoveMessage',\n value: function renderCantMoveMessage() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"You can't move threads because there are no categories you are allowed to move them to.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n gettext(\"You need permission to start threads in category to be able to move threads to it.\")\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n gettext(\"Ok\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName(), role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Move threads\")\n )\n ),\n this.state.category ? this.renderForm() : this.renderCantMoveMessage()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../reducers/selection\":345,\"../../../reducers/threads\":348,\"../../../services/modal\":358,\"../../../services/store\":364,\"../../category-select\":18,\"../../form\":52,\"../../form-group\":51,\"react\":\"react\"}],254:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _selection = require('../../../reducers/selection');\n\nvar select = _interopRequireWildcard(_selection);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.selectAll = function () {\n _store2.default.dispatch(select.all(_this.props.threads.map(function (thread) {\n return thread.id;\n })));\n }, _this.selectNone = function () {\n _store2.default.dispatch(select.none());\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'ul',\n { className: this.props.className },\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n type: 'button',\n onClick: this.selectAll\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'check_box'\n ),\n gettext(\"Select all\")\n )\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n type: 'button',\n onClick: this.selectNone\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'check_box_outline_blank'\n ),\n gettext(\"Select none\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../reducers/selection\":345,\"../../../services/store\":364,\"react\":\"react\"}],255:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var baseUrl = _ref.baseUrl,\n list = _ref.list,\n lists = _ref.lists;\n\n if (lists.length < 2) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'page-tabs' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'ul',\n { className: 'nav nav-pills' },\n lists.map(function (item) {\n return _react2.default.createElement(\n _li2.default,\n {\n isControlled: true,\n isActive: item.path === list.path,\n key: baseUrl + item.path\n },\n _react2.default.createElement(\n _reactRouter.Link,\n { to: baseUrl + item.path },\n item.name\n )\n );\n })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nvar _li = require('../li');\n\nvar _li2 = _interopRequireDefault(_li);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../li\":53,\"react\":\"react\",\"react-router\":\"react-router\"}],256:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getSelect = getSelect;\nexports.getLists = getLists;\nexports.paths = paths;\n\nvar _reactRedux = require('react-redux');\n\nvar _route = require('./route');\n\nvar _route2 = _interopRequireDefault(_route);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getSelect(options) {\n return function (store) {\n return {\n 'options': options,\n 'selection': store.selection,\n 'threads': store.threads,\n 'tick': store.tick.tick,\n 'user': store.auth.user\n };\n };\n}\n\nfunction getLists(user) {\n var lists = [{\n type: 'all',\n path: '',\n name: gettext(\"All\"),\n longName: gettext(\"All threads\")\n }];\n\n if (user.id) {\n lists.push({\n type: 'my',\n path: 'my/',\n name: gettext(\"My\"),\n longName: gettext(\"My threads\")\n });\n lists.push({\n type: 'new',\n path: 'new/',\n name: gettext(\"New\"),\n longName: gettext(\"New threads\")\n });\n lists.push({\n type: 'unread',\n path: 'unread/',\n name: gettext(\"Unread\"),\n longName: gettext(\"Unread threads\")\n });\n lists.push({\n type: 'subscribed',\n path: 'subscribed/',\n name: gettext(\"Subscribed\"),\n longName: gettext(\"Subscribed threads\")\n });\n\n if (user.acl.can_see_unapproved_content_lists) {\n lists.push({\n type: 'unapproved',\n path: 'unapproved/',\n name: gettext(\"Unapproved\"),\n longName: gettext(\"Unapproved content\")\n });\n }\n }\n\n return lists;\n}\n\nfunction paths(user, mode) {\n var lists = getLists(user);\n var routes = [];\n var categoriesMap = {};\n\n _index2.default.get('CATEGORIES').forEach(function (category) {\n lists.forEach(function (list) {\n categoriesMap[category.id] = category;\n\n routes.push({\n path: category.url.index + list.path,\n component: (0, _reactRedux.connect)(getSelect(mode))(_route2.default),\n\n categories: _index2.default.get('CATEGORIES'),\n categoriesMap: categoriesMap,\n category: category,\n\n lists: lists,\n list: list\n });\n });\n });\n\n return routes;\n}\n\n},{\"../../index\":291,\"./route\":257,\"react-redux\":\"react-redux\"}],257:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _compare = require('./compare');\n\nvar _container = require('./container');\n\nvar _container2 = _interopRequireDefault(_container);\n\nvar _header = require('./header');\n\nvar _header2 = _interopRequireDefault(_header);\n\nvar _utils = require('./utils');\n\nvar _threadsList = require('../threads-list');\n\nvar _threadsList2 = _interopRequireDefault(_threadsList);\n\nvar _listEmpty = require('./list-empty');\n\nvar _listEmpty2 = _interopRequireDefault(_listEmpty);\n\nvar _withDropdown = require('../with-dropdown');\n\nvar _withDropdown2 = _interopRequireDefault(_withDropdown);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _selection = require('../../reducers/selection');\n\nvar select = _interopRequireWildcard(_selection);\n\nvar _threads = require('../../reducers/threads');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _polls = require('../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _pageTitle = require('../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nvar _sets = require('../../utils/sets');\n\nvar sets = _interopRequireWildcard(_sets);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_WithDropdown) {\n _inherits(_class, _WithDropdown);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.loadMore = function () {\n _this.setState({\n isBusy: true\n });\n\n _this.loadThreads(_this.getCategory(), _this.state.page + 1);\n };\n\n _this.pollResponse = function (data) {\n _this.setState({\n diff: Object.assign({}, data, {\n results: (0, _utils.diffThreads)(_this.props.threads, data.results)\n })\n });\n };\n\n _this.addThreads = function (threads) {\n _store2.default.dispatch((0, _threads.append)(threads, _this.getSorting()));\n };\n\n _this.applyDiff = function () {\n _this.addThreads(_this.state.diff.results);\n\n _this.setState(Object.assign({}, _this.state.diff, {\n moderation: (0, _utils.getModerationActions)(_store2.default.getState().threads),\n\n diff: {\n results: []\n }\n }));\n };\n\n _this.freezeThread = function (thread) {\n _this.setState(function (currentState) {\n return {\n busyThreads: sets.toggle(currentState.busyThreads, thread)\n };\n });\n };\n\n _this.updateThread = function (thread) {\n _store2.default.dispatch((0, _threads.patch)(thread, thread, _this.getSorting()));\n };\n\n _this.deleteThread = function (thread) {\n _store2.default.dispatch((0, _threads.deleteThread)(thread));\n };\n\n _this.state = {\n isMounted: true,\n\n isLoaded: false,\n isBusy: false,\n\n diff: {\n results: []\n },\n\n moderation: [],\n busyThreads: [],\n\n dropdown: false,\n subcategories: [],\n\n count: 0,\n more: 0,\n\n page: 1,\n pages: 1\n };\n\n var category = _this.getCategory();\n\n if (_index2.default.has('THREADS')) {\n _this.initWithPreloadedData(category, _index2.default.get('THREADS'));\n } else {\n _this.initWithoutPreloadedData(category);\n }\n return _this;\n }\n\n _createClass(_class, [{\n key: 'getCategory',\n value: function getCategory() {\n if (!this.props.route.category.special_role) {\n return this.props.route.category.id;\n } else {\n return null;\n }\n }\n }, {\n key: 'initWithPreloadedData',\n value: function initWithPreloadedData(category, data) {\n this.state = Object.assign(this.state, {\n moderation: (0, _utils.getModerationActions)(data.results),\n\n subcategories: data.subcategories,\n\n count: data.count,\n more: data.more,\n\n page: data.page,\n pages: data.pages\n });\n\n this.startPolling(category);\n }\n }, {\n key: 'initWithoutPreloadedData',\n value: function initWithoutPreloadedData(category) {\n this.loadThreads(category);\n }\n }, {\n key: 'loadThreads',\n value: function loadThreads(category) {\n var _this2 = this;\n\n var page = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n\n _ajax2.default.get(this.props.options.api, {\n category: category,\n list: this.props.route.list.type,\n page: page || 1\n }, 'threads').then(function (data) {\n if (!_this2.state.isMounted) {\n // user changed route before loading completion\n return;\n }\n\n if (page === 1) {\n _store2.default.dispatch((0, _threads.hydrate)(data.results));\n } else {\n _store2.default.dispatch((0, _threads.append)(data.results, _this2.getSorting()));\n }\n\n _this2.setState({\n isLoaded: true,\n isBusy: false,\n\n moderation: (0, _utils.getModerationActions)(_store2.default.getState().threads),\n\n subcategories: data.subcategories,\n\n count: data.count,\n more: data.more,\n\n page: data.page,\n pages: data.pages\n });\n\n _this2.startPolling(category);\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n });\n }\n }, {\n key: 'startPolling',\n value: function startPolling(category) {\n _polls2.default.start({\n poll: 'threads',\n url: this.props.options.api,\n data: {\n category: category,\n list: this.props.route.list.type\n },\n frequency: 120 * 1000,\n update: this.pollResponse\n });\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.setPageTitle();\n\n if (_index2.default.has('THREADS')) {\n // unlike in other components, routes are root components for threads\n // so we can't dispatch store action from constructor\n _store2.default.dispatch((0, _threads.hydrate)(_index2.default.pop('THREADS').results));\n\n this.setState({\n isLoaded: true\n });\n }\n\n _store2.default.dispatch(select.none());\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this.state.isMounted = false;\n _polls2.default.stop('threads');\n }\n }, {\n key: 'getTitle',\n value: function getTitle() {\n if (this.props.options.title) {\n return this.props.options.title;\n }\n\n return (0, _utils.getTitle)(this.props.route);\n }\n }, {\n key: 'setPageTitle',\n value: function setPageTitle() {\n if (this.props.route.category.level || !_index2.default.get('THREADS_ON_INDEX')) {\n _pageTitle2.default.set((0, _utils.getPageTitle)(this.props.route));\n } else if (this.props.options.title) {\n _pageTitle2.default.set(this.props.options.title);\n } else {\n if (_index2.default.get('SETTINGS').forum_index_title) {\n document.title = _index2.default.get('SETTINGS').forum_index_title;\n } else {\n document.title = _index2.default.get('SETTINGS').forum_name;\n }\n }\n }\n }, {\n key: 'getSorting',\n value: function getSorting() {\n if (this.props.route.category.level) {\n return _compare.compareWeight;\n } else {\n return _compare.compareGlobalWeight;\n }\n }\n\n /* jshint ignore:start */\n\n // AJAX\n\n // Thread state utils\n\n }, {\n key: 'getMoreButton',\n\n /* jshint ignore:end */\n\n value: function getMoreButton() {\n if (this.state.more) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'pager-more' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn btn-default btn-outline',\n loading: this.state.isBusy || this.state.busyThreads.length,\n onClick: this.loadMore\n },\n gettext(\"Show more\")\n )\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n var className = 'page page-threads';\n className += ' page-threads-' + this.props.route.list.type;\n if (this.props.route.category.css_class) {\n className += ' page-threads-' + this.props.route.category.css_class;\n }\n return className;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName() },\n _react2.default.createElement(_header2.default, {\n categories: this.props.route.categoriesMap,\n disabled: !this.state.isLoaded,\n startThread: this.props.options.startThread,\n threads: this.props.threads,\n title: this.getTitle(),\n toggleNav: this.toggleNav,\n route: this.props.route,\n user: this.props.user\n }),\n _react2.default.createElement(\n _container2.default,\n {\n api: this.props.options.api,\n\n route: this.props.route,\n subcategories: this.state.subcategories,\n user: this.props.user,\n\n pageLead: this.props.options.pageLead,\n\n threads: this.props.threads,\n threadsCount: this.state.count,\n\n moderation: this.state.moderation,\n selection: this.props.selection,\n\n busyThreads: this.state.busyThreads,\n addThreads: this.addThreads,\n freezeThread: this.freezeThread,\n deleteThread: this.deleteThread,\n updateThread: this.updateThread,\n\n isLoaded: this.state.isLoaded,\n isBusy: this.state.isBusy\n },\n _react2.default.createElement(\n _threadsList2.default,\n {\n category: this.props.route.category,\n categories: this.props.route.categoriesMap,\n list: this.props.route.list,\n selection: this.props.selection,\n threads: this.props.threads,\n\n diffSize: this.state.diff.results.length,\n applyDiff: this.applyDiff,\n\n showOptions: !!this.props.user.id,\n\n isLoaded: this.state.isLoaded,\n busyThreads: this.state.busyThreads\n },\n _react2.default.createElement(_listEmpty2.default, {\n category: this.props.route.category,\n emptyMessage: this.props.options.emptyMessage,\n list: this.props.route.list\n })\n ),\n this.getMoreButton()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_withDropdown2.default);\n\nexports.default = _class;\n\n},{\"../../index\":291,\"../../reducers/selection\":345,\"../../reducers/threads\":348,\"../../services/ajax\":352,\"../../services/page-title\":360,\"../../services/polls\":361,\"../../services/snackbar\":363,\"../../services/store\":364,\"../../utils/sets\":378,\"../button\":5,\"../threads-list\":227,\"../with-dropdown\":288,\"./compare\":246,\"./container\":247,\"./header\":248,\"./list-empty\":249,\"./utils\":259,\"react\":\"react\"}],258:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _categoryPicker = require('./category-picker');\n\nvar _categoryPicker2 = _interopRequireDefault(_categoryPicker);\n\nvar _controls = require('./moderation/controls');\n\nvar _controls2 = _interopRequireDefault(_controls);\n\nvar _selection = require('./moderation/selection');\n\nvar _selection2 = _interopRequireDefault(_selection);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getCategoryPicker',\n value: function getCategoryPicker() {\n if (!this.props.subcategories.length) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(_categoryPicker2.default, {\n categories: this.props.categoriesMap,\n choices: this.props.subcategories,\n list: this.props.list\n });\n /* jshint ignore:end */\n }\n }, {\n key: 'showModerationOptions',\n value: function showModerationOptions() {\n return this.props.user.id && this.props.moderation.allow;\n }\n }, {\n key: 'getSelectedThreads',\n value: function getSelectedThreads() {\n var _this2 = this;\n\n return this.props.threads.filter(function (thread) {\n return _this2.props.selection.indexOf(thread.id) >= 0;\n });\n }\n }, {\n key: 'getModerationButton',\n value: function getModerationButton() {\n if (!this.showModerationOptions()) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-6 col-sm-3 col-md-2' },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group btn-group-justified' },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group dropdown' },\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: 'btn btn-default btn-outline dropdown-toggle',\n 'data-toggle': 'dropdown',\n 'aria-haspopup': 'true',\n 'aria-expanded': 'false',\n disabled: this.props.disabled || !this.props.selection.length\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'settings'\n ),\n gettext(\"Options\")\n ),\n _react2.default.createElement(_controls2.default, {\n addThreads: this.props.addThreads,\n api: this.props.api,\n categories: this.props.categories,\n categoriesMap: this.props.categoriesMap,\n className: 'dropdown-menu dropdown-menu-right stick-to-bottom',\n deleteThread: this.props.deleteThread,\n freezeThread: this.props.freezeThread,\n moderation: this.props.moderation,\n route: this.props.route,\n threads: this.getSelectedThreads(),\n updateThread: this.props.updateThread,\n user: this.props.user\n })\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getSelectionButton',\n value: function getSelectionButton() {\n if (!this.showModerationOptions()) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-3 col-sm-2 col-md-1' },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group btn-group-justified' },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group dropdown' },\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: 'btn btn-default btn-outline btn-icon dropdown-toggle',\n 'data-toggle': 'dropdown',\n 'aria-haspopup': 'true',\n 'aria-expanded': 'false',\n disabled: this.props.disabled\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'select_all'\n )\n ),\n _react2.default.createElement(_selection2.default, {\n className: 'dropdown-menu dropdown-menu-right stick-to-bottom',\n threads: this.props.threads\n })\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'row row-toolbar row-toolbar-bottom-margin' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3 col-sm-3 col-md-2 dropdown' },\n this.getCategoryPicker()\n ),\n _react2.default.createElement('div', { className: 'hidden-xs col-sm-4 col-md-7' }),\n this.getModerationButton(),\n this.getSelectionButton()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./category-picker\":245,\"./moderation/controls\":250,\"./moderation/selection\":254,\"react\":\"react\"}],259:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getPageTitle = getPageTitle;\nexports.getTitle = getTitle;\nexports.isThreadChanged = isThreadChanged;\nexports.diffThreads = diffThreads;\nexports.getModerationActions = getModerationActions;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getPageTitle(route) {\n if (route.category.level) {\n if (route.list.path) {\n return {\n title: route.list.longName,\n parent: route.category.name\n };\n } else {\n return {\n title: route.category.name\n };\n }\n } else if (_index2.default.get('THREADS_ON_INDEX')) {\n if (route.list.path) {\n return {\n title: route.list.longName\n };\n } else {\n return null;\n }\n } else {\n if (route.list.path) {\n return {\n title: route.list.longName,\n parent: gettext(\"Threads\")\n };\n } else {\n return {\n title: gettext(\"Threads\")\n };\n }\n }\n}\n\nfunction getTitle(route) {\n if (route.category.level) {\n return route.category.name;\n } else if (_index2.default.get('THREADS_ON_INDEX')) {\n if (_index2.default.get('SETTINGS').forum_index_title) {\n return _index2.default.get('SETTINGS').forum_index_title;\n } else {\n return _index2.default.get('SETTINGS').forum_name;\n }\n } else {\n return gettext(\"Threads\");\n }\n}\n\nfunction isThreadChanged(current, fromDb) {\n return [current.title === fromDb.title, current.weight === fromDb.weight, current.category === fromDb.category, current.last_post === fromDb.last_post, current.last_poster_name === fromDb.last_poster_name].indexOf(false) >= 0;\n}\n\nfunction diffThreads(current, fromDb) {\n var currentMap = {};\n current.forEach(function (thread) {\n currentMap[thread.id] = thread;\n });\n\n return fromDb.filter(function (thread) {\n if (currentMap[thread.id]) {\n return isThreadChanged(currentMap[thread.id], thread);\n } else {\n return true;\n }\n });\n}\n\nfunction getModerationActions(threads) {\n var moderation = {\n allow: false,\n\n can_approve: 0,\n can_close: 0,\n can_delete: 0,\n can_hide: 0,\n can_merge: 0,\n can_move: 0,\n can_pin: 0,\n can_pin_globally: 0,\n can_unhide: 0\n };\n\n threads.forEach(function (thread) {\n if (thread.is_unapproved && thread.acl.can_approve > moderation.can_approve) {\n moderation.can_approve = thread.acl.can_approve;\n }\n\n if (thread.acl.can_close > moderation.can_close) {\n moderation.can_close = thread.acl.can_close;\n }\n\n if (thread.acl.can_delete > moderation.can_delete) {\n moderation.can_delete = thread.acl.can_delete;\n }\n\n if (thread.acl.can_hide > moderation.can_hide) {\n moderation.can_hide = thread.acl.can_hide;\n }\n\n if (thread.acl.can_merge > moderation.can_merge) {\n moderation.can_merge = thread.acl.can_merge;\n }\n\n if (thread.acl.can_move > moderation.can_move) {\n moderation.can_move = thread.acl.can_move;\n }\n\n if (thread.acl.can_pin > moderation.can_pin) {\n moderation.can_pin = thread.acl.can_pin;\n }\n\n if (thread.acl.can_pin_globally > moderation.can_pin_globally) {\n moderation.can_pin_globally = thread.acl.can_pin_globally;\n }\n\n if (thread.acl.can_unhide > moderation.can_unhide) {\n moderation.can_unhide = thread.acl.can_unhide;\n }\n\n moderation.allow = moderation.can_approve || moderation.can_close || moderation.can_delete || moderation.can_hide || moderation.can_merge || moderation.can_move || moderation.can_pin || moderation.can_pin_globally || moderation.can_unhide;\n });\n\n return moderation;\n}\n\n},{\"../../index\":291}],260:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CompactGuestNav = exports.GuestNav = exports.GuestMenu = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _navbarSearch = require('../navbar-search');\n\nvar _navbarSearch2 = _interopRequireDefault(_navbarSearch);\n\nvar _registerButton = require('../register-button');\n\nvar _registerButton2 = _interopRequireDefault(_registerButton);\n\nvar _signIn = require('../sign-in.js');\n\nvar _signIn2 = _interopRequireDefault(_signIn);\n\nvar _mobileNavbarDropdown = require('../../services/mobile-navbar-dropdown');\n\nvar _mobileNavbarDropdown2 = _interopRequireDefault(_mobileNavbarDropdown);\n\nvar _modal = require('../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar GuestMenu = exports.GuestMenu = function (_React$Component) {\n _inherits(GuestMenu, _React$Component);\n\n function GuestMenu() {\n _classCallCheck(this, GuestMenu);\n\n return _possibleConstructorReturn(this, (GuestMenu.__proto__ || Object.getPrototypeOf(GuestMenu)).apply(this, arguments));\n }\n\n _createClass(GuestMenu, [{\n key: 'showSignInModal',\n value: function showSignInModal() {\n _modal2.default.show(_signIn2.default);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'ul',\n {\n className: 'dropdown-menu user-dropdown dropdown-menu-right',\n role: 'menu'\n },\n _react2.default.createElement(\n 'li',\n { className: 'guest-preview' },\n _react2.default.createElement(\n 'h4',\n null,\n gettext(\"You are browsing as guest.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n gettext('Sign in or register to start and participate in discussions.')\n ),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-6' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sign-in btn-block',\n onClick: this.showSignInModal,\n type: 'button'\n },\n gettext(\"Sign in\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-6' },\n _react2.default.createElement(\n _registerButton2.default,\n { className: 'btn-success btn-register btn-block' },\n gettext(\"Register\")\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return GuestMenu;\n}(_react2.default.Component);\n\nvar GuestNav = exports.GuestNav = function (_GuestMenu) {\n _inherits(GuestNav, _GuestMenu);\n\n function GuestNav() {\n _classCallCheck(this, GuestNav);\n\n return _possibleConstructorReturn(this, (GuestNav.__proto__ || Object.getPrototypeOf(GuestNav)).apply(this, arguments));\n }\n\n _createClass(GuestNav, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'nav nav-guest' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn navbar-btn btn-default btn-sign-in',\n onClick: this.showSignInModal,\n type: 'button'\n },\n gettext(\"Sign in\")\n ),\n _react2.default.createElement(\n _registerButton2.default,\n { className: 'navbar-btn btn-success btn-register' },\n gettext(\"Register\")\n ),\n _react2.default.createElement(\n 'div',\n { className: 'navbar-left' },\n _react2.default.createElement(_navbarSearch2.default, null)\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return GuestNav;\n}(GuestMenu);\n\nvar CompactGuestNav = exports.CompactGuestNav = function (_React$Component2) {\n _inherits(CompactGuestNav, _React$Component2);\n\n function CompactGuestNav() {\n _classCallCheck(this, CompactGuestNav);\n\n return _possibleConstructorReturn(this, (CompactGuestNav.__proto__ || Object.getPrototypeOf(CompactGuestNav)).apply(this, arguments));\n }\n\n _createClass(CompactGuestNav, [{\n key: 'showGuestMenu',\n value: function showGuestMenu() {\n _mobileNavbarDropdown2.default.show(GuestMenu);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'button',\n { type: 'button', onClick: this.showGuestMenu },\n _react2.default.createElement(_avatar2.default, { size: '64' })\n );\n /* jshint ignore:end */\n }\n }]);\n\n return CompactGuestNav;\n}(_react2.default.Component);\n\n},{\"../../services/mobile-navbar-dropdown\":357,\"../../services/modal\":358,\"../avatar\":3,\"../navbar-search\":73,\"../register-button\":191,\"../sign-in.js\":204,\"react\":\"react\"}],261:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CompactUserMenu = exports.UserMenu = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.select = select;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _guestNav = require('./guest-nav');\n\nvar _userNav = require('./user-nav');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\n// jshint ignore:line\n\nvar UserMenu = exports.UserMenu = function (_React$Component) {\n _inherits(UserMenu, _React$Component);\n\n function UserMenu() {\n _classCallCheck(this, UserMenu);\n\n return _possibleConstructorReturn(this, (UserMenu.__proto__ || Object.getPrototypeOf(UserMenu)).apply(this, arguments));\n }\n\n _createClass(UserMenu, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n if (this.props.isAuthenticated) {\n return _react2.default.createElement(_userNav.UserNav, { user: this.props.user });\n } else {\n return _react2.default.createElement(_guestNav.GuestNav, null);\n }\n /* jshint ignore:end */\n }\n }]);\n\n return UserMenu;\n}(_react2.default.Component);\n\nvar CompactUserMenu = exports.CompactUserMenu = function (_React$Component2) {\n _inherits(CompactUserMenu, _React$Component2);\n\n function CompactUserMenu() {\n _classCallCheck(this, CompactUserMenu);\n\n return _possibleConstructorReturn(this, (CompactUserMenu.__proto__ || Object.getPrototypeOf(CompactUserMenu)).apply(this, arguments));\n }\n\n _createClass(CompactUserMenu, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n if (this.props.isAuthenticated) {\n return _react2.default.createElement(_userNav.CompactUserNav, { user: this.props.user });\n } else {\n return _react2.default.createElement(_guestNav.CompactGuestNav, null);\n }\n /* jshint ignore:end */\n }\n }]);\n\n return CompactUserMenu;\n}(_react2.default.Component);\n\nfunction select(state) {\n return state.auth;\n}\n\n},{\"./guest-nav\":260,\"./user-nav\":262,\"react\":\"react\"}],262:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CompactUserNav = exports.UserMenu = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.PrivateThreadsBadge = PrivateThreadsBadge;\nexports.UserNav = UserNav;\nexports.UserPrivateThreadsLink = UserPrivateThreadsLink;\nexports.selectUserMenu = selectUserMenu;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRedux = require('react-redux');\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _root = require('../change-avatar/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _navbarSearch = require('../navbar-search');\n\nvar _navbarSearch2 = _interopRequireDefault(_navbarSearch);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _mobileNavbarDropdown = require('../../services/mobile-navbar-dropdown');\n\nvar _mobileNavbarDropdown2 = _interopRequireDefault(_mobileNavbarDropdown);\n\nvar _modal = require('../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar UserMenu = exports.UserMenu = function (_React$Component) {\n _inherits(UserMenu, _React$Component);\n\n function UserMenu() {\n _classCallCheck(this, UserMenu);\n\n return _possibleConstructorReturn(this, (UserMenu.__proto__ || Object.getPrototypeOf(UserMenu)).apply(this, arguments));\n }\n\n _createClass(UserMenu, [{\n key: 'logout',\n value: function logout() {\n var decision = confirm(gettext(\"Are you sure you want to sign out?\"));\n if (decision) {\n $('#hidden-logout-form').submit();\n }\n }\n }, {\n key: 'changeAvatar',\n value: function changeAvatar() {\n _modal2.default.show((0, _reactRedux.connect)(_root.select)(_root2.default));\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n var user = this.props.user;\n\n\n return _react2.default.createElement(\n 'ul',\n {\n className: 'dropdown-menu user-dropdown dropdown-menu-right',\n role: 'menu'\n },\n _react2.default.createElement(\n 'li',\n { className: 'dropdown-header' },\n _react2.default.createElement(\n 'strong',\n null,\n user.username\n ),\n _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled list-inline user-stats' },\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'message'\n ),\n user.posts\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'forum'\n ),\n user.threads\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'favorite'\n ),\n user.followers\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'favorite_outline'\n ),\n user.following\n )\n )\n ),\n _react2.default.createElement('li', { className: 'divider' }),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n { href: user.url },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'account_circle'\n ),\n gettext(\"See your profile\")\n )\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n { href: _2.default.get('USERCP_URL') },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'done_all'\n ),\n gettext(\"Change options\")\n )\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn-link',\n onClick: this.changeAvatar,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'portrait'\n ),\n gettext(\"Change avatar\")\n )\n ),\n !!user.acl.can_use_private_threads && _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n { href: _2.default.get('PRIVATE_THREADS_URL') },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'message'\n ),\n gettext(\"Private threads\"),\n _react2.default.createElement(PrivateThreadsBadge, { user: user })\n )\n ),\n _react2.default.createElement('li', { className: 'divider' }),\n _react2.default.createElement(\n 'li',\n { className: 'dropdown-buttons' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block',\n onClick: this.logout,\n type: 'button'\n },\n gettext(\"Log out\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return UserMenu;\n}(_react2.default.Component);\n\nfunction PrivateThreadsBadge(_ref) {\n var user = _ref.user;\n\n if (!user.unread_private_threads) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: 'badge' },\n user.unread_private_threads\n );\n /* jshint ignore:end */\n}\n\n/* jshint ignore:start */\nfunction UserNav(_ref2) {\n var user = _ref2.user;\n\n return _react2.default.createElement(\n 'ul',\n { className: 'ul nav navbar-nav nav-user' },\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(_navbarSearch2.default, null)\n ),\n _react2.default.createElement(UserPrivateThreadsLink, { user: user }),\n _react2.default.createElement(\n 'li',\n { className: 'dropdown' },\n _react2.default.createElement(\n 'a',\n {\n 'aria-haspopup': 'true',\n 'aria-expanded': 'false',\n className: 'dropdown-toggle',\n 'data-toggle': 'dropdown',\n href: user.url,\n role: 'button'\n },\n _react2.default.createElement(_avatar2.default, { user: user, size: '64' })\n ),\n _react2.default.createElement(UserMenu, { user: user })\n )\n );\n}\n/* jshint ignore:end */\n\nfunction UserPrivateThreadsLink(_ref3) {\n var user = _ref3.user;\n\n if (!user.acl.can_use_private_threads) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n {\n className: 'navbar-icon',\n href: _2.default.get('PRIVATE_THREADS_URL'),\n title: gettext(\"You have unread private threads.\") },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'message'\n ),\n user.unread_private_threads > 0 && _react2.default.createElement(\n 'span',\n { className: 'badge' },\n user.unread_private_threads\n )\n )\n );\n /* jshint ignore:end */\n}\n\nfunction selectUserMenu(state) {\n return {\n user: state.auth.user\n };\n}\n\nvar CompactUserNav = exports.CompactUserNav = function (_React$Component2) {\n _inherits(CompactUserNav, _React$Component2);\n\n function CompactUserNav() {\n _classCallCheck(this, CompactUserNav);\n\n return _possibleConstructorReturn(this, (CompactUserNav.__proto__ || Object.getPrototypeOf(CompactUserNav)).apply(this, arguments));\n }\n\n _createClass(CompactUserNav, [{\n key: 'showUserMenu',\n value: function showUserMenu() {\n _mobileNavbarDropdown2.default.showConnected('user-menu', (0, _reactRedux.connect)(selectUserMenu)(UserMenu));\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'button',\n { type: 'button', onClick: this.showUserMenu },\n _react2.default.createElement(_avatar2.default, { user: this.props.user, size: '50' })\n );\n /* jshint ignore:end */\n }\n }]);\n\n return CompactUserNav;\n}(_react2.default.Component);\n\n},{\"../..\":291,\"../../services/mobile-navbar-dropdown\":357,\"../../services/modal\":358,\"../avatar\":3,\"../change-avatar/root\":22,\"../navbar-search\":73,\"react\":\"react\",\"react-redux\":\"react-redux\"}],263:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.StatusLabel = exports.StatusIcon = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.getStatusClassName = getStatusClassName;\nexports.getStatusDescription = getStatusDescription;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getClass',\n value: function getClass() {\n return getStatusClassName(this.props.status);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: this.getClass() },\n this.props.children\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\nvar StatusIcon = exports.StatusIcon = function (_React$Component2) {\n _inherits(StatusIcon, _React$Component2);\n\n function StatusIcon() {\n _classCallCheck(this, StatusIcon);\n\n return _possibleConstructorReturn(this, (StatusIcon.__proto__ || Object.getPrototypeOf(StatusIcon)).apply(this, arguments));\n }\n\n _createClass(StatusIcon, [{\n key: 'getIcon',\n value: function getIcon() {\n if (this.props.status.is_banned) {\n return 'remove_circle_outline';\n } else if (this.props.status.is_hidden) {\n return 'help_outline';\n } else if (this.props.status.is_online_hidden) {\n return 'label';\n } else if (this.props.status.is_offline_hidden) {\n return 'label_outline';\n } else if (this.props.status.is_online) {\n return 'lens';\n } else if (this.props.status.is_offline) {\n return 'panorama_fish_eye';\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: 'material-icon status-icon' },\n this.getIcon()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return StatusIcon;\n}(_react2.default.Component);\n\nvar StatusLabel = exports.StatusLabel = function (_React$Component3) {\n _inherits(StatusLabel, _React$Component3);\n\n function StatusLabel() {\n _classCallCheck(this, StatusLabel);\n\n return _possibleConstructorReturn(this, (StatusLabel.__proto__ || Object.getPrototypeOf(StatusLabel)).apply(this, arguments));\n }\n\n _createClass(StatusLabel, [{\n key: 'getHelp',\n value: function getHelp() {\n return getStatusDescription(this.props.user, this.props.status);\n }\n }, {\n key: 'getLabel',\n value: function getLabel() {\n if (this.props.status.is_banned) {\n return gettext(\"Banned\");\n } else if (this.props.status.is_hidden) {\n return gettext(\"Hidden\");\n } else if (this.props.status.is_online_hidden) {\n return gettext(\"Online (hidden)\");\n } else if (this.props.status.is_offline_hidden) {\n return gettext(\"Offline (hidden)\");\n } else if (this.props.status.is_online) {\n return gettext(\"Online\");\n } else if (this.props.status.is_offline) {\n return gettext(\"Offline\");\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: this.props.className || \"status-label\",\n title: this.getHelp() },\n this.getLabel()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return StatusLabel;\n}(_react2.default.Component);\n\nfunction getStatusClassName(status) {\n var className = '';\n if (status.is_banned) {\n className = 'banned';\n } else if (status.is_hidden) {\n className = 'offline';\n } else if (status.is_online_hidden) {\n className = 'online';\n } else if (status.is_offline_hidden) {\n className = 'offline';\n } else if (status.is_online) {\n className = 'online';\n } else if (status.is_offline) {\n className = 'offline';\n }\n\n return 'user-status user-' + className;\n}\n\nfunction getStatusDescription(user, status) {\n if (status.is_banned) {\n if (status.banned_until) {\n return interpolate(gettext(\"%(username)s is banned until %(ban_expires)s\"), {\n username: user.username,\n ban_expires: status.banned_until.format('LL, LT')\n }, true);\n } else {\n return interpolate(gettext(\"%(username)s is banned\"), {\n username: user.username\n }, true);\n }\n } else if (status.is_hidden) {\n return interpolate(gettext(\"%(username)s is hiding presence\"), {\n username: user.username\n }, true);\n } else if (status.is_online_hidden) {\n return interpolate(gettext(\"%(username)s is online (hidden)\"), {\n username: user.username\n }, true);\n } else if (status.is_offline_hidden) {\n return interpolate(gettext(\"%(username)s was last seen %(last_click)s (hidden)\"), {\n username: user.username,\n last_click: status.last_click.fromNow()\n }, true);\n } else if (status.is_online) {\n return interpolate(gettext(\"%(username)s is online\"), {\n username: user.username\n }, true);\n } else if (status.is_offline) {\n return interpolate(gettext(\"%(username)s was last seen %(last_click)s\"), {\n username: user.username,\n last_click: status.last_click.fromNow()\n }, true);\n }\n}\n\n},{\"react\":\"react\"}],264:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _random = require('../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.props.hiddenOnMobile) {\n return 'list-group-item hidden-xs hidden-sm';\n } else {\n return 'list-group-item';\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: this.getClassName() },\n _react2.default.createElement(\n 'div',\n { className: 'change-avatar' },\n _react2.default.createElement(\n 'span',\n { className: 'user-avatar' },\n _react2.default.createElement(_avatar2.default, { size: '100' })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'change-author' },\n _react2.default.createElement(\n 'span',\n { className: 'ui-preview-text', style: { width: random.int(30, 100) + \"px\" } },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'change' },\n _react2.default.createElement(\n 'span',\n { className: 'ui-preview-text', style: { width: random.int(30, 70) + \"px\" } },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'arrow_forward'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'ui-preview-text', style: { width: random.int(30, 70) + \"px\" } },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'change-date' },\n _react2.default.createElement(\n 'span',\n { className: 'ui-preview-text', style: { width: random.int(80, 140) + \"px\" } },\n '\\xA0'\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../utils/random\":375,\"../avatar\":3,\"react\":\"react\"}],265:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'renderUserAvatar',\n value: function renderUserAvatar() {\n if (this.props.change.changed_by) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'a',\n { href: this.props.change.changed_by.url, className: 'user-avatar-wrapper' },\n _react2.default.createElement(_avatar2.default, { user: this.props.change.changed_by, size: '100' })\n );\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: 'user-avatar-wrapper' },\n _react2.default.createElement(_avatar2.default, { size: '100' })\n );\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'renderUsername',\n value: function renderUsername() {\n if (this.props.change.changed_by) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'a',\n { href: this.props.change.changed_by.url, className: 'item-title' },\n this.props.change.changed_by.username\n );\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: 'item-title' },\n this.props.change.changed_by_username\n );\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'list-group-item', key: this.props.change.id },\n _react2.default.createElement(\n 'div',\n { className: 'change-avatar' },\n this.renderUserAvatar()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'change-author' },\n this.renderUsername()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'change' },\n _react2.default.createElement(\n 'span',\n { className: 'old-username' },\n this.props.change.old_username\n ),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'arrow_forward'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'new-username' },\n this.props.change.new_username\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'change-date' },\n _react2.default.createElement(\n 'abbr',\n { title: this.props.change.changed_on.format('LLL') },\n this.props.change.changed_on.fromNow()\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../avatar\":3,\"react\":\"react\"}],266:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: \"getEmptyMessage\",\n value: function getEmptyMessage() {\n if (this.props.emptyMessage) {\n return this.props.emptyMessage;\n } else {\n return gettext(\"No name changes have been recorded for your account.\");\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n \"div\",\n { className: \"username-history ui-ready\" },\n _react2.default.createElement(\n \"ul\",\n { className: \"list-group\" },\n _react2.default.createElement(\n \"li\",\n { className: \"list-group-item empty-message\" },\n this.getEmptyMessage()\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],267:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _changePreview = require('./change-preview');\n\nvar _changePreview2 = _interopRequireDefault(_changePreview);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'username-history ui-preview' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-group' },\n [0, 1, 2].map(function (i) {\n return _react2.default.createElement(_changePreview2.default, { hiddenOnMobile: i > 0, key: i });\n })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./change-preview\":264,\"react\":\"react\"}],268:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _change = require('./change');\n\nvar _change2 = _interopRequireDefault(_change);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'username-history ui-ready' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-group' },\n this.props.changes.map(function (change) {\n return _react2.default.createElement(_change2.default, { change: change, key: change.id });\n })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./change\":265,\"react\":\"react\"}],269:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _listEmpty = require('./list-empty');\n\nvar _listEmpty2 = _interopRequireDefault(_listEmpty);\n\nvar _listReady = require('./list-ready');\n\nvar _listReady2 = _interopRequireDefault(_listReady);\n\nvar _listPreview = require('./list-preview');\n\nvar _listPreview2 = _interopRequireDefault(_listPreview);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n if (this.props.isLoaded) {\n if (this.props.changes.length) {\n /* jshint ignore:start */\n return _react2.default.createElement(_listReady2.default, { changes: this.props.changes });\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_listEmpty2.default, { emptyMessage: this.props.emptyMessage });\n /* jshint ignore:end */\n }\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_listPreview2.default, null);\n /* jshint ignore:end */\n }\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./list-empty\":266,\"./list-preview\":267,\"./list-ready\":268,\"react\":\"react\"}],270:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var showStatus = _ref.showStatus,\n user = _ref.user;\n var rank = user.rank;\n\n\n var className = 'panel user-card';\n if (rank.css_class) {\n className += ' user-card-' + rank.css_class;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3 user-card-left' },\n _react2.default.createElement(\n 'div',\n { className: 'user-card-small-avatar' },\n _react2.default.createElement(\n 'a',\n { href: user.url },\n _react2.default.createElement(_avatar2.default, {\n size: '50',\n size2x: '80',\n user: user\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-9 col-sm-12 user-card-body' },\n _react2.default.createElement(\n 'div',\n { className: 'user-card-avatar' },\n _react2.default.createElement(\n 'a',\n { href: user.url },\n _react2.default.createElement(_avatar2.default, {\n size: '150',\n size2x: '200',\n user: user\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-card-username' },\n _react2.default.createElement(\n 'a',\n { href: user.url },\n user.username\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-card-title' },\n _react2.default.createElement(_userTitle2.default, {\n rank: rank,\n title: user.title\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-card-stats' },\n _react2.default.createElement(_stats2.default, {\n showStatus: showStatus,\n user: user\n })\n )\n )\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _stats = require('./stats');\n\nvar _stats2 = _interopRequireDefault(_stats);\n\nvar _userTitle = require('./user-title');\n\nvar _userTitle2 = _interopRequireDefault(_userTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../avatar\":3,\"./stats\":271,\"./user-title\":272,\"react\":\"react\"}],271:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var showStatus = _ref.showStatus,\n user = _ref.user;\n\n return _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled' },\n _react2.default.createElement(Status, {\n showStatus: showStatus,\n user: user\n }),\n _react2.default.createElement(JoinDate, { user: user }),\n _react2.default.createElement('li', { className: 'user-stat-divider' }),\n _react2.default.createElement(Posts, { user: user }),\n _react2.default.createElement(Threads, { user: user }),\n _react2.default.createElement(Followers, { user: user })\n );\n};\n\nexports.Status = Status;\nexports.JoinDate = JoinDate;\nexports.Posts = Posts;\nexports.Threads = Threads;\nexports.Followers = Followers;\nexports.getStatClassName = getStatClassName;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _userStatus = require('../../user-status');\n\nvar _userStatus2 = _interopRequireDefault(_userStatus);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction Status(_ref2) {\n var showStatus = _ref2.showStatus,\n user = _ref2.user;\n\n if (!showStatus) return null;\n\n return _react2.default.createElement(\n 'li',\n { className: 'user-stat-status' },\n _react2.default.createElement(\n _userStatus2.default,\n { status: user.status },\n _react2.default.createElement(_userStatus.StatusLabel, {\n status: user.status,\n user: user\n })\n )\n );\n} // jshint ignore:start\nfunction JoinDate(_ref3) {\n var user = _ref3.user;\n var joined_on = user.joined_on;\n\n\n var title = interpolate(gettext(\"Joined on %(joined_on)s\"), {\n 'joined_on': joined_on.format('LL, LT')\n }, true);\n\n var message = interpolate(gettext(\"Joined %(joined_on)s\"), {\n 'joined_on': joined_on.fromNow()\n }, true);\n\n return _react2.default.createElement(\n 'li',\n { className: 'user-stat-join-date' },\n _react2.default.createElement(\n 'abbr',\n { title: title },\n message\n )\n );\n}\n\nfunction Posts(_ref4) {\n var user = _ref4.user;\n\n var className = getStatClassName(\"user-stat-posts\", user.posts);\n var message = ngettext(\"%(posts)s post\", \"%(posts)s posts\", user.posts);\n\n return _react2.default.createElement(\n 'li',\n { className: className },\n interpolate(message, {\n 'posts': user.posts\n }, true)\n );\n}\n\nfunction Threads(_ref5) {\n var user = _ref5.user;\n\n var className = getStatClassName(\"user-stat-threads\", user.threads);\n var message = ngettext(\"%(threads)s thread\", \"%(threads)s threads\", user.threads);\n\n return _react2.default.createElement(\n 'li',\n { className: className },\n interpolate(message, {\n 'threads': user.threads\n }, true)\n );\n}\n\nfunction Followers(_ref6) {\n var user = _ref6.user;\n\n var className = getStatClassName(\"user-stat-followers\", user.followers);\n var message = ngettext(\"%(followers)s follower\", \"%(followers)s followers\", user.followers);\n\n return _react2.default.createElement(\n 'li',\n { className: className },\n interpolate(message, {\n 'followers': user.followers\n }, true)\n );\n}\n\nfunction getStatClassName(className, stat) {\n if (stat === 0) {\n return className + ' user-stat-empty';\n }\n return className;\n}\n\n},{\"../../user-status\":263,\"react\":\"react\"}],272:[function(require,module,exports){\narguments[4][123][0].apply(exports,arguments)\n},{\"dup\":123,\"react\":\"react\"}],273:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var cols = _ref.cols,\n isReady = _ref.isReady,\n showStatus = _ref.showStatus,\n users = _ref.users;\n\n var colClassName = 'col-xs-12 col-sm-4';\n if (cols === 4) {\n colClassName += ' col-md-3';\n }\n\n if (!isReady) {\n return _react2.default.createElement(_preview2.default, {\n colClassName: colClassName,\n cols: cols\n });\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'users-cards-list ui-ready' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n users.map(function (user) {\n return _react2.default.createElement(\n 'div',\n {\n className: colClassName,\n key: user.id\n },\n _react2.default.createElement(_card2.default, {\n showStatus: showStatus,\n user: user\n })\n );\n })\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _card = require('./card');\n\nvar _card2 = _interopRequireDefault(_card);\n\nvar _preview = require('./preview');\n\nvar _preview2 = _interopRequireDefault(_preview);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./card\":270,\"./preview\":275,\"react\":\"react\"}],274:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _random = require('../../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'panel user-card user-card-preview' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3 user-card-left' },\n _react2.default.createElement(\n 'div',\n { className: 'user-card-small-avatar' },\n _react2.default.createElement(\n 'span',\n null,\n _react2.default.createElement(_avatar2.default, {\n size: '50',\n size2x: '80'\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-9 col-sm-12 user-card-body' },\n _react2.default.createElement(\n 'div',\n { className: 'user-card-avatar' },\n _react2.default.createElement(\n 'span',\n null,\n _react2.default.createElement(_avatar2.default, {\n size: '150',\n size2x: '200'\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-card-username' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(60, 150) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-card-title' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(60, 150) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-card-stats' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled' },\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 70) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 70) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement('li', { className: 'user-stat-divider' }),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 70) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 70) + \"px\" }\n },\n '\\xA0'\n )\n )\n )\n )\n )\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../utils/random\":375,\"../../avatar\":3,\"react\":\"react\"}],275:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var colClassName = _ref.colClassName,\n cols = _ref.cols;\n\n var list = Array.apply(null, { length: cols }).map(Number.call, Number);\n\n return _react2.default.createElement(\n 'div',\n { className: 'users-cards-list ui-preview' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n list.map(function (i) {\n var className = colClassName;\n if (i !== 0) className += ' hidden-xs';\n if (i === 3) className += ' hidden-sm';\n\n return _react2.default.createElement(\n 'div',\n {\n className: className,\n key: i\n },\n _react2.default.createElement(_card2.default, null)\n );\n })\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _card = require('./card');\n\nvar _card2 = _interopRequireDefault(_card);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./card\":274,\"react\":\"react\"}],276:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getEmptyMessage',\n value: function getEmptyMessage() {\n return interpolate(gettext(\"No users have posted any new messages during last %(days)s days.\"), { 'days': this.props.trackedPeriod }, true);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'active-posters-list' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.getEmptyMessage()\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],277:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _random = require('../../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.props.hiddenOnMobile) {\n return 'list-group-item hidden-xs hidden-sm';\n } else {\n return 'list-group-item';\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: this.getClassName() },\n _react2.default.createElement(\n 'div',\n { className: 'rank-user-avatar' },\n _react2.default.createElement(\n 'span',\n null,\n _react2.default.createElement(_avatar2.default, { size: '50' })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-user' },\n _react2.default.createElement(\n 'div',\n { className: 'user-name' },\n _react2.default.createElement(\n 'span',\n { className: 'item-title' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 80) + \"px\" }\n },\n '\\xA0'\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-details' },\n _react2.default.createElement(\n 'span',\n { className: 'user-status' },\n _react2.default.createElement(\n 'span',\n { className: 'status-icon ui-preview-text' },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n {\n className: 'status-label ui-preview-text hidden-xs hidden-sm',\n style: { width: random.int(30, 50) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'span',\n { className: 'rank-name' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 50) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'span',\n { className: 'user-title hidden-xs hidden-sm' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 50) + \"px\" }\n },\n '\\xA0'\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-compact-stats visible-xs-block' },\n _react2.default.createElement(\n 'span',\n { className: 'rank-position' },\n _react2.default.createElement(\n 'strong',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(20, 30) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Rank\")\n )\n ),\n _react2.default.createElement(\n 'span',\n { className: 'rank-posts-counted' },\n _react2.default.createElement(\n 'strong',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(20, 30) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Ranked posts\")\n )\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-position hidden-xs' },\n _react2.default.createElement(\n 'strong',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(20, 30) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Rank\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-posts-counted hidden-xs' },\n _react2.default.createElement(\n 'strong',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(20, 30) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Ranked posts\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-posts-total hidden-xs' },\n _react2.default.createElement(\n 'strong',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(20, 30) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Total posts\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../utils/random\":375,\"../../avatar\":3,\"react\":\"react\"}],278:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nvar _avatar = require('../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _userStatus = require('../../user-status');\n\nvar _userStatus2 = _interopRequireDefault(_userStatus);\n\nvar _index = require('../../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _random = require('../../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getClassName',\n value: function getClassName() {\n if (this.props.rank.css_class) {\n return \"list-group-item list-group-rank-\" + this.props.rank.css_class;\n } else {\n return \"list-group-item\";\n }\n }\n }, {\n key: 'getUserStatus',\n value: function getUserStatus() {\n if (this.props.user.status) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n _userStatus2.default,\n { user: this.props.user, status: this.props.user.status },\n _react2.default.createElement(_userStatus.StatusIcon, { user: this.props.user,\n status: this.props.user.status }),\n _react2.default.createElement(_userStatus.StatusLabel, { user: this.props.user,\n status: this.props.user.status,\n className: 'status-label hidden-xs hidden-sm' })\n );\n /* jshint ignore:end */\n }\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: 'user-status' },\n _react2.default.createElement(\n 'span',\n { className: 'status-icon ui-preview-text' },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'status-label ui-preview-text hidden-xs hidden-sm',\n style: { width: random.int(30, 50) + \"px\" } },\n '\\xA0'\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getRankName',\n value: function getRankName() {\n if (!this.props.rank.is_tab) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: 'rank-name item-title' },\n this.props.rank.name\n );\n /* jshint ignore:end */\n }\n\n /* jshint ignore:start */\n var rankUrl = _index2.default.get('USERS_LIST_URL') + this.props.rank.slug + '/';\n return _react2.default.createElement(\n _reactRouter.Link,\n { to: rankUrl, className: 'rank-name item-title' },\n this.props.rank.name\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getUserTitle',\n value: function getUserTitle() {\n if (!this.props.user.title) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: 'user-title hidden-xs hidden-sm' },\n this.props.user.title\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: this.getClassName() },\n _react2.default.createElement(\n 'div',\n { className: 'rank-user-avatar' },\n _react2.default.createElement(\n 'a',\n { href: this.props.user.url },\n _react2.default.createElement(_avatar2.default, { user: this.props.user, size: 50, size2x: 64 })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-user' },\n _react2.default.createElement(\n 'div',\n { className: 'user-name' },\n _react2.default.createElement(\n 'a',\n { href: this.props.user.url, className: 'item-title' },\n this.props.user.username\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-details' },\n this.getUserStatus(),\n this.getRankName(),\n this.getUserTitle()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-compact-stats visible-xs-block' },\n _react2.default.createElement(\n 'span',\n { className: 'rank-position' },\n _react2.default.createElement(\n 'strong',\n null,\n '#',\n this.props.counter\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Rank\")\n )\n ),\n _react2.default.createElement(\n 'span',\n { className: 'rank-posts-counted' },\n _react2.default.createElement(\n 'strong',\n null,\n this.props.user.meta.score\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Ranked posts\")\n )\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-position hidden-xs' },\n _react2.default.createElement(\n 'strong',\n null,\n '#',\n this.props.counter\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Rank\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-posts-counted hidden-xs' },\n _react2.default.createElement(\n 'strong',\n null,\n this.props.user.meta.score\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Ranked posts\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-posts-total hidden-xs' },\n _react2.default.createElement(\n 'strong',\n null,\n this.props.user.posts\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Total posts\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../index\":291,\"../../../utils/random\":375,\"../../avatar\":3,\"../../user-status\":263,\"react\":\"react\",\"react-router\":\"react-router\"}],279:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _listItemPreview = require('./list-item-preview');\n\nvar _listItemPreview2 = _interopRequireDefault(_listItemPreview);\n\nvar _random = require('../../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'active-posters-list' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'p',\n { className: 'lead ui-preview' },\n _react2.default.createElement(\n 'span',\n { className: 'ui-preview-text',\n style: { width: random.int(50, 220) + \"px\" } },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'active-posters ui-preview' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-group' },\n [0, 1, 2].map(function (i) {\n return _react2.default.createElement(_listItemPreview2.default, { hiddenOnMobile: i > 0, key: i });\n })\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../utils/random\":375,\"./list-item-preview\":277,\"react\":\"react\"}],280:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _listItem = require('./list-item');\n\nvar _listItem2 = _interopRequireDefault(_listItem);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getLeadMessage',\n value: function getLeadMessage() {\n var message = ngettext(\"%(posters)s most active poster from last %(days)s days.\", \"%(posters)s most active posters from last %(days)s days.\", this.props.count);\n\n return interpolate(message, {\n posters: this.props.count,\n days: this.props.trackedPeriod\n }, true);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'active-posters-list' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.getLeadMessage()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'active-posters ui-ready' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-group' },\n this.props.users.map(function (user, i) {\n return _react2.default.createElement(_listItem2.default, { user: user,\n rank: user.rank,\n counter: i + 1,\n key: user.id });\n })\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./list-item\":278,\"react\":\"react\"}],281:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _listEmpty = require('./list-empty');\n\nvar _listEmpty2 = _interopRequireDefault(_listEmpty);\n\nvar _listPreview = require('./list-preview');\n\nvar _listPreview2 = _interopRequireDefault(_listPreview);\n\nvar _listReady = require('./list-ready');\n\nvar _listReady2 = _interopRequireDefault(_listReady);\n\nvar _index = require('../../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _users = require('../../../reducers/users');\n\nvar _polls = require('../../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _pageTitle = require('../../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.update = function (data) {\n _store2.default.dispatch((0, _users.hydrate)(data.results));\n\n _this.setState({\n isLoaded: true,\n\n trackedPeriod: data.tracked_period,\n count: data.count\n });\n };\n\n if (_index2.default.has('USERS')) {\n _this.initWithPreloadedData(_index2.default.pop('USERS'));\n } else {\n _this.initWithoutPreloadedData();\n }\n\n _this.startPolling();\n return _this;\n }\n\n _createClass(_class, [{\n key: 'initWithPreloadedData',\n value: function initWithPreloadedData(data) {\n this.state = {\n isLoaded: true,\n\n trackedPeriod: data.tracked_period,\n count: data.count\n };\n\n _store2.default.dispatch((0, _users.hydrate)(data.results));\n }\n }, {\n key: 'initWithoutPreloadedData',\n value: function initWithoutPreloadedData() {\n this.state = {\n isLoaded: false\n };\n }\n }, {\n key: 'startPolling',\n value: function startPolling() {\n _polls2.default.start({\n poll: 'active-posters',\n url: _index2.default.get('USERS_API'),\n data: {\n list: 'active'\n },\n frequency: 90 * 1000,\n update: this.update\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'componentDidMount',\n\n /* jshint ignore:end */\n\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: this.props.route.extra.name,\n parent: gettext(\"Users\")\n });\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n _polls2.default.stop('active-posters');\n }\n }, {\n key: 'render',\n value: function render() {\n if (this.state.isLoaded) {\n if (this.state.count > 0) {\n /* jshint ignore:start */\n return _react2.default.createElement(_listReady2.default, { users: this.props.users,\n trackedPeriod: this.state.trackedPeriod,\n count: this.state.count });\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_listEmpty2.default, { trackedPeriod: this.state.trackedPeriod });\n /* jshint ignore:end */\n }\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_listPreview2.default, null);\n /* jshint ignore:end */\n }\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../index\":291,\"../../../reducers/users\":351,\"../../../services/page-title\":360,\"../../../services/polls\":361,\"../../../services/store\":364,\"./list-empty\":276,\"./list-preview\":279,\"./list-ready\":280,\"react\":\"react\"}],282:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var baseUrl = _ref.baseUrl,\n lists = _ref.lists;\n\n return _react2.default.createElement(\n 'ul',\n { className: 'nav nav-pills' },\n lists.map(function (list) {\n var url = listUrl(baseUrl, list);\n return _react2.default.createElement(\n _li2.default,\n { path: url, key: url },\n _react2.default.createElement(\n _reactRouter.Link,\n { to: url },\n list.name\n )\n );\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nvar _li = require('../li');\n\nvar _li2 = _interopRequireDefault(_li);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar listUrl = function listUrl(baseUrl, list) {\n var url = baseUrl;\n if (list.component === 'rank') {\n url += list.slug;\n } else {\n url += list.component;\n }\n return url + '/';\n}; // jshint ignore:start\n\n},{\"../../index\":291,\"../li\":53,\"react\":\"react\",\"react-router\":\"react-router\"}],283:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _usersList = require('../../users-list');\n\nvar _usersList2 = _interopRequireDefault(_usersList);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_usersList2.default, {\n cols: 4,\n isReady: false\n })\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../users-list\":273,\"react\":\"react\"}],284:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_usersList2.default, {\n cols: 4,\n isReady: true,\n showStatus: true,\n users: props.users\n }),\n _react2.default.createElement(_pager2.default, props)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _pager = require('./pager');\n\nvar _pager2 = _interopRequireDefault(_pager);\n\nvar _usersList = require('../../users-list');\n\nvar _usersList2 = _interopRequireDefault(_usersList);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../users-list\":273,\"./pager\":285,\"react\":\"react\"}],285:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (props.pages === 1) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'row row-toolbar' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 text-center visible-xs-block' },\n _react2.default.createElement(More, { more: props.more }),\n _react2.default.createElement('div', { className: 'toolbar-vertical-spacer' })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-md-7' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-4 col-md-5' },\n _react2.default.createElement(Pager, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-8 col-md-7 hidden-xs' },\n _react2.default.createElement(More, { more: props.more })\n )\n )\n )\n );\n};\n\nexports.Pager = Pager;\nexports.FirstPage = FirstPage;\nexports.PreviousPage = PreviousPage;\nexports.NextPage = NextPage;\nexports.LastPage = LastPage;\nexports.More = More;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nvar _resetScroll = require('../../../utils/reset-scroll');\n\nvar _resetScroll2 = _interopRequireDefault(_resetScroll);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction Pager(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'row row-paginator' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(FirstPage, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(PreviousPage, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(NextPage, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(LastPage, props)\n )\n );\n}\n\nfunction FirstPage(props) {\n if (props.isLoaded && props.first) {\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-icon btn-outline',\n onClick: _resetScroll2.default,\n to: props.baseUrl,\n title: gettext(\"Go to first page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'first_page'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-icon btn-outline disabled',\n title: gettext(\"Go to first page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'first_page'\n )\n );\n }\n}\n\nfunction PreviousPage(props) {\n if (props.isLoaded && props.page > 1) {\n var previousUrl = '';\n if (props.previous) {\n previousUrl = props.previous + '/';\n }\n\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-icon btn-outline',\n onClick: _resetScroll2.default,\n to: props.baseUrl + previousUrl,\n title: gettext(\"Go to previous page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_left'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-icon btn-outline disabled',\n title: gettext(\"Go to previous page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_left'\n )\n );\n }\n}\n\nfunction NextPage(props) {\n if (props.isLoaded && props.more) {\n var nextUrl = '';\n if (props.next) {\n nextUrl = props.next + '/';\n }\n\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-icon btn-outline',\n onClick: _resetScroll2.default,\n to: props.baseUrl + nextUrl,\n title: gettext(\"Go to next page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_right'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-icon btn-outline disabled',\n title: gettext(\"Go to next page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_right'\n )\n );\n }\n}\n\nfunction LastPage(props) {\n if (props.isLoaded && props.last) {\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-icon btn-outline',\n onClick: _resetScroll2.default,\n to: props.baseUrl + props.last + '/',\n title: gettext(\"Go to last page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'last_page'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-icon btn-outline disabled',\n title: gettext(\"Go to last page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'last_page'\n )\n );\n }\n}\n\nfunction More(props) {\n var message = null;\n if (props.more) {\n message = ngettext(\"There is %(more)s more member with this role.\", \"There are %(more)s more members with this role.\", props.more);\n message = interpolate(message, { 'more': props.more }, true);\n } else {\n message = gettext(\"There are no more members with this role.\");\n }\n\n return _react2.default.createElement(\n 'p',\n null,\n message\n );\n}\n\n},{\"../../../utils/reset-scroll\":376,\"react\":\"react\",\"react-router\":\"react-router\"}],286:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _pageLead = require('../../page-lead');\n\nvar _pageLead2 = _interopRequireDefault(_pageLead);\n\nvar _list = require('./list');\n\nvar _list2 = _interopRequireDefault(_list);\n\nvar _listLoading = require('./list-loading');\n\nvar _listLoading2 = _interopRequireDefault(_listLoading);\n\nvar _index = require('../../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _users = require('../../../reducers/users');\n\nvar _polls = require('../../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _pageTitle = require('../../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.update = function (data) {\n _store2.default.dispatch((0, _users.hydrate)(data.results));\n\n data.isLoaded = true;\n _this.setState(data);\n };\n\n if (_index2.default.has('USERS')) {\n _this.initWithPreloadedData(_index2.default.pop('USERS'));\n } else {\n _this.initWithoutPreloadedData();\n }\n\n _this.startPolling(props.params.page || 1);\n return _this;\n }\n\n _createClass(_class, [{\n key: 'initWithPreloadedData',\n value: function initWithPreloadedData(data) {\n this.state = Object.assign(data, {\n isLoaded: true\n });\n _store2.default.dispatch((0, _users.hydrate)(data.results));\n }\n }, {\n key: 'initWithoutPreloadedData',\n value: function initWithoutPreloadedData() {\n this.state = {\n isLoaded: false\n };\n }\n }, {\n key: 'startPolling',\n value: function startPolling(page) {\n _polls2.default.start({\n poll: 'rank-users',\n url: _index2.default.get('USERS_API'),\n data: {\n rank: this.props.route.rank.id,\n page: page\n },\n frequency: 90 * 1000,\n update: this.update\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'componentDidMount',\n\n /* jshint ignore:end */\n\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: this.props.route.rank.name,\n page: this.props.params.page || null,\n parent: gettext(\"Users\")\n });\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n _polls2.default.stop('rank-users');\n }\n }, {\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n if (this.props.params.page !== nextProps.params.page) {\n _pageTitle2.default.set({\n title: this.props.route.rank.name,\n page: nextProps.params.page || null,\n parent: gettext(\"Users\")\n });\n\n this.setState({\n isLoaded: false\n });\n\n _polls2.default.stop('rank-users');\n this.startPolling(nextProps.params.page);\n }\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.props.route.rank.css_class) {\n return 'rank-users-list rank-users-' + this.props.route.rank.css_class;\n } else {\n return 'rank-users-list';\n }\n }\n }, {\n key: 'getRankDescription',\n value: function getRankDescription() {\n if (this.props.route.rank.description) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'rank-description' },\n _react2.default.createElement(_pageLead2.default, { copy: this.props.route.rank.description.html })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getComponent',\n value: function getComponent() {\n if (this.state.isLoaded) {\n if (this.state.count > 0) {\n /* jshint ignore:start */\n var baseUrl = _index2.default.get('USERS_LIST_URL') + this.props.route.rank.slug + '/';\n return _react2.default.createElement(_list2.default, _extends({ baseUrl: baseUrl,\n users: this.props.users\n }, this.state));\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"There are no users with this rank at the moment.\")\n );\n /* jshint ignore:end */\n }\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_listLoading2.default, null);\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName() },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n this.getRankDescription(),\n this.getComponent()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../index\":291,\"../../../reducers/users\":351,\"../../../services/page-title\":360,\"../../../services/polls\":361,\"../../../services/store\":364,\"../../page-lead\":85,\"./list\":284,\"./list-loading\":283,\"react\":\"react\"}],287:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.select = select;\nexports.paths = paths;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRedux = require('react-redux');\n\nvar _dropdownToggle = require('../dropdown-toggle');\n\nvar _dropdownToggle2 = _interopRequireDefault(_dropdownToggle);\n\nvar _nav = require('./nav');\n\nvar _nav2 = _interopRequireDefault(_nav);\n\nvar _root = require('./active-posters/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _root3 = require('./rank/root');\n\nvar _root4 = _interopRequireDefault(_root3);\n\nvar _withDropdown = require('../with-dropdown');\n\nvar _withDropdown2 = _interopRequireDefault(_withDropdown);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_WithDropdown) {\n _inherits(_class, _WithDropdown);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'page page-users-lists' },\n _react2.default.createElement(\n 'div',\n { className: 'page-header-bg' },\n _react2.default.createElement(\n 'div',\n { className: 'page-header' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'h1',\n null,\n gettext(\"Users\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'page-tabs' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(_nav2.default, {\n lists: _index2.default.get('USERS_LISTS'),\n baseUrl: _index2.default.get('USERS_LIST_URL')\n })\n )\n )\n )\n ),\n this.props.children\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_withDropdown2.default);\n\nexports.default = _class;\nfunction select(store) {\n return {\n 'tick': store.tick.tick,\n 'user': store.auth.user,\n 'users': store.users\n };\n}\n\nfunction paths() {\n var paths = [];\n\n _index2.default.get('USERS_LISTS').forEach(function (item) {\n if (item.component === 'rank') {\n paths.push({\n path: _index2.default.get('USERS_LIST_URL') + item.slug + '/:page/',\n component: (0, _reactRedux.connect)(select)(_root4.default),\n rank: item\n });\n paths.push({\n path: _index2.default.get('USERS_LIST_URL') + item.slug + '/',\n component: (0, _reactRedux.connect)(select)(_root4.default),\n rank: item\n });\n } else if (item.component === 'active-posters') {\n paths.push({\n path: _index2.default.get('USERS_LIST_URL') + item.component + '/',\n component: (0, _reactRedux.connect)(select)(_root2.default),\n extra: {\n name: item.name\n }\n });\n }\n });\n\n return paths;\n}\n\n},{\"../../index\":291,\"../dropdown-toggle\":24,\"../with-dropdown\":288,\"./active-posters/root\":281,\"./nav\":282,\"./rank/root\":286,\"react\":\"react\",\"react-redux\":\"react-redux\"}],288:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.toggleNav = function () {\n _this.setState({\n dropdown: !_this.state.dropdown\n });\n };\n\n _this.hideNav = function () {\n _this.setState({\n dropdown: false\n });\n };\n\n _this.state = {\n dropdown: false\n };\n return _this;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'getCompactNavClassName',\n\n /* jshint ignore:end */\n\n value: function getCompactNavClassName() {\n if (this.state.dropdown) {\n return 'compact-nav open';\n } else {\n return 'compact-nav';\n }\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],289:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.toggle = function () {\n _this.props.onChange({\n target: {\n value: !_this.props.value\n }\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: \"getClassName\",\n value: function getClassName() {\n if (this.props.value) {\n return \"btn btn-yes-no btn-yes-no-on\";\n } else {\n return \"btn btn-yes-no btn-yes-no-off\";\n }\n }\n }, {\n key: \"getIcon\",\n value: function getIcon() {\n if (!!this.props.value) {\n return this.props.iconOn || 'check_box';\n } else {\n return this.props.iconOff || 'check_box_outline_blank';\n }\n }\n }, {\n key: \"getLabel\",\n value: function getLabel() {\n if (!!this.props.value) {\n return this.props.labelOn || gettext(\"yes\");\n } else {\n return this.props.labelOff || gettext(\"no\");\n }\n }\n\n /* jshint ignore:start */\n\n }, {\n key: \"render\",\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n \"button\",\n {\n type: \"button\",\n onClick: this.toggle,\n className: this.getClassName(),\n id: this.props.id || null,\n \"aria-describedby\": this.props['aria-describedby'] || null,\n disabled: this.props.disabled || false\n },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n this.getIcon()\n ),\n _react2.default.createElement(\n \"span\",\n { className: \"btn-text\" },\n this.getLabel()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],290:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _profileDetails = require('../reducers/profile-details');\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _props = this.props,\n data = _props.data,\n dispatch = _props.dispatch,\n user = _props.user;\n\n if (data && data.id === user.id) return;\n\n _ajax2.default.get(this.props.user.api.details).then(function (data) {\n dispatch((0, _profileDetails.load)(data));\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n });\n }\n }, {\n key: 'render',\n value: function render() {\n return this.props.children;\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../reducers/profile-details\":342,\"../services/ajax\":352,\"../services/snackbar\":363,\"react\":\"react\"}],291:[function(require,module,exports){\n(function (global){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Misago = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _orderedList = require('./utils/ordered-list');\n\nvar _orderedList2 = _interopRequireDefault(_orderedList);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Misago = exports.Misago = function () {\n function Misago() {\n _classCallCheck(this, Misago);\n\n this._initializers = [];\n this._context = {};\n }\n\n _createClass(Misago, [{\n key: 'addInitializer',\n value: function addInitializer(initializer) {\n this._initializers.push({\n key: initializer.name,\n\n item: initializer.initializer,\n\n after: initializer.after,\n before: initializer.before\n });\n }\n }, {\n key: 'init',\n value: function init(context) {\n var _this = this;\n\n this._context = context;\n\n var initOrder = new _orderedList2.default(this._initializers).orderedValues();\n initOrder.forEach(function (initializer) {\n initializer(_this);\n });\n }\n\n // context accessors\n\n }, {\n key: 'has',\n value: function has(key) {\n return !!this._context[key];\n }\n }, {\n key: 'get',\n value: function get(key, fallback) {\n if (this.has(key)) {\n return this._context[key];\n } else {\n return fallback || undefined;\n }\n }\n }, {\n key: 'pop',\n value: function pop(key) {\n if (this.has(key)) {\n var value = this._context[key];\n this._context[key] = null;\n return value;\n } else {\n return undefined;\n }\n }\n }]);\n\n return Misago;\n}();\n\n// create singleton\n\n\nvar misago = new Misago();\n\n// expose it globally\nglobal.misago = misago;\n\n// and export it for tests and stuff\nexports.default = misago;\n\n}).call(this,typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n},{\"./utils/ordered-list\":374}],292:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _ajax2.default.init(_index2.default.get('CSRF_COOKIE_NAME'));\n}\n\n_index2.default.addInitializer({\n name: 'ajax',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/ajax\":352}],293:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _auth = require('../reducers/auth');\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar AUTH_SYNC_RATE = 45; // sync user with backend every 45 seconds\n\nfunction initializer(context) {\n if (context.get('isAuthenticated')) {\n window.setInterval(function () {\n _ajax2.default.get(context.get('AUTH_API')).then(function (data) {\n _store2.default.dispatch((0, _auth.patch)(data));\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n });\n }, AUTH_SYNC_RATE * 1000);\n }\n}\n\n_index2.default.addInitializer({\n name: 'auth-sync',\n initializer: initializer,\n after: 'auth'\n});\n\n},{\"../index\":291,\"../reducers/auth\":337,\"../services/ajax\":352,\"../services/snackbar\":363,\"../services/store\":364}],294:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _auth = require('../services/auth');\n\nvar _auth2 = _interopRequireDefault(_auth);\n\nvar _modal = require('../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _localStorage = require('../services/local-storage');\n\nvar _localStorage2 = _interopRequireDefault(_localStorage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _auth2.default.init(_store2.default, _localStorage2.default, _modal2.default);\n}\n\n_index2.default.addInitializer({\n name: 'auth',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../index\":291,\"../services/auth\":353,\"../services/local-storage\":356,\"../services/modal\":358,\"../services/store\":364}],295:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _captcha = require('../services/captcha');\n\nvar _captcha2 = _interopRequireDefault(_captcha);\n\nvar _include = require('../services/include');\n\nvar _include2 = _interopRequireDefault(_include);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n _captcha2.default.init(context, _ajax2.default, _include2.default, _snackbar2.default);\n}\n\n_index2.default.addInitializer({\n name: 'captcha',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/ajax\":352,\"../services/captcha\":354,\"../services/include\":355,\"../services/snackbar\":363}],296:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _reactRedux = require('react-redux');\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _authMessage = require('../../components/auth-message');\n\nvar _authMessage2 = _interopRequireDefault(_authMessage);\n\nvar _mountComponent = require('../../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n (0, _mountComponent2.default)((0, _reactRedux.connect)(_authMessage.select)(_authMessage2.default), 'auth-message-mount');\n}\n\n_index2.default.addInitializer({\n name: 'component:auth-message',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/auth-message\":2,\"../../index\":291,\"../../utils/mount-component\":373,\"react-redux\":\"react-redux\"}],297:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _bannedPage = require('../../utils/banned-page');\n\nvar _bannedPage2 = _interopRequireDefault(_bannedPage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n if (context.has('BAN_MESSAGE')) {\n (0, _bannedPage2.default)(context.get('BAN_MESSAGE'), false);\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:banmed-page',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../index\":291,\"../../utils/banned-page\":366}],298:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _reactRedux = require('react-redux');\n\nvar _categories = require('../../components/categories');\n\nvar _categories2 = _interopRequireDefault(_categories);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _mountComponent = require('../../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n if (document.getElementById('categories-mount')) {\n (0, _mountComponent2.default)((0, _reactRedux.connect)(_categories.select)(_categories2.default), 'categories-mount');\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:categories',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/categories\":17,\"../../index\":291,\"../../utils/mount-component\":373,\"react-redux\":\"react-redux\"}],299:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _root = require('../../components/options/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _routedComponent = require('../../utils/routed-component');\n\nvar _routedComponent2 = _interopRequireDefault(_routedComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n if (context.has('USER_OPTIONS')) {\n (0, _routedComponent2.default)({\n root: _index2.default.get('USERCP_URL'),\n component: _root2.default,\n paths: (0, _root.paths)()\n });\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:options',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/options/root\":81,\"../../index\":291,\"../../utils/routed-component\":377}],300:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _reactRedux = require('react-redux');\n\nvar _root = require('../../components/profile/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _routedComponent = require('../../utils/routed-component');\n\nvar _routedComponent2 = _interopRequireDefault(_routedComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n if (context.has('PROFILE') && context.has('PROFILE_PAGES')) {\n (0, _routedComponent2.default)({\n root: _index2.default.get('PROFILE').url,\n component: (0, _reactRedux.connect)(_root.select)(_root2.default),\n paths: (0, _root.paths)()\n });\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:profile',\n initializer: initializer,\n after: 'reducer:profile-hydrate'\n});\n\n},{\"../../components/profile/root\":188,\"../../index\":291,\"../../utils/routed-component\":377,\"react-redux\":\"react-redux\"}],301:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _requestActivationLink = require('../../components/request-activation-link');\n\nvar _requestActivationLink2 = _interopRequireDefault(_requestActivationLink);\n\nvar _mountComponent = require('../../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n if (document.getElementById('request-activation-link-mount')) {\n (0, _mountComponent2.default)(_requestActivationLink2.default, 'request-activation-link-mount', false);\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:request-activation-link',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/request-activation-link\":193,\"../../index\":291,\"../../utils/mount-component\":373}],302:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _requestPasswordReset = require('../../components/request-password-reset');\n\nvar _requestPasswordReset2 = _interopRequireDefault(_requestPasswordReset);\n\nvar _mountComponent = require('../../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n if (document.getElementById('request-password-reset-mount')) {\n (0, _mountComponent2.default)(_requestPasswordReset2.default, 'request-password-reset-mount', false);\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:request-password-reset',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/request-password-reset\":194,\"../../index\":291,\"../../utils/mount-component\":373}],303:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _resetPasswordForm = require('../../components/reset-password-form');\n\nvar _resetPasswordForm2 = _interopRequireDefault(_resetPasswordForm);\n\nvar _mountComponent = require('../../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n if (document.getElementById('reset-password-form-mount')) {\n (0, _mountComponent2.default)(_resetPasswordForm2.default, 'reset-password-form-mount', false);\n }\n}\n\n_2.default.addInitializer({\n name: 'component:reset-password-form',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../..\":291,\"../../components/reset-password-form\":195,\"../../utils/mount-component\":373}],304:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _search = require('../../components/search');\n\nvar _search2 = _interopRequireDefault(_search);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _routedComponent = require('../../utils/routed-component');\n\nvar _routedComponent2 = _interopRequireDefault(_routedComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n if (context.get('CURRENT_LINK') === 'misago:search') {\n (0, _routedComponent2.default)({\n paths: (0, _search2.default)(_2.default.get('SEARCH_PROVIDERS'))\n });\n }\n}\n\n_2.default.addInitializer({\n name: 'component:search',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../..\":291,\"../../components/search\":197,\"../../utils/routed-component\":377}],305:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _reactRedux = require('react-redux');\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _snackbar = require('../../components/snackbar');\n\nvar _mountComponent = require('../../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n (0, _mountComponent2.default)((0, _reactRedux.connect)(_snackbar.select)(_snackbar.Snackbar), 'snackbar-mount');\n}\n\n_index2.default.addInitializer({\n name: 'component:snackbar',\n initializer: initializer,\n after: 'snackbar'\n});\n\n},{\"../../components/snackbar\":205,\"../../index\":291,\"../../utils/mount-component\":373,\"react-redux\":\"react-redux\"}],306:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _root = require('../../components/thread/root');\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _routedComponent = require('../../utils/routed-component');\n\nvar _routedComponent2 = _interopRequireDefault(_routedComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n if (context.has('THREAD') && context.has('POSTS')) {\n (0, _routedComponent2.default)({\n paths: (0, _root.paths)()\n });\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:thread',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/thread/root\":222,\"../../index\":291,\"../../utils/routed-component\":377}],307:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\nexports.getListOptions = getListOptions;\n\nvar _root = require('../../components/threads/root');\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _routedComponent = require('../../utils/routed-component');\n\nvar _routedComponent2 = _interopRequireDefault(_routedComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar PRIVATE_THREADS_LIST = 'misago:private-threads';\n\nfunction initializer(context) {\n if (context.has('THREADS') && context.has('CATEGORIES')) {\n (0, _routedComponent2.default)({\n paths: (0, _root.paths)(context.get('user'), getListOptions(context))\n });\n }\n}\n\nfunction getListOptions(context) {\n var currentLink = context.get('CURRENT_LINK');\n if (currentLink.substr(0, PRIVATE_THREADS_LIST.length) === PRIVATE_THREADS_LIST) {\n return {\n api: context.get('PRIVATE_THREADS_API'),\n startThread: {\n mode: 'START_PRIVATE',\n submit: _index2.default.get('PRIVATE_THREADS_API')\n },\n title: gettext(\"Private threads\"),\n pageLead: gettext(\"Private threads are threads which only those that started them and those they have invited may see and participate in.\"),\n emptyMessage: gettext(\"You aren't participating in any private threads.\")\n };\n }\n\n return {\n 'api': context.get('THREADS_API')\n };\n}\n\n_index2.default.addInitializer({\n name: 'component:threads',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/threads/root\":256,\"../../index\":291,\"../../utils/routed-component\":377}],308:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _reactRedux = require('react-redux');\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _root = require('../../components/user-menu/root');\n\nvar _mountComponent = require('../../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n (0, _mountComponent2.default)((0, _reactRedux.connect)(_root.select)(_root.UserMenu), 'user-menu-mount');\n (0, _mountComponent2.default)((0, _reactRedux.connect)(_root.select)(_root.CompactUserMenu), 'user-menu-compact-mount');\n}\n\n_index2.default.addInitializer({\n name: 'component:user-menu',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/user-menu/root\":261,\"../../index\":291,\"../../utils/mount-component\":373,\"react-redux\":\"react-redux\"}],309:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _root = require('../../components/users/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _routedComponent = require('../../utils/routed-component');\n\nvar _routedComponent2 = _interopRequireDefault(_routedComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n if (context.has('USERS_LISTS')) {\n (0, _routedComponent2.default)({\n root: _index2.default.get('USERS_LIST_URL'),\n component: _root2.default,\n paths: (0, _root.paths)()\n });\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:users',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/users/root\":287,\"../../index\":291,\"../../utils/routed-component\":377}],310:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _include = require('../services/include');\n\nvar _include2 = _interopRequireDefault(_include);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n _include2.default.init(context.get('STATIC_URL'));\n}\n\n_index2.default.addInitializer({\n name: 'include',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/include\":355}],311:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _localStorage = require('../services/local-storage');\n\nvar _localStorage2 = _interopRequireDefault(_localStorage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _localStorage2.default.init('misago_');\n}\n\n_index2.default.addInitializer({\n name: 'local-storage',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/local-storage\":356}],312:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _mobileNavbarDropdown = require('../services/mobile-navbar-dropdown');\n\nvar _mobileNavbarDropdown2 = _interopRequireDefault(_mobileNavbarDropdown);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n var element = document.getElementById('mobile-navbar-dropdown-mount');\n if (element) {\n _mobileNavbarDropdown2.default.init(element);\n }\n}\n\n_index2.default.addInitializer({\n name: 'dropdown',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../index\":291,\"../services/mobile-navbar-dropdown\":357}],313:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _modal = require('../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n var element = document.getElementById('modal-mount');\n if (element) {\n _modal2.default.init(element);\n }\n}\n\n_index2.default.addInitializer({\n name: 'modal',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../index\":291,\"../services/modal\":358}],314:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _moment2.default.locale($('html').attr('lang'));\n}\n\n_index2.default.addInitializer({\n name: 'moment',\n initializer: initializer\n});\n\n},{\"../index\":291,\"moment\":\"moment\"}],315:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _pageTitle = require('../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n _pageTitle2.default.init(context.get('SETTINGS').forum_index_title, context.get('SETTINGS').forum_name);\n}\n\n_index2.default.addInitializer({\n name: 'page-title',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/page-title\":360}],316:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _polls = require('../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _polls2.default.init(_ajax2.default, _snackbar2.default);\n}\n\n_index2.default.addInitializer({\n name: 'polls',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/ajax\":352,\"../services/polls\":361,\"../services/snackbar\":363}],317:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _posting = require('../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _posting2.default.init(_ajax2.default, _snackbar2.default, document.getElementById('posting-placeholder'));\n}\n\n_index2.default.addInitializer({\n name: 'posting',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/ajax\":352,\"../services/posting\":362,\"../services/snackbar\":363}],318:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _auth = require('../../reducers/auth');\n\nvar _auth2 = _interopRequireDefault(_auth);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n _store2.default.addReducer('auth', _auth2.default, Object.assign({\n isAuthenticated: context.get('isAuthenticated'),\n isAnonymous: !context.get('isAuthenticated'),\n\n user: context.get('user')\n }, _auth.initialState));\n}\n\n_index2.default.addInitializer({\n name: 'reducer:auth',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/auth\":337,\"../../services/store\":364}],319:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _participants = require('../../reducers/participants');\n\nvar _participants2 = _interopRequireDefault(_participants);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n var initialState = null;\n if (_index2.default.has('THREAD')) {\n initialState = _index2.default.get('THREAD').participants;\n }\n\n _store2.default.addReducer('participants', _participants2.default, initialState || []);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:participants',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/participants\":338,\"../../services/store\":364}],320:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _poll = require('../../reducers/poll');\n\nvar _poll2 = _interopRequireDefault(_poll);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n var initialState = null;\n if (_index2.default.has('THREAD') && _index2.default.get('THREAD').poll) {\n initialState = (0, _poll.hydrate)(_index2.default.get('THREAD').poll);\n } else {\n initialState = {\n isBusy: false\n };\n }\n\n _store2.default.addReducer('poll', _poll2.default, initialState);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:poll',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/poll\":339,\"../../services/store\":364}],321:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _posts = require('../../reducers/posts');\n\nvar _posts2 = _interopRequireDefault(_posts);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n var initialState = null;\n if (_index2.default.has('POSTS')) {\n initialState = (0, _posts.hydrate)(_index2.default.get('POSTS'));\n } else {\n initialState = {\n isLoaded: false,\n isBusy: false\n };\n }\n\n _store2.default.addReducer('posts', _posts2.default, initialState);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:posts',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/posts\":341,\"../../services/store\":364}],322:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _profileDetails = require('../../reducers/profile-details');\n\nvar _profileDetails2 = _interopRequireDefault(_profileDetails);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n var initialState = null;\n if (_index2.default.has('PROFILE_DETAILS')) {\n initialState = _index2.default.get('PROFILE_DETAILS');\n }\n\n _store2.default.addReducer('profile-details', _profileDetails2.default, initialState || {});\n}\n\n_index2.default.addInitializer({\n name: 'reducer:profile-details',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/profile-details\":342,\"../../services/store\":364}],323:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _profile = require('../../reducers/profile');\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n if (_index2.default.has('PROFILE')) {\n _store2.default.dispatch((0, _profile.hydrate)(_index2.default.get('PROFILE')));\n }\n}\n\n_index2.default.addInitializer({\n name: 'reducer:profile-hydrate',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/profile\":343,\"../../services/store\":364}],324:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _profile = require('../../reducers/profile');\n\nvar _profile2 = _interopRequireDefault(_profile);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('profile', _profile2.default, {});\n}\n\n_index2.default.addInitializer({\n name: 'reducer:profile',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/profile\":343,\"../../services/store\":364}],325:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _search = require('../../reducers/search');\n\nvar _search2 = _interopRequireDefault(_search);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('search', _search2.default, Object.assign({}, _search.initialState, {\n providers: _2.default.get('SEARCH_PROVIDERS') || [],\n query: _2.default.get('SEARCH_QUERY') || ''\n }));\n}\n\n_2.default.addInitializer({\n name: 'reducer:search',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../..\":291,\"../../reducers/search\":344,\"../../services/store\":364}],326:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _selection = require('../../reducers/selection');\n\nvar _selection2 = _interopRequireDefault(_selection);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('selection', _selection2.default, []);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:selection',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/selection\":345,\"../../services/store\":364}],327:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _snackbar = require('../../reducers/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('snackbar', _snackbar2.default, _snackbar.initialState);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:snackbar',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/snackbar\":346,\"../../services/store\":364}],328:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _thread = require('../../reducers/thread');\n\nvar _thread2 = _interopRequireDefault(_thread);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n var initialState = null;\n if (_index2.default.has('THREAD')) {\n initialState = (0, _thread.hydrate)(_index2.default.get('THREAD'));\n } else {\n initialState = {\n isBusy: false\n };\n }\n\n _store2.default.addReducer('thread', _thread2.default, initialState);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:thread',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/thread\":347,\"../../services/store\":364}],329:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _threads = require('../../reducers/threads');\n\nvar _threads2 = _interopRequireDefault(_threads);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('threads', _threads2.default, []);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:threads',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/threads\":348,\"../../services/store\":364}],330:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _tick = require('../../reducers/tick');\n\nvar _tick2 = _interopRequireDefault(_tick);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('tick', _tick2.default, _tick.initialState);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:tick',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/tick\":349,\"../../services/store\":364}],331:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _usernameHistory = require('../../reducers/username-history');\n\nvar _usernameHistory2 = _interopRequireDefault(_usernameHistory);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('username-history', _usernameHistory2.default, []);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:username-history',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/username-history\":350,\"../../services/store\":364}],332:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _users = require('../../reducers/users');\n\nvar _users2 = _interopRequireDefault(_users);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('users', _users2.default, []);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:users',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/users\":351,\"../../services/store\":364}],333:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _snackbar2.default.init(_store2.default);\n}\n\n_index2.default.addInitializer({\n name: 'snackbar',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../index\":291,\"../services/snackbar\":363,\"../services/store\":364}],334:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.init();\n}\n\n_index2.default.addInitializer({\n name: 'store',\n initializer: initializer,\n before: '_end'\n});\n\n},{\"../index\":291,\"../services/store\":364}],335:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _tick = require('../reducers/tick');\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar TICK_PERIOD = 50 * 1000; //do the tick every 50s\n\nfunction initializer() {\n window.setInterval(function () {\n _store2.default.dispatch((0, _tick.doTick)());\n }, TICK_PERIOD);\n}\n\n_index2.default.addInitializer({\n name: 'tick-start',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../index\":291,\"../reducers/tick\":349,\"../services/store\":364}],336:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _include = require('../services/include');\n\nvar _include2 = _interopRequireDefault(_include);\n\nvar _zxcvbn = require('../services/zxcvbn');\n\nvar _zxcvbn2 = _interopRequireDefault(_zxcvbn);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _zxcvbn2.default.init(_include2.default);\n}\n\n_index2.default.addInitializer({\n name: 'zxcvbn',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/include\":355,\"../services/zxcvbn\":365}],337:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SIGN_OUT = exports.SIGN_IN = exports.PATCH_USER = exports.initialState = undefined;\nexports.patch = patch;\nexports.signIn = signIn;\nexports.signOut = signOut;\nexports.default = auth;\n\nvar _users = require('./users');\n\nvar initialState = exports.initialState = {\n signedIn: false,\n signedOut: false\n};\n\nvar PATCH_USER = exports.PATCH_USER = 'PATCH_USER';\nvar SIGN_IN = exports.SIGN_IN = 'SIGN_IN';\nvar SIGN_OUT = exports.SIGN_OUT = 'SIGN_OUT';\n\nfunction patch(patch) {\n return {\n type: PATCH_USER,\n patch: patch\n };\n}\n\nfunction signIn(user) {\n return {\n type: SIGN_IN,\n user: user\n };\n}\n\nfunction signOut() {\n var soft = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n return {\n type: SIGN_OUT,\n soft: soft\n };\n}\n\nfunction auth() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case PATCH_USER:\n var newState = Object.assign({}, state);\n newState.user = Object.assign({}, state.user, action.patch);\n return newState;\n\n case SIGN_IN:\n return Object.assign({}, state, {\n signedIn: action.user\n });\n\n case SIGN_OUT:\n return Object.assign({}, state, {\n isAuthenticated: false,\n isAnonymous: true,\n signedOut: !action.soft\n });\n\n case _users.UPDATE_AVATAR:\n if (state.isAuthenticated && state.user.id === action.userId) {\n var _newState = Object.assign({}, state);\n _newState.user = Object.assign({}, state.user, {\n 'avatars': action.avatars\n });\n return _newState;\n }\n return state;\n\n case _users.UPDATE_USERNAME:\n if (state.isAuthenticated && state.user.id === action.userId) {\n var _newState2 = Object.assign({}, state);\n _newState2.user = Object.assign({}, state.user, {\n username: action.username,\n slug: action.slug\n });\n return _newState2;\n }\n return state;\n\n default:\n return state;\n }\n}\n\n},{\"./users\":351}],338:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.replace = replace;\nexports.default = participants;\nvar REPLACE_PARTICIPANTS = exports.REPLACE_PARTICIPANTS = 'REPLACE_PARTICIPANTS';\n\nfunction replace(newState) {\n return {\n type: REPLACE_PARTICIPANTS,\n state: newState\n };\n}\n\nfunction participants() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case REPLACE_PARTICIPANTS:\n return action.state;\n\n default:\n return state;\n }\n}\n\n},{}],339:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.UPDATE_POLL = exports.REPLACE_POLL = exports.REMOVE_POLL = exports.RELEASE_POLL = exports.BUSY_POLL = undefined;\nexports.hydrate = hydrate;\nexports.busy = busy;\nexports.release = release;\nexports.replace = replace;\nexports.update = update;\nexports.remove = remove;\nexports.default = poll;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar BUSY_POLL = exports.BUSY_POLL = 'BUSY_POLL';\nvar RELEASE_POLL = exports.RELEASE_POLL = 'RELEASE_POLL';\nvar REMOVE_POLL = exports.REMOVE_POLL = 'REMOVE_POLL';\nvar REPLACE_POLL = exports.REPLACE_POLL = 'REPLACE_POLL';\nvar UPDATE_POLL = exports.UPDATE_POLL = 'UPDATE_POLL';\n\nfunction hydrate(json) {\n var hasSelectedChoices = false;\n for (var i in json.choices) {\n var choice = json.choices[i];\n if (choice.selected) {\n hasSelectedChoices = true;\n break;\n }\n }\n\n return Object.assign({}, json, {\n posted_on: (0, _moment2.default)(json.posted_on),\n\n hasSelectedChoices: hasSelectedChoices,\n endsOn: json.length ? (0, _moment2.default)(json.posted_on).add(json.length, 'days') : null,\n\n isBusy: false\n });\n}\n\nfunction busy() {\n return {\n type: BUSY_POLL\n };\n}\n\nfunction release() {\n return {\n type: RELEASE_POLL\n };\n}\n\nfunction replace(newState) {\n var hydrated = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n return {\n type: REPLACE_POLL,\n state: hydrated ? newState : hydrate(newState)\n };\n}\n\nfunction update(data) {\n return {\n type: UPDATE_POLL,\n data: data\n };\n}\n\nfunction remove() {\n return {\n type: REMOVE_POLL\n };\n}\n\nfunction poll() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case BUSY_POLL:\n return Object.assign({}, state, { isBusy: true });\n\n case RELEASE_POLL:\n return Object.assign({}, state, { isBusy: false });\n\n case REMOVE_POLL:\n return {\n isBusy: false\n };\n\n case REPLACE_POLL:\n return action.state;\n\n case UPDATE_POLL:\n return Object.assign({}, state, action.data);\n\n default:\n return state;\n }\n}\n\n},{\"moment\":\"moment\"}],340:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.PATCH_POST = undefined;\nexports.hydrate = hydrate;\nexports.hydrateAttachment = hydrateAttachment;\nexports.patch = patch;\nexports.default = post;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _users = require('./users');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar PATCH_POST = exports.PATCH_POST = 'PATCH_POST';\n\nfunction hydrate(json) {\n return Object.assign({}, json, {\n posted_on: (0, _moment2.default)(json.posted_on),\n updated_on: (0, _moment2.default)(json.updated_on),\n hidden_on: (0, _moment2.default)(json.hidden_on),\n\n attachments: json.attachments ? json.attachments.map(hydrateAttachment) : null,\n poster: json.poster ? (0, _users.hydrateUser)(json.poster) : null,\n\n isSelected: false,\n isBusy: false,\n isDeleted: false\n });\n}\n\nfunction hydrateAttachment(json) {\n return Object.assign({}, json, {\n uploaded_on: (0, _moment2.default)(json.uploaded_on)\n });\n}\n\nfunction patch(post, patch) {\n return {\n type: PATCH_POST,\n post: post,\n patch: patch\n };\n}\n\nfunction post() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case PATCH_POST:\n if (state.id == action.post.id) {\n return Object.assign({}, state, action.patch);\n }\n return state;\n\n default:\n return state;\n }\n}\n\n},{\"./users\":351,\"moment\":\"moment\"}],341:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.UPDATE_POSTS = exports.UNLOAD_POSTS = exports.LOAD_POSTS = exports.DESELECT_POSTS = exports.DESELECT_POST = exports.SELECT_POST = exports.APPEND_POSTS = undefined;\n\nvar _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; };\n\nexports.select = select;\nexports.deselect = deselect;\nexports.deselectAll = deselectAll;\nexports.hydrate = hydrate;\nexports.load = load;\nexports.append = append;\nexports.unload = unload;\nexports.update = update;\nexports.default = posts;\n\nvar _post = require('./post');\n\nvar _post2 = _interopRequireDefault(_post);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar APPEND_POSTS = exports.APPEND_POSTS = 'APPEND_POSTS';\nvar SELECT_POST = exports.SELECT_POST = 'SELECT_POST';\nvar DESELECT_POST = exports.DESELECT_POST = 'DESELECT_POST';\nvar DESELECT_POSTS = exports.DESELECT_POSTS = 'DESELECT_POSTS';\nvar LOAD_POSTS = exports.LOAD_POSTS = 'LOAD_POSTS';\nvar UNLOAD_POSTS = exports.UNLOAD_POSTS = 'UNLOAD_POSTS';\nvar UPDATE_POSTS = exports.UPDATE_POSTS = 'UPDATE_POSTS';\n\nfunction select(post) {\n return {\n type: SELECT_POST,\n post: post\n };\n}\n\nfunction deselect(post) {\n return {\n type: DESELECT_POST,\n post: post\n };\n}\n\nfunction deselectAll() {\n return {\n type: DESELECT_POSTS\n };\n}\n\nfunction hydrate(json) {\n return Object.assign({}, json, {\n results: json.results.map(_post.hydrate),\n isLoaded: true,\n isBusy: false,\n isSelected: false\n });\n}\n\nfunction load(newState) {\n var hydrated = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n return {\n type: LOAD_POSTS,\n state: hydrated ? newState : hydrate(newState)\n };\n}\n\nfunction append(newState) {\n var hydrated = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n return {\n type: APPEND_POSTS,\n state: hydrated ? newState : hydrate(newState)\n };\n}\n\nfunction unload() {\n return {\n type: UNLOAD_POSTS\n };\n}\n\nfunction update(newState) {\n return {\n type: UPDATE_POSTS,\n update: newState\n };\n}\n\nfunction posts() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n var _ret = function () {\n switch (action.type) {\n case SELECT_POST:\n var selectedPosts = state.results.map(function (post) {\n if (post.id == action.post.id) {\n return Object.assign({}, post, {\n isSelected: true\n });\n } else {\n return post;\n }\n });\n\n return {\n v: Object.assign({}, state, {\n results: selectedPosts\n })\n };\n\n case DESELECT_POST:\n var deseletedPosts = state.results.map(function (post) {\n if (post.id == action.post.id) {\n return Object.assign({}, post, {\n isSelected: false\n });\n } else {\n return post;\n }\n });\n\n return {\n v: Object.assign({}, state, {\n results: deseletedPosts\n })\n };\n\n case DESELECT_POSTS:\n var deseletedAllPosts = state.results.map(function (post) {\n return Object.assign({}, post, {\n isSelected: false\n });\n });\n\n return {\n v: Object.assign({}, state, {\n results: deseletedAllPosts\n })\n };\n\n case APPEND_POSTS:\n var results = state.results.slice();\n var resultsIds = state.results.map(function (post) {\n return post.id;\n });\n\n action.state.results.map(function (post) {\n if (resultsIds.indexOf(post.id) === -1) {\n results.push(post);\n }\n });\n\n return {\n v: Object.assign({}, action.state, {\n results: results\n })\n };\n\n case LOAD_POSTS:\n return {\n v: action.state\n };\n\n case UNLOAD_POSTS:\n return {\n v: Object.assign({}, state, {\n isLoaded: false\n })\n };\n\n case UPDATE_POSTS:\n return {\n v: Object.assign({}, state, action.update)\n };\n\n case _post.PATCH_POST:\n var reducedPosts = state.results.map(function (post) {\n return (0, _post2.default)(post, action);\n });\n\n return {\n v: Object.assign({}, state, {\n results: reducedPosts\n })\n };\n\n default:\n return {\n v: state\n };\n }\n }();\n\n if ((typeof _ret === 'undefined' ? 'undefined' : _typeof(_ret)) === \"object\") return _ret.v;\n}\n\n},{\"./post\":340}],342:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.load = load;\nexports.default = details;\nvar LOAD_DETAILS = exports.LOAD_DETAILS = 'LOAD_DETAILS';\n\nfunction load(newState) {\n return {\n type: LOAD_DETAILS,\n\n newState: newState\n };\n}\n\nfunction details() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case LOAD_DETAILS:\n return action.newState;\n\n default:\n return state;\n }\n}\n\n},{}],343:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.PATCH_PROFILE = exports.HYDRATE_PROFILE = undefined;\nexports.hydrate = hydrate;\nexports.patch = patch;\nexports.default = auth;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _users = require('./users');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar HYDRATE_PROFILE = exports.HYDRATE_PROFILE = 'HYDRATE_PROFILE';\nvar PATCH_PROFILE = exports.PATCH_PROFILE = 'PATCH_PROFILE';\n\nfunction hydrate(profile) {\n return {\n type: HYDRATE_PROFILE,\n profile: profile\n };\n}\n\nfunction patch(patch) {\n return {\n type: PATCH_PROFILE,\n patch: patch\n };\n}\n\nfunction auth() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case HYDRATE_PROFILE:\n return Object.assign({}, action.profile, {\n joined_on: (0, _moment2.default)(action.profile.joined_on),\n status: (0, _users.hydrateStatus)(action.profile.status)\n });\n\n case PATCH_PROFILE:\n return Object.assign({}, state, action.patch);\n\n case _users.UPDATE_AVATAR:\n if (state.id === action.userId) {\n return Object.assign({}, state, {\n avatars: action.avatars\n });\n }\n return state;\n\n case _users.UPDATE_USERNAME:\n if (state.id === action.userId) {\n return Object.assign({}, state, {\n username: action.username,\n slug: action.slug\n });\n }\n return state;\n\n default:\n return state;\n }\n}\n\n},{\"./users\":351,\"moment\":\"moment\"}],344:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.replace = replace;\nexports.update = update;\nexports.updateProvider = updateProvider;\nexports.default = participants;\nvar REPLACE_SEARCH = exports.REPLACE_SEARCH = 'REPLACE_SEARCH';\nvar UPDATE_SEARCH = exports.UPDATE_SEARCH = 'UPDATE_SEARCH';\nvar UPDATE_SEARCH_PROVIDER = exports.UPDATE_SEARCH_PROVIDER = 'UPDATE_SEARCH_PROVIDER';\n\nvar initialState = exports.initialState = {\n isLoading: false,\n query: '',\n providers: []\n};\n\nfunction replace(newState) {\n return {\n type: REPLACE_SEARCH,\n state: {\n isLoading: false,\n providers: newState\n }\n };\n}\n\nfunction update(newState) {\n return {\n type: UPDATE_SEARCH,\n update: newState\n };\n}\n\nfunction updateProvider(provider) {\n return {\n type: UPDATE_SEARCH_PROVIDER,\n provider: provider\n };\n}\n\nfunction participants() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case REPLACE_SEARCH:\n return action.state;\n\n case UPDATE_SEARCH:\n return Object.assign({}, state, action.update);\n\n case UPDATE_SEARCH_PROVIDER:\n return Object.assign({}, state, {\n providers: state.providers.map(function (provider) {\n if (provider.id === action.provider.id) {\n return action.provider;\n } else {\n return provider;\n }\n })\n });\n\n default:\n return state;\n }\n}\n\n},{}],345:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SELECT_ITEM = exports.SELECT_NONE = exports.SELECT_ALL = undefined;\nexports.all = all;\nexports.none = none;\nexports.item = item;\nexports.default = selection;\n\nvar _sets = require('../utils/sets');\n\nvar SELECT_ALL = exports.SELECT_ALL = 'SELECT_ALL';\nvar SELECT_NONE = exports.SELECT_NONE = 'SELECT_NONE';\nvar SELECT_ITEM = exports.SELECT_ITEM = 'SELECT_ITEM';\n\nfunction all(itemsIds) {\n return {\n type: SELECT_ALL,\n items: itemsIds\n };\n}\n\nfunction none() {\n return {\n type: SELECT_NONE\n };\n}\n\nfunction item(itemId) {\n return {\n type: SELECT_ITEM,\n item: itemId\n };\n}\n\nfunction selection() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case SELECT_ALL:\n return action.items;\n\n case SELECT_NONE:\n return [];\n\n case SELECT_ITEM:\n return (0, _sets.toggle)(state, action.item);\n\n default:\n return state;\n }\n}\n\n},{\"../utils/sets\":378}],346:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.showSnackbar = showSnackbar;\nexports.hideSnackbar = hideSnackbar;\nexports.default = snackbar;\nvar initialState = exports.initialState = {\n type: 'info',\n message: '',\n isVisible: false\n};\n\nvar SHOW_SNACKBAR = exports.SHOW_SNACKBAR = 'SHOW_SNACKBAR';\nvar HIDE_SNACKBAR = exports.HIDE_SNACKBAR = 'HIDE_SNACKBAR';\n\nfunction showSnackbar(message, type) {\n return {\n type: SHOW_SNACKBAR,\n message: message,\n messageType: type\n };\n}\n\nfunction hideSnackbar() {\n return {\n type: HIDE_SNACKBAR\n };\n}\n\nfunction snackbar() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n if (action.type === SHOW_SNACKBAR) {\n return {\n type: action.messageType,\n message: action.message,\n isVisible: true\n };\n } else if (action.type === HIDE_SNACKBAR) {\n return Object.assign({}, state, {\n isVisible: false\n });\n } else {\n return state;\n }\n}\n\n},{}],347:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.UPDATE_THREAD_ACL = exports.UPDATE_THREAD = exports.REPLACE_THREAD = exports.RELEASE_THREAD = exports.BUSY_THREAD = undefined;\nexports.hydrate = hydrate;\nexports.busy = busy;\nexports.release = release;\nexports.replace = replace;\nexports.update = update;\nexports.updateAcl = updateAcl;\nexports.default = thread;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _poll = require('./poll');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar BUSY_THREAD = exports.BUSY_THREAD = 'BUSY_THREAD';\nvar RELEASE_THREAD = exports.RELEASE_THREAD = 'RELEASE_THREAD';\nvar REPLACE_THREAD = exports.REPLACE_THREAD = 'REPLACE_THREAD';\nvar UPDATE_THREAD = exports.UPDATE_THREAD = 'UPDATE_THREAD';\nvar UPDATE_THREAD_ACL = exports.UPDATE_THREAD_ACL = 'UPDATE_THREAD_ACL';\n\nfunction hydrate(json) {\n return Object.assign({}, json, {\n started_on: (0, _moment2.default)(json.started_on),\n last_post_on: (0, _moment2.default)(json.last_post_on),\n\n isBusy: false\n });\n}\n\nfunction busy() {\n return {\n type: BUSY_THREAD\n };\n}\n\nfunction release() {\n return {\n type: RELEASE_THREAD\n };\n}\n\nfunction replace(newState) {\n var hydrated = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n return {\n type: REPLACE_THREAD,\n state: hydrated ? newState : hydrate(newState)\n };\n}\n\nfunction update(data) {\n return {\n type: UPDATE_THREAD,\n data: data\n };\n}\n\nfunction updateAcl(data) {\n return {\n type: UPDATE_THREAD_ACL,\n data: data\n };\n}\n\nfunction thread() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case BUSY_THREAD:\n return Object.assign({}, state, { isBusy: true });\n\n case RELEASE_THREAD:\n return Object.assign({}, state, { isBusy: false });\n\n case _poll.REMOVE_POLL:\n return Object.assign({}, state, { poll: null });\n\n case _poll.REPLACE_POLL:\n return Object.assign({}, state, { poll: action.state });\n\n case REPLACE_THREAD:\n return action.state;\n\n case UPDATE_THREAD:\n return Object.assign({}, state, action.data);\n\n case UPDATE_THREAD_ACL:\n var acl = Object.assign({}, state.acl, action.data);\n return Object.assign({}, state, { acl: acl });\n\n default:\n return state;\n }\n}\n\n},{\"./poll\":339,\"moment\":\"moment\"}],348:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.MODERATION_PERMISSIONS = exports.SORT_THREADS = exports.PATCH_THREAD = exports.HYDRATE_THREADS = exports.FILTER_THREADS = exports.DELETE_THREAD = exports.APPEND_THREADS = undefined;\nexports.append = append;\nexports.deleteThread = deleteThread;\nexports.filterThreads = filterThreads;\nexports.hydrate = hydrate;\nexports.patch = patch;\nexports.sort = sort;\nexports.getThreadModerationOptions = getThreadModerationOptions;\nexports.hydrateThread = hydrateThread;\nexports.default = thread;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _concatUnique = require('../utils/concat-unique');\n\nvar _concatUnique2 = _interopRequireDefault(_concatUnique);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar APPEND_THREADS = exports.APPEND_THREADS = 'APPEND_THREADS';\nvar DELETE_THREAD = exports.DELETE_THREAD = 'DELETE_THREAD';\nvar FILTER_THREADS = exports.FILTER_THREADS = 'FILTER_THREADS';\nvar HYDRATE_THREADS = exports.HYDRATE_THREADS = 'HYDRATE_THREADS';\nvar PATCH_THREAD = exports.PATCH_THREAD = 'PATCH_THREAD';\nvar SORT_THREADS = exports.SORT_THREADS = 'SORT_THREADS';\n\nvar MODERATION_PERMISSIONS = exports.MODERATION_PERMISSIONS = ['can_announce', 'can_approve', 'can_close', 'can_hide', 'can_move', 'can_merge', 'can_pin', 'can_review'];\n\nfunction append(items, sorting) {\n return {\n type: APPEND_THREADS,\n items: items,\n sorting: sorting\n };\n}\n\nfunction deleteThread(thread) {\n return {\n type: DELETE_THREAD,\n thread: thread\n };\n}\n\nfunction filterThreads(category, categoriesMap) {\n return {\n type: FILTER_THREADS,\n category: category,\n categoriesMap: categoriesMap\n };\n}\n\nfunction hydrate(items) {\n return {\n type: HYDRATE_THREADS,\n items: items\n };\n}\n\nfunction patch(thread, patch) {\n var sorting = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n\n return {\n type: PATCH_THREAD,\n thread: thread,\n patch: patch,\n sorting: sorting\n };\n}\n\nfunction sort(sorting) {\n return {\n type: SORT_THREADS,\n sorting: sorting\n };\n}\n\nfunction getThreadModerationOptions(thread_acl) {\n var options = [];\n MODERATION_PERMISSIONS.forEach(function (perm) {\n if (thread_acl[perm]) {\n options.push(perm);\n }\n });\n return options;\n}\n\nfunction hydrateThread(thread) {\n return Object.assign({}, thread, {\n started_on: (0, _moment2.default)(thread.started_on),\n last_post_on: (0, _moment2.default)(thread.last_post_on),\n moderation: getThreadModerationOptions(thread.acl)\n });\n}\n\nfunction thread() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case APPEND_THREADS:\n var mergedState = (0, _concatUnique2.default)(action.items.map(hydrateThread), state);\n return mergedState.sort(action.sorting);\n\n case DELETE_THREAD:\n return state.filter(function (item) {\n return item.id !== action.thread.id;\n });\n\n case FILTER_THREADS:\n return state.filter(function (item) {\n var itemCategory = action.categoriesMap[item.category];\n if (itemCategory.lft >= action.category.lft && itemCategory.rght <= action.category.rght) {\n // same or sub category\n return true;\n } else if (item.weight == 2) {\n // globally pinned\n return true;\n } else {\n // thread moved outside displayed scope, hide it\n return false;\n }\n });\n\n case HYDRATE_THREADS:\n return action.items.map(hydrateThread);\n\n case PATCH_THREAD:\n var patchedState = state.map(function (item) {\n if (item.id === action.thread.id) {\n return Object.assign({}, item, action.patch);\n } else {\n return item;\n }\n });\n\n if (action.sorting) {\n return patchedState.sort(action.sorting);\n }\n return patchedState;\n\n case SORT_THREADS:\n return state.sort(action.sorting);\n\n default:\n return state;\n }\n}\n\n},{\"../utils/concat-unique\":368,\"moment\":\"moment\"}],349:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.doTick = doTick;\nexports.default = tick;\nvar initialState = exports.initialState = {\n tick: 0\n};\n\nvar TICK = exports.TICK = 'TICK';\n\nfunction doTick() {\n return {\n type: TICK\n };\n}\n\nfunction tick() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n if (action.type === TICK) {\n return Object.assign({}, state, {\n tick: state.tick + 1\n });\n } else {\n return state;\n }\n}\n\n},{}],350:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.HYDRATE_HISTORY = exports.APPEND_HISTORY = exports.ADD_NAME_CHANGE = undefined;\nexports.addNameChange = addNameChange;\nexports.append = append;\nexports.hydrate = hydrate;\nexports.hydrateNamechange = hydrateNamechange;\nexports.default = username;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _users = require('./users');\n\nvar _concatUnique = require('../utils/concat-unique');\n\nvar _concatUnique2 = _interopRequireDefault(_concatUnique);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar ADD_NAME_CHANGE = exports.ADD_NAME_CHANGE = 'ADD_NAME_CHANGE';\nvar APPEND_HISTORY = exports.APPEND_HISTORY = 'APPEND_HISTORY';\nvar HYDRATE_HISTORY = exports.HYDRATE_HISTORY = 'HYDRATE_HISTORY';\n\nfunction addNameChange(change, user, changedBy) {\n return {\n type: ADD_NAME_CHANGE,\n change: change,\n user: user,\n changedBy: changedBy\n };\n}\n\nfunction append(items) {\n return {\n type: APPEND_HISTORY,\n items: items\n };\n}\n\nfunction hydrate(items) {\n return {\n type: HYDRATE_HISTORY,\n items: items\n };\n}\n\nfunction hydrateNamechange(namechange) {\n return Object.assign({}, namechange, {\n changed_on: (0, _moment2.default)(namechange.changed_on)\n });\n}\n\nfunction username() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case ADD_NAME_CHANGE:\n var newState = state.slice();\n newState.unshift({\n id: Math.floor(Date.now() / 1000), // just small hax for getting id\n changed_by: action.changedBy,\n changed_by_username: action.changedBy.username,\n changed_on: (0, _moment2.default)(),\n new_username: action.change.username,\n old_username: action.user.username\n });\n return newState;\n\n case APPEND_HISTORY:\n return (0, _concatUnique2.default)(state, action.items.map(hydrateNamechange));\n\n case HYDRATE_HISTORY:\n return action.items.map(hydrateNamechange);\n\n case _users.UPDATE_AVATAR:\n return state.map(function (item) {\n item = Object.assign({}, item);\n if (item.changed_by && item.changed_by.id === action.userId) {\n item.changed_by = Object.assign({}, item.changed_by, {\n avatars: action.avatars\n });\n }\n\n return item;\n });\n\n case _users.UPDATE_USERNAME:\n return state.map(function (item) {\n item = Object.assign({}, item);\n if (item.changed_by && item.changed_by.id === action.userId) {\n item.changed_by = Object.assign({}, item.changed_by, {\n username: action.username,\n slug: action.slug\n });\n }\n\n return Object.assign({}, item);\n });\n\n default:\n return state;\n }\n}\n\n},{\"../utils/concat-unique\":368,\"./users\":351,\"moment\":\"moment\"}],351:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.UPDATE_USERNAME = exports.UPDATE_AVATAR = exports.HYDRATE_USERS = exports.APPEND_USERS = undefined;\nexports.append = append;\nexports.hydrate = hydrate;\nexports.hydrateStatus = hydrateStatus;\nexports.hydrateUser = hydrateUser;\nexports.updateAvatar = updateAvatar;\nexports.updateUsername = updateUsername;\nexports.default = user;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _concatUnique = require('../utils/concat-unique');\n\nvar _concatUnique2 = _interopRequireDefault(_concatUnique);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar APPEND_USERS = exports.APPEND_USERS = 'APPEND_USERS';\nvar HYDRATE_USERS = exports.HYDRATE_USERS = 'HYDRATE_USERS';\nvar UPDATE_AVATAR = exports.UPDATE_AVATAR = 'UPDATE_AVATAR';\nvar UPDATE_USERNAME = exports.UPDATE_USERNAME = 'UPDATE_USERNAME';\n\nfunction append(items) {\n return {\n type: APPEND_USERS,\n items: items\n };\n}\n\nfunction hydrate(items) {\n return {\n type: HYDRATE_USERS,\n items: items\n };\n}\n\nfunction hydrateStatus(status) {\n if (status) {\n return Object.assign({}, status, {\n last_click: status.last_click ? (0, _moment2.default)(status.last_click) : null,\n banned_until: status.banned_until ? (0, _moment2.default)(status.banned_until) : null\n });\n } else {\n return null;\n }\n}\n\nfunction hydrateUser(user) {\n return Object.assign({}, user, {\n joined_on: (0, _moment2.default)(user.joined_on),\n status: hydrateStatus(user.status)\n });\n}\n\nfunction updateAvatar(user, avatars) {\n return {\n type: UPDATE_AVATAR,\n userId: user.id,\n avatars: avatars\n };\n}\n\nfunction updateUsername(user, username, slug) {\n return {\n type: UPDATE_USERNAME,\n userId: user.id,\n username: username,\n slug: slug\n };\n}\n\nfunction user() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case APPEND_USERS:\n return (0, _concatUnique2.default)(state, action.items.map(hydrateUser));\n\n case HYDRATE_USERS:\n return action.items.map(hydrateUser);\n\n case UPDATE_AVATAR:\n return state.map(function (item) {\n item = Object.assign({}, item);\n if (item.id === action.userId) {\n item.avatars = action.avatars;\n }\n\n return item;\n });\n\n default:\n return state;\n }\n}\n\n},{\"../utils/concat-unique\":368,\"moment\":\"moment\"}],352:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Ajax = exports.Ajax = function () {\n function Ajax() {\n _classCallCheck(this, Ajax);\n\n this._cookieName = null;\n this._csrfToken = null;\n this._locks = {};\n }\n\n _createClass(Ajax, [{\n key: 'init',\n value: function init(cookieName) {\n this._cookieName = cookieName;\n }\n }, {\n key: 'getCsrfToken',\n value: function getCsrfToken() {\n if (document.cookie.indexOf(this._cookieName) !== -1) {\n var cookieRegex = new RegExp(this._cookieName + '\\=([^;]*)');\n var cookie = document.cookie.match(cookieRegex)[0];\n return cookie ? cookie.split('=')[1] : null;\n } else {\n return null;\n }\n }\n }, {\n key: 'request',\n value: function request(method, url, data) {\n var self = this;\n return new Promise(function (resolve, reject) {\n var xhr = {\n url: url,\n method: method,\n headers: {\n 'X-CSRFToken': self.getCsrfToken()\n },\n\n data: data ? JSON.stringify(data) : null,\n contentType: \"application/json; charset=utf-8\",\n dataType: 'json',\n\n success: function success(data) {\n resolve(data);\n },\n\n error: function error(jqXHR) {\n var rejection = jqXHR.responseJSON || {};\n\n rejection.status = jqXHR.status;\n\n if (rejection.status === 0) {\n rejection.detail = gettext(\"Lost connection with application.\");\n }\n\n if (rejection.status === 404) {\n if (!rejection.detail || rejection.detail === 'NOT FOUND') {\n rejection.detail = gettext(\"Action link is invalid.\");\n }\n }\n\n if (rejection.status === 500 && !rejection.detail) {\n rejection.detail = gettext(\"Unknown error has occured.\");\n }\n\n rejection.statusText = jqXHR.statusText;\n\n reject(rejection);\n }\n };\n\n $.ajax(xhr);\n });\n }\n }, {\n key: 'get',\n value: function get(url, params, lock) {\n var _this = this;\n\n if (params) {\n url += '?' + $.param(params);\n }\n\n if (lock) {\n var _ret = function () {\n var self = _this;\n\n // update url in existing lock?\n if (_this._locks[lock]) {\n _this._locks[lock].url = url;\n }\n\n // immediately dereference promise handlers without doing anything\n // we are already waiting for existing response to resolve\n if (_this._locks[lock] && _this._locks[lock].waiter) {\n return {\n v: {\n then: function then() {\n return;\n }\n }\n };\n\n // return promise that will begin when original one resolves\n } else if (_this._locks[lock] && _this._locks[lock].wait) {\n _this._locks[lock].waiter = true;\n\n return {\n v: new Promise(function (resolve, reject) {\n var wait = function wait(url) {\n // keep waiting on promise\n if (self._locks[lock].wait) {\n window.setTimeout(function () {\n wait(url);\n }, 300);\n\n // poll for new url\n } else if (self._locks[lock].url !== url) {\n wait(self._locks[lock].url);\n\n // ajax backend for response\n } else {\n self._locks[lock].waiter = false;\n self.request('GET', self._locks[lock].url).then(function (data) {\n if (self._locks[lock].url === url) {\n resolve(data);\n } else {\n self._locks[lock].waiter = true;\n wait(self._locks[lock].url);\n }\n }, function (rejection) {\n if (self._locks[lock].url === url) {\n reject(rejection);\n } else {\n self._locks[lock].waiter = true;\n wait(self._locks[lock].url);\n }\n });\n }\n };\n\n window.setTimeout(function () {\n wait(url);\n }, 300);\n })\n };\n\n // setup new lock without waiter\n } else {\n _this._locks[lock] = {\n url: url,\n wait: true,\n waiter: false\n };\n\n return {\n v: new Promise(function (resolve, reject) {\n self.request('GET', url).then(function (data) {\n self._locks[lock].wait = false;\n if (self._locks[lock].url === url) {\n resolve(data);\n }\n }, function (rejection) {\n self._locks[lock].wait = false;\n if (self._locks[lock].url === url) {\n reject(rejection);\n }\n });\n })\n };\n }\n }();\n\n if ((typeof _ret === 'undefined' ? 'undefined' : _typeof(_ret)) === \"object\") return _ret.v;\n } else {\n return this.request('GET', url);\n }\n }\n }, {\n key: 'post',\n value: function post(url, data) {\n return this.request('POST', url, data);\n }\n }, {\n key: 'patch',\n value: function patch(url, data) {\n return this.request('PATCH', url, data);\n }\n }, {\n key: 'put',\n value: function put(url, data) {\n return this.request('PUT', url, data);\n }\n }, {\n key: 'delete',\n value: function _delete(url, data) {\n return this.request('DELETE', url, data);\n }\n }, {\n key: 'upload',\n value: function upload(url, data, progress) {\n var self = this;\n return new Promise(function (resolve, reject) {\n var xhr = {\n url: url,\n method: 'POST',\n headers: {\n 'X-CSRFToken': self.getCsrfToken()\n },\n\n data: data,\n contentType: false,\n processData: false,\n\n xhr: function xhr() {\n var xhr = new window.XMLHttpRequest();\n xhr.upload.addEventListener(\"progress\", function (evt) {\n if (evt.lengthComputable) {\n progress(Math.round(evt.loaded / evt.total * 100));\n }\n }, false);\n return xhr;\n },\n\n success: function success(response) {\n resolve(response);\n },\n\n error: function error(jqXHR) {\n var rejection = jqXHR.responseJSON || {};\n\n rejection.status = jqXHR.status;\n\n if (rejection.status === 0) {\n rejection.detail = gettext(\"Lost connection with application.\");\n }\n\n if (rejection.status === 413 && !rejection.detail) {\n rejection.detail = gettext(\"Upload was rejected by server as too large.\");\n }\n\n if (rejection.status === 404) {\n if (!rejection.detail || rejection.detail === 'NOT FOUND') {\n rejection.detail = gettext(\"Action link is invalid.\");\n }\n }\n\n if (rejection.status === 500 && !rejection.detail) {\n rejection.detail = gettext(\"Unknown error has occured.\");\n }\n\n rejection.statusText = jqXHR.statusText;\n\n reject(rejection);\n }\n };\n\n $.ajax(xhr);\n });\n }\n }]);\n\n return Ajax;\n}();\n\nexports.default = new Ajax();\n\n},{}],353:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Auth = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _auth = require('../reducers/auth');\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n// jshint ignore:line\n\nvar Auth = exports.Auth = function () {\n function Auth() {\n _classCallCheck(this, Auth);\n }\n\n _createClass(Auth, [{\n key: 'init',\n value: function init(store, local, modal) {\n this._store = store;\n this._local = local;\n this._modal = modal;\n\n // tell other tabs what auth state is because we are most current with it\n this.syncSession();\n\n // listen for other tabs to tell us that state changed\n this.watchState();\n }\n }, {\n key: 'syncSession',\n value: function syncSession() {\n var state = this._store.getState().auth;\n if (state.isAuthenticated) {\n this._local.set('auth', {\n isAuthenticated: true,\n username: state.user.username\n });\n } else {\n this._local.set('auth', {\n isAuthenticated: false\n });\n }\n }\n }, {\n key: 'watchState',\n value: function watchState() {\n var _this = this;\n\n this._local.watch('auth', function (newState) {\n if (newState.isAuthenticated) {\n _this._store.dispatch((0, _auth.signIn)({\n username: newState.username\n }));\n } else {\n _this._store.dispatch((0, _auth.signOut)());\n }\n });\n this._modal.hide();\n }\n }, {\n key: 'signIn',\n value: function signIn(user) {\n this._store.dispatch((0, _auth.signIn)(user));\n this._local.set('auth', {\n isAuthenticated: true,\n username: user.username\n });\n this._modal.hide();\n }\n }, {\n key: 'signOut',\n value: function signOut() {\n this._store.dispatch((0, _auth.signOut)());\n this._local.set('auth', {\n isAuthenticated: false\n });\n this._modal.hide();\n }\n }, {\n key: 'softSignOut',\n value: function softSignOut() {\n this._store.dispatch((0, _auth.signOut)(true));\n this._local.set('auth', {\n isAuthenticated: false\n });\n this._modal.hide();\n }\n }]);\n\n return Auth;\n}();\n\nexports.default = new Auth();\n\n},{\"../reducers/auth\":337}],354:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Captcha = exports.ReCaptcha = exports.ReCaptchaComponent = exports.QACaptcha = exports.NoCaptcha = exports.BaseCaptcha = undefined;\n\nvar _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; }; }(); /* global grecaptcha */\n// jshint ignore:line\n\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _formGroup = require('../components/form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _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; }\n\nfunction _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; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n// jshint ignore:line\n\nvar BaseCaptcha = exports.BaseCaptcha = function () {\n function BaseCaptcha() {\n _classCallCheck(this, BaseCaptcha);\n }\n\n _createClass(BaseCaptcha, [{\n key: 'init',\n value: function init(context, ajax, include, snackbar) {\n this._context = context;\n this._ajax = ajax;\n this._include = include;\n this._snackbar = snackbar;\n }\n }]);\n\n return BaseCaptcha;\n}();\n\nvar NoCaptcha = exports.NoCaptcha = function (_BaseCaptcha) {\n _inherits(NoCaptcha, _BaseCaptcha);\n\n function NoCaptcha() {\n _classCallCheck(this, NoCaptcha);\n\n return _possibleConstructorReturn(this, (NoCaptcha.__proto__ || Object.getPrototypeOf(NoCaptcha)).apply(this, arguments));\n }\n\n _createClass(NoCaptcha, [{\n key: 'load',\n value: function load() {\n return new Promise(function (resolve) {\n // immediately resolve as we don't have anything to validate\n resolve();\n });\n }\n }, {\n key: 'validator',\n value: function validator() {\n return null;\n }\n }, {\n key: 'component',\n value: function component() {\n return null;\n }\n }]);\n\n return NoCaptcha;\n}(BaseCaptcha);\n\nvar QACaptcha = exports.QACaptcha = function (_BaseCaptcha2) {\n _inherits(QACaptcha, _BaseCaptcha2);\n\n function QACaptcha() {\n _classCallCheck(this, QACaptcha);\n\n return _possibleConstructorReturn(this, (QACaptcha.__proto__ || Object.getPrototypeOf(QACaptcha)).apply(this, arguments));\n }\n\n _createClass(QACaptcha, [{\n key: 'load',\n value: function load() {\n var self = this;\n return new Promise(function (resolve, reject) {\n self._ajax.get(self._context.get('CAPTCHA_API')).then(function (data) {\n self.question = data.question;\n self.helpText = data.help_text;\n resolve();\n }, function () {\n self._snackbar.error(gettext(\"Failed to load CAPTCHA.\"));\n reject();\n });\n });\n }\n }, {\n key: 'validator',\n value: function validator() {\n return [];\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'component',\n value: function component(kwargs) {\n return _react2.default.createElement(\n _formGroup2.default,\n {\n label: this.question,\n 'for': 'id_captcha',\n labelClass: kwargs.labelClass || \"\",\n controlClass: kwargs.controlClass || \"\",\n validation: kwargs.form.state.errors.captcha,\n helpText: this.helpText || null\n },\n _react2.default.createElement('input', {\n 'aria-describedby': 'id_captcha_status',\n className: 'form-control',\n disabled: kwargs.form.state.isLoading,\n id: 'id_captcha',\n onChange: kwargs.form.bindInput('captcha'),\n type: 'text',\n value: kwargs.form.state.captcha\n })\n );\n }\n /* jshint ignore:end */\n\n }]);\n\n return QACaptcha;\n}(BaseCaptcha);\n\nvar ReCaptchaComponent = exports.ReCaptchaComponent = function (_React$Component) {\n _inherits(ReCaptchaComponent, _React$Component);\n\n function ReCaptchaComponent() {\n _classCallCheck(this, ReCaptchaComponent);\n\n return _possibleConstructorReturn(this, (ReCaptchaComponent.__proto__ || Object.getPrototypeOf(ReCaptchaComponent)).apply(this, arguments));\n }\n\n _createClass(ReCaptchaComponent, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this4 = this;\n\n grecaptcha.render('recaptcha', {\n 'sitekey': this.props.siteKey,\n 'callback': function callback(response) {\n // fire fakey event to binding\n _this4.props.binding({\n target: {\n value: response\n }\n });\n }\n });\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement('div', { id: 'recaptcha' });\n /* jshint ignore:end */\n }\n }]);\n\n return ReCaptchaComponent;\n}(_react2.default.Component);\n\nvar ReCaptcha = exports.ReCaptcha = function (_BaseCaptcha3) {\n _inherits(ReCaptcha, _BaseCaptcha3);\n\n function ReCaptcha() {\n _classCallCheck(this, ReCaptcha);\n\n return _possibleConstructorReturn(this, (ReCaptcha.__proto__ || Object.getPrototypeOf(ReCaptcha)).apply(this, arguments));\n }\n\n _createClass(ReCaptcha, [{\n key: 'load',\n value: function load() {\n this._include.include('https://www.google.com/recaptcha/api.js', true);\n\n return new Promise(function (resolve) {\n var wait = function wait() {\n if (typeof grecaptcha === \"undefined\") {\n window.setTimeout(function () {\n wait();\n }, 200);\n } else {\n resolve();\n }\n };\n wait();\n });\n }\n }, {\n key: 'validator',\n value: function validator() {\n return [];\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'component',\n value: function component(kwargs) {\n return _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Please solve the quick test\"),\n 'for': 'id_captcha',\n labelClass: kwargs.labelClass || \"\",\n controlClass: kwargs.controlClass || \"\",\n validation: kwargs.form.state.errors.captcha,\n helpText: gettext(\"This test helps us prevent automated spam registrations on our site.\")\n },\n _react2.default.createElement(ReCaptchaComponent, {\n binding: kwargs.form.bindInput('captcha'),\n siteKey: this._context.get('SETTINGS').recaptcha_site_key\n })\n );\n }\n /* jshint ignore:end */\n\n }]);\n\n return ReCaptcha;\n}(BaseCaptcha);\n\nvar Captcha = exports.Captcha = function () {\n function Captcha() {\n _classCallCheck(this, Captcha);\n }\n\n _createClass(Captcha, [{\n key: 'init',\n value: function init(context, ajax, include, snackbar) {\n switch (context.get('SETTINGS').captcha_type) {\n case 'no':\n this._captcha = new NoCaptcha();\n break;\n\n case 'qa':\n this._captcha = new QACaptcha();\n break;\n\n case 're':\n this._captcha = new ReCaptcha();\n break;\n }\n\n this._captcha.init(context, ajax, include, snackbar);\n }\n\n // accessors for underlying strategy\n\n }, {\n key: 'load',\n value: function load() {\n return this._captcha.load();\n }\n }, {\n key: 'validator',\n value: function validator() {\n return this._captcha.validator();\n }\n }, {\n key: 'component',\n value: function component(kwargs) {\n return this._captcha.component(kwargs);\n }\n }]);\n\n return Captcha;\n}();\n\nexports.default = new Captcha();\n\n},{\"../components/form-group\":51,\"react\":\"react\"}],355:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Include = exports.Include = function () {\n function Include() {\n _classCallCheck(this, Include);\n }\n\n _createClass(Include, [{\n key: 'init',\n value: function init(staticUrl) {\n this._staticUrl = staticUrl;\n this._included = [];\n }\n }, {\n key: 'include',\n value: function include(script) {\n var remote = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (this._included.indexOf(script) === -1) {\n this._included.push(script);\n this._include(script, remote);\n }\n }\n }, {\n key: '_include',\n value: function _include(script, remote) {\n $.ajax({\n url: (!remote ? this._staticUrl : '') + script,\n cache: true,\n dataType: 'script'\n });\n }\n }]);\n\n return Include;\n}();\n\nexports.default = new Include();\n\n},{}],356:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar storage = window.localStorage;\n\nvar LocalStorage = exports.LocalStorage = function () {\n function LocalStorage() {\n _classCallCheck(this, LocalStorage);\n }\n\n _createClass(LocalStorage, [{\n key: 'init',\n value: function init(prefix) {\n var _this = this;\n\n this._prefix = prefix;\n this._watchers = [];\n\n window.addEventListener('storage', function (e) {\n var newValueJson = JSON.parse(e.newValue);\n _this._watchers.forEach(function (watcher) {\n if (watcher.key === e.key && e.oldValue !== e.newValue) {\n watcher.callback(newValueJson);\n }\n });\n });\n }\n }, {\n key: 'set',\n value: function set(key, value) {\n storage.setItem(this._prefix + key, JSON.stringify(value));\n }\n }, {\n key: 'get',\n value: function get(key) {\n var itemString = storage.getItem(this._prefix + key);\n if (itemString) {\n return JSON.parse(itemString);\n } else {\n return null;\n }\n }\n }, {\n key: 'watch',\n value: function watch(key, callback) {\n this._watchers.push({\n key: this._prefix + key,\n callback: callback\n });\n }\n }]);\n\n return LocalStorage;\n}();\n\nexports.default = new LocalStorage();\n\n},{}],357:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.MobileNavbarDropdown = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _mountComponent = require('../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar MobileNavbarDropdown = exports.MobileNavbarDropdown = function () {\n function MobileNavbarDropdown() {\n _classCallCheck(this, MobileNavbarDropdown);\n }\n\n _createClass(MobileNavbarDropdown, [{\n key: 'init',\n value: function init(element) {\n this._element = element;\n this._component = null;\n }\n }, {\n key: 'show',\n value: function show(component) {\n if (this._component === component) {\n this.hide();\n } else {\n this._component = component;\n (0, _mountComponent2.default)(component, this._element.id);\n $(this._element).addClass('open');\n }\n }\n }, {\n key: 'showConnected',\n value: function showConnected(name, component) {\n if (this._component === name) {\n this.hide();\n } else {\n this._component = name;\n (0, _mountComponent2.default)(component, this._element.id, true);\n $(this._element).addClass('open');\n }\n }\n }, {\n key: 'hide',\n value: function hide() {\n $(this._element).removeClass('open');\n this._component = null;\n }\n }]);\n\n return MobileNavbarDropdown;\n}();\n\nexports.default = new MobileNavbarDropdown();\n\n},{\"../utils/mount-component\":373}],358:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Modal = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _mountComponent = require('../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Modal = exports.Modal = function () {\n function Modal() {\n _classCallCheck(this, Modal);\n }\n\n _createClass(Modal, [{\n key: 'init',\n value: function init(element) {\n var _this = this;\n\n this._element = element;\n\n this._modal = $(element).modal({ show: false });\n\n this._modal.on('hidden.bs.modal', function () {\n _reactDom2.default.unmountComponentAtNode(_this._element);\n });\n }\n }, {\n key: 'show',\n value: function show(component) {\n (0, _mountComponent2.default)(component, this._element.id);\n this._modal.modal('show');\n }\n }, {\n key: 'hide',\n value: function hide() {\n this._modal.modal('hide');\n }\n }]);\n\n return Modal;\n}();\n\nexports.default = new Modal();\n\n},{\"../utils/mount-component\":373,\"react-dom\":\"react-dom\"}],359:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.parseYoutubeUrl = parseYoutubeUrl;\nexports.cleanUrl = cleanUrl;\nexports.getVideoIdFromUrl = getVideoIdFromUrl;\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar ytRegExp = new RegExp('^.*(?:(?:youtu\\.be\\/|v\\/|vi\\/|u\\/\\w\\/|embed\\/)|(?:(?:watch)?\\?v(?:i)?=|\\&v(?:i)?=))([^#\\&\\?]*).*');\n\nvar OneBox = exports.OneBox = function () {\n function OneBox() {\n var _this = this;\n\n _classCallCheck(this, OneBox);\n\n this.render = function (domnode) {\n if (!domnode) return;\n _this.highlightCode(domnode);\n _this.embedYoutubePlayers(domnode);\n };\n\n this._youtube = {};\n }\n\n // jshint ignore:start\n\n\n _createClass(OneBox, [{\n key: 'highlightCode',\n\n // jshint ignore:end\n\n value: function highlightCode(domnode) {\n var codeblocks = domnode.querySelectorAll('pre>code');\n for (var i = 0; i < codeblocks.length; i++) {\n var code = codeblocks[i];\n hljs.highlightBlock(code);\n }\n }\n }, {\n key: 'embedYoutubePlayers',\n value: function embedYoutubePlayers(domnode) {\n var anchors = domnode.querySelectorAll('p>a');\n for (var i = 0; i < anchors.length; i++) {\n var a = anchors[i];\n var p = a.parentNode;\n var onlyChild = p.childNodes.length === 1;\n\n if (!this._youtube[a.href]) {\n this._youtube[a.href] = parseYoutubeUrl(a.href);\n }\n\n var youtubeMovie = this._youtube[a.href];\n if (onlyChild && !!youtubeMovie && youtubeMovie.data !== false) {\n this.swapYoutubePlayer(a, youtubeMovie);\n }\n }\n }\n }, {\n key: 'swapYoutubePlayer',\n value: function swapYoutubePlayer(element, youtube) {\n var url = 'https://www.youtube.com/embed/';\n url += youtube.video;\n url += '?rel=0';\n if (youtube.start) {\n url += '&start=' + youtube.start;\n }\n\n var player = $('');\n $(element).replaceWith(player);\n player.wrap('
    ');\n }\n }]);\n\n return OneBox;\n}();\n\nexports.default = new OneBox();\nfunction parseYoutubeUrl(url) {\n var cleanedUrl = cleanUrl(url);\n var video = getVideoIdFromUrl(cleanedUrl);\n\n if (!video) return null;\n\n var start = 0;\n if (cleanedUrl.indexOf('?') > 0) {\n var query = cleanedUrl.substr(cleanedUrl.indexOf('?') + 1);\n var timebit = query.split('&').filter(function (i) {\n return i.substr(0, 2) === 't=';\n })[0];\n\n if (timebit) {\n var bits = timebit.substr(2).split('m');\n if (bits[0].substr(-1) === 's') {\n start += parseInt(bits[0].substr(0, bits[0].length - 1));\n } else {\n start += parseInt(bits[0]) * 60;\n if (!!bits[1] && bits[1].substr(-1) === 's') {\n start += parseInt(bits[1].substr(0, bits[1].length - 1));\n }\n }\n }\n }\n\n return {\n start: start,\n video: video\n };\n}\n\nfunction cleanUrl(url) {\n var clean = url;\n\n if (url.substr(0, 8) === 'https://') {\n clean = clean.substr(8);\n } else if (url.substr(0, 7) === 'http://') {\n clean = clean.substr(7);\n }\n\n if (clean.substr(0, 4) === 'www.') {\n clean = clean.substr(4);\n }\n\n return clean;\n}\n\nfunction getVideoIdFromUrl(url) {\n if (url.indexOf('youtu') === -1) return null;\n\n var video = url.match(ytRegExp);\n if (video) {\n return video[1];\n }\n return null;\n}\n\n},{}],360:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar PageTitle = exports.PageTitle = function () {\n function PageTitle() {\n _classCallCheck(this, PageTitle);\n }\n\n _createClass(PageTitle, [{\n key: 'init',\n value: function init(indexTitle, forumName) {\n this._indexTitle = indexTitle;\n this._forumName = forumName;\n }\n }, {\n key: 'set',\n value: function set(title) {\n if (!title) {\n document.title = this._indexTitle || this._forumName;\n return;\n }\n\n if (typeof title === 'string') {\n title = { title: title };\n }\n\n var finalTitle = title.title;\n\n if (title.page > 1) {\n var pageLabel = interpolate(gettext('page: %(page)s'), {\n page: title.page\n }, true);\n\n finalTitle += ' (' + pageLabel + ')';\n }\n\n if (title.parent) {\n finalTitle += ' | ' + title.parent;\n }\n\n document.title = finalTitle + ' | ' + this._forumName;\n }\n }]);\n\n return PageTitle;\n}();\n\nexports.default = new PageTitle();\n\n},{}],361:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Polls = exports.Polls = function () {\n function Polls() {\n _classCallCheck(this, Polls);\n }\n\n _createClass(Polls, [{\n key: \"init\",\n value: function init(ajax, snackbar) {\n this._ajax = ajax;\n this._snackbar = snackbar;\n\n this._polls = {};\n }\n }, {\n key: \"start\",\n value: function start(kwargs) {\n var _this = this;\n\n this.stop(kwargs.poll);\n\n var poolServer = function poolServer() {\n _this._polls[kwargs.poll] = kwargs;\n\n _this._ajax.get(kwargs.url, kwargs.data || null).then(function (data) {\n if (!_this._polls[kwargs.poll]._stopped) {\n kwargs.update(data);\n\n _this._polls[kwargs.poll].timeout = window.setTimeout(poolServer, kwargs.frequency);\n }\n }, function (rejection) {\n if (!_this._polls[kwargs.poll]._stopped) {\n if (kwargs.error) {\n kwargs.error(rejection);\n } else {\n _this._snackbar.apiError(rejection);\n }\n }\n });\n };\n\n if (kwargs.delayed) {\n this._polls[kwargs.poll] = {\n timeout: window.setTimeout(poolServer, kwargs.frequency)\n };\n } else {\n poolServer();\n }\n }\n }, {\n key: \"stop\",\n value: function stop(pollId) {\n if (this._polls[pollId]) {\n window.clearTimeout(this._polls[pollId].timeout);\n this._polls[pollId]._stopped = true;\n }\n }\n }]);\n\n return Polls;\n}();\n\nexports.default = new Polls();\n\n},{}],362:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Posting = undefined;\n\nvar _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; }; }(); // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _poll = require('../components/poll');\n\nvar _posting = require('../components/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _mountComponent = require('../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n// jshint ignore:line\n\nvar Posting = exports.Posting = function () {\n function Posting() {\n var _this = this;\n\n _classCallCheck(this, Posting);\n\n this.close = function () {\n if (_this._isOpen && !_this._isClosing) {\n _this._isClosing = true;\n _this._placeholder.removeClass('slide-in');\n\n window.setTimeout(function () {\n _reactDom2.default.unmountComponentAtNode(document.getElementById('posting-mount'));\n _this._isClosing = false;\n _this._isOpen = false;\n }, 300);\n }\n };\n }\n\n _createClass(Posting, [{\n key: 'init',\n value: function init(ajax, snackbar, placeholder) {\n this._ajax = ajax;\n this._snackbar = snackbar;\n this._placeholder = $(placeholder);\n\n this._mode = null;\n\n this._isOpen = false;\n this._isClosing = false;\n }\n }, {\n key: 'open',\n value: function open(props) {\n if (this._isOpen === false) {\n this._mode = props.mode;\n this._isOpen = props.submit;\n this._realOpen(props);\n } else if (this._isOpen !== props.submit) {\n var message = gettext(\"You are already working on other message. Do you want to discard it?\");\n if (this._mode == 'POLL') {\n message = gettext(\"You are already working on a poll. Do you want to discard it?\");\n }\n\n var changeForm = confirm(message);\n if (changeForm) {\n this._mode = props.mode;\n this._isOpen = props.submit;\n this._realOpen(props);\n }\n } else if (this._mode == 'REPLY' && props.mode == 'REPLY') {\n this._realOpen(props);\n }\n }\n\n // jshint ignore:start\n\n }, {\n key: '_realOpen',\n\n // jshint ignore:end\n value: function _realOpen(props) {\n if (props.mode == 'POLL') {\n (0, _mountComponent2.default)(_react2.default.createElement(_poll.PollForm, props), 'posting-mount');\n } else {\n (0, _mountComponent2.default)(_react2.default.createElement(_posting2.default, props), 'posting-mount');\n }\n\n this._placeholder.addClass('slide-in');\n\n $('html, body').animate({\n scrollTop: this._placeholder.offset().top\n }, 1000);\n }\n }]);\n\n return Posting;\n}();\n\nexports.default = new Posting();\n\n},{\"../components/poll\":99,\"../components/posting\":127,\"../utils/mount-component\":373,\"react\":\"react\",\"react-dom\":\"react-dom\"}],363:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Snackbar = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _snackbar = require('../reducers/snackbar');\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar HIDE_ANIMATION_LENGTH = 300;\nvar MESSAGE_SHOW_LENGTH = 5000;\n\nvar Snackbar = exports.Snackbar = function () {\n function Snackbar() {\n _classCallCheck(this, Snackbar);\n }\n\n _createClass(Snackbar, [{\n key: 'init',\n value: function init(store) {\n this._store = store;\n this._timeout = null;\n }\n }, {\n key: 'alert',\n value: function alert(message, type) {\n var _this = this;\n\n if (this._timeout) {\n window.clearTimeout(this._timeout);\n this._store.dispatch((0, _snackbar.hideSnackbar)());\n\n this._timeout = window.setTimeout(function () {\n _this._timeout = null;\n _this.alert(message, type);\n }, HIDE_ANIMATION_LENGTH);\n } else {\n this._store.dispatch((0, _snackbar.showSnackbar)(message, type));\n this._timeout = window.setTimeout(function () {\n _this._store.dispatch((0, _snackbar.hideSnackbar)());\n _this._timeout = null;\n }, MESSAGE_SHOW_LENGTH);\n }\n }\n\n // shorthands for message types\n\n }, {\n key: 'info',\n value: function info(message) {\n this.alert(message, 'info');\n }\n }, {\n key: 'success',\n value: function success(message) {\n this.alert(message, 'success');\n }\n }, {\n key: 'warning',\n value: function warning(message) {\n this.alert(message, 'warning');\n }\n }, {\n key: 'error',\n value: function error(message) {\n this.alert(message, 'error');\n }\n\n // shorthand for api errors\n\n }, {\n key: 'apiError',\n value: function apiError(rejection) {\n var message = rejection.detail;\n\n if (!message) {\n if (rejection.status === 404) {\n message = gettext(\"Action link is invalid.\");\n } else {\n message = gettext(\"Unknown error has occured.\");\n }\n }\n\n if (rejection.status === 403 && message === \"Permission denied\") {\n message = gettext(\"You don't have permission to perform this action.\");\n }\n\n this.error(message);\n }\n }]);\n\n return Snackbar;\n}();\n\nexports.default = new Snackbar();\n\n},{\"../reducers/snackbar\":346}],364:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.StoreWrapper = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _redux = require('redux');\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar StoreWrapper = exports.StoreWrapper = function () {\n function StoreWrapper() {\n _classCallCheck(this, StoreWrapper);\n\n this._store = null;\n this._reducers = {};\n this._initialState = {};\n }\n\n _createClass(StoreWrapper, [{\n key: 'addReducer',\n value: function addReducer(name, reducer, initialState) {\n this._reducers[name] = reducer;\n this._initialState[name] = initialState;\n }\n }, {\n key: 'init',\n value: function init() {\n this._store = (0, _redux.createStore)((0, _redux.combineReducers)(this._reducers), this._initialState);\n }\n }, {\n key: 'getStore',\n value: function getStore() {\n return this._store;\n }\n\n // Store API\n\n }, {\n key: 'getState',\n value: function getState() {\n return this._store.getState();\n }\n }, {\n key: 'dispatch',\n value: function dispatch(action) {\n return this._store.dispatch(action);\n }\n }]);\n\n return StoreWrapper;\n}();\n\nexports.default = new StoreWrapper();\n\n},{\"redux\":\"redux\"}],365:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n/* global zxcvbn */\nvar Zxcvbn = exports.Zxcvbn = function () {\n function Zxcvbn() {\n _classCallCheck(this, Zxcvbn);\n }\n\n _createClass(Zxcvbn, [{\n key: \"init\",\n value: function init(include) {\n this._include = include;\n this._isLoaded = false;\n }\n }, {\n key: \"scorePassword\",\n value: function scorePassword(password, inputs) {\n // 0-4 score, the more the stronger password\n if (this._isLoaded) {\n return zxcvbn(password, inputs).score;\n }\n\n return 0;\n }\n }, {\n key: \"load\",\n value: function load() {\n if (!this._isLoaded) {\n this._include.include('misago/js/zxcvbn.js');\n return this._loadingPromise();\n } else {\n return this._loadedPromise();\n }\n }\n }, {\n key: \"_loadingPromise\",\n value: function _loadingPromise() {\n var self = this;\n\n return new Promise(function (resolve, reject) {\n var wait = function wait() {\n var tries = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n\n tries += 1;\n if (tries > 200) {\n reject();\n } else if (typeof zxcvbn === \"undefined\") {\n window.setTimeout(function () {\n wait(tries);\n }, 200);\n } else {\n self._isLoaded = true;\n resolve();\n }\n };\n wait();\n });\n }\n }, {\n key: \"_loadedPromise\",\n value: function _loadedPromise() {\n // we have already loaded zxcvbn.js, resolve away!\n return new Promise(function (resolve) {\n resolve();\n });\n }\n }]);\n\n return Zxcvbn;\n}();\n\nexports.default = new Zxcvbn();\n\n},{}],366:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (ban, changeState) {\n _reactDom2.default.render(\n /* jshint ignore:start */\n _react2.default.createElement(\n _reactRedux.Provider,\n { store: _store2.default.getStore() },\n _react2.default.createElement(RedrawedBannedPage, { message: ban.message,\n expires: ban.expires_on ? (0, _moment2.default)(ban.expires_on) : null })\n ),\n /* jshint ignore:end */\n document.getElementById('page-mount'));\n\n if (typeof changeState === 'undefined' || changeState) {\n var forumName = _index2.default.get('SETTINGS').forum_name;\n document.title = gettext(\"You are banned\") + ' | ' + forumName;\n window.history.pushState({}, \"\", _index2.default.get('BANNED_URL'));\n }\n};\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _reactRedux = require('react-redux');\n\nvar _bannedPage = require('../components/banned-page');\n\nvar _bannedPage2 = _interopRequireDefault(_bannedPage);\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:line\n\n/* jshint ignore:start */\n// jshint ignore:line\n// jshint ignore:line\nvar select = function select(state) {\n return state.tick;\n}; // jshint ignore:line\n// jshint ignore:line\n\n\nvar RedrawedBannedPage = (0, _reactRedux.connect)(select)(_bannedPage2.default);\n/* jshint ignore:end */\n\n},{\"../components/banned-page\":4,\"../index\":291,\"../services/store\":364,\"moment\":\"moment\",\"react\":\"react\",\"react-dom\":\"react-dom\",\"react-redux\":\"react-redux\"}],367:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (list, rowWidth) {\n var padding = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var rows = [];\n var row = [];\n\n list.forEach(function (element) {\n row.push(element);\n if (row.length === rowWidth) {\n rows.push(row);\n row = [];\n }\n });\n\n // pad row to required length?\n if (padding !== false && row.length > 0 && row.length < rowWidth) {\n for (var i = row.length; i < rowWidth; i++) {\n row.push(padding);\n }\n }\n\n if (row.length) {\n rows.push(row);\n }\n\n return rows;\n};\n\n},{}],368:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (a, b) {\n var ids = [];\n return a.concat(b).filter(function (item) {\n if (ids.indexOf(item.id) === -1) {\n ids.push(item.id);\n return true;\n } else {\n return false;\n }\n });\n};\n\n},{}],369:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar _class = function () {\n function _class(callback, count) {\n _classCallCheck(this, _class);\n\n this._callback = callback;\n this._count = count;\n }\n\n _createClass(_class, [{\n key: \"count\",\n value: function count() {\n this._count -= 1;\n if (this._count === 0) {\n this._callback();\n }\n }\n }]);\n\n return _class;\n}();\n\nexports.default = _class;\n\n},{}],370:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (text) {\n return text.replace(/[&<>\"']/g, function (m) {\n return map[m];\n });\n};\n\nvar map = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": '''\n};\n\n},{}],371:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (bytes) {\n if (bytes > 1024 * 1024 * 1024) {\n return roundSize(bytes / (1024 * 1024 * 1024)) + ' GB';\n } else if (bytes > 1024 * 1024) {\n return roundSize(bytes / (1024 * 1024)) + ' MB';\n } else if (bytes > 1024) {\n return roundSize(bytes / 1024) + ' KB';\n } else {\n return roundSize(bytes) + ' B';\n }\n};\n\nexports.roundSize = roundSize;\nfunction roundSize(value) {\n return value.toFixed(1);\n}\n\n},{}],372:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (str) {\n return URL_PATTERN.test($.trim(str));\n};\n\nvar URL_PATTERN = new RegExp('^(https?:\\\\/\\\\/)?((([a-z\\\\d]([a-z\\\\d-]*[a-z\\\\d])*)\\\\.)+[a-z]{2,}|((\\\\d{1,3}\\\\.){3}\\\\d{1,3}))(\\\\:\\\\d+)?(\\\\/[-a-z\\\\d%_.~+]*)*(\\\\?[;&a-z\\\\d%_.~+=-]*)?(\\\\#[-a-z\\\\d_]*)?$', 'i');\n\n},{}],373:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (Component, rootElementId) {\n var connected = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;\n\n var rootElement = document.getElementById(rootElementId);\n\n /* jshint ignore:start */\n var finalComponent = Component.props ? Component : _react2.default.createElement(Component, null);\n /* jshint ignore:end */\n\n if (rootElement) {\n if (connected) {\n _reactDom2.default.render(\n /* jshint ignore:start */\n _react2.default.createElement(\n _reactRedux.Provider,\n { store: _store2.default.getStore() },\n finalComponent\n ),\n /* jshint ignore:end */\n rootElement);\n } else {\n /* jshint ignore:start */\n _reactDom2.default.render(finalComponent, rootElement);\n /* jshint ignore:end */\n }\n }\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _reactRedux = require('react-redux');\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../services/store\":364,\"react\":\"react\",\"react-dom\":\"react-dom\",\"react-redux\":\"react-redux\"}],374:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar OrderedList = function () {\n function OrderedList(items) {\n _classCallCheck(this, OrderedList);\n\n this.isOrdered = false;\n this._items = items || [];\n }\n\n _createClass(OrderedList, [{\n key: \"add\",\n value: function add(key, item, order) {\n this._items.push({\n key: key,\n item: item,\n\n after: order ? order.after || null : null,\n before: order ? order.before || null : null\n });\n }\n }, {\n key: \"get\",\n value: function get(key, value) {\n for (var i = 0; i < this._items.length; i++) {\n if (this._items[i].key === key) {\n return this._items[i].item;\n }\n }\n\n return value;\n }\n }, {\n key: \"has\",\n value: function has(key) {\n return this.get(key) !== undefined;\n }\n }, {\n key: \"values\",\n value: function values() {\n var values = [];\n for (var i = 0; i < this._items.length; i++) {\n values.push(this._items[i].item);\n }\n return values;\n }\n }, {\n key: \"order\",\n value: function order(values_only) {\n if (!this.isOrdered) {\n this._items = this._order(this._items);\n this.isOrdered = true;\n }\n\n if (values_only || typeof values_only === 'undefined') {\n return this.values();\n } else {\n return this._items;\n }\n }\n }, {\n key: \"orderedValues\",\n value: function orderedValues() {\n return this.order(true);\n }\n }, {\n key: \"_order\",\n value: function _order(unordered) {\n // Index of unordered items\n var index = [];\n unordered.forEach(function (item) {\n index.push(item.key);\n });\n\n // Ordered items\n var ordered = [];\n var ordering = [];\n\n // First pass: register items that\n // don't specify their order\n unordered.forEach(function (item) {\n if (!item.after && !item.before) {\n ordered.push(item);\n ordering.push(item.key);\n }\n });\n\n // Second pass: register items that\n // specify their before to \"_end\"\n unordered.forEach(function (item) {\n if (item.before === \"_end\") {\n ordered.push(item);\n ordering.push(item.key);\n }\n });\n\n // Third pass: keep iterating items\n // until we hit iterations limit or finish\n // ordering list\n function insertItem(item) {\n var insertAt = -1;\n if (ordering.indexOf(item.key) === -1) {\n if (item.after) {\n insertAt = ordering.indexOf(item.after);\n if (insertAt !== -1) {\n insertAt += 1;\n }\n } else if (item.before) {\n insertAt = ordering.indexOf(item.before);\n }\n\n if (insertAt !== -1) {\n ordered.splice(insertAt, 0, item);\n ordering.splice(insertAt, 0, item.key);\n }\n }\n }\n\n var iterations = 200;\n while (iterations > 0 && index.length !== ordering.length) {\n iterations -= 1;\n unordered.forEach(insertItem);\n }\n\n return ordered;\n }\n }]);\n\n return OrderedList;\n}();\n\nexports.default = OrderedList;\n\n},{}],375:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.int = int;\nexports.range = range;\nfunction int(min, max) {\n return Math.floor(Math.random() * (max - min + 1)) + min;\n}\n\nfunction range(min, max) {\n var array = new Array(int(min, max));\n for (var i = 0; i < array.length; i++) {\n array[i] = i;\n }\n\n return array;\n}\n\n},{}],376:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function () {\n window.scrollTo(0, 0);\n};\n\n},{}],377:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (options) {\n var routes = {\n component: options.component || null,\n childRoutes: []\n };\n\n if (options.root) {\n routes.childRoutes = [{\n path: options.root,\n onEnter: function onEnter(nextState, replaceState) {\n replaceState(null, options.paths[0].path);\n }\n }].concat(options.paths);\n } else {\n routes.childRoutes = options.paths;\n }\n\n _reactDom2.default.render(_react2.default.createElement(\n _reactRedux.Provider,\n { store: _store2.default.getStore() },\n _react2.default.createElement(_reactRouter.Router, { routes: routes, history: _reactRouter.browserHistory })\n ), rootElement);\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _reactRedux = require('react-redux');\n\nvar _reactRouter = require('react-router');\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar rootElement = document.getElementById('page-mount'); // jshint ignore:start\n\n},{\"../services/store\":364,\"react\":\"react\",\"react-dom\":\"react-dom\",\"react-redux\":\"react-redux\",\"react-router\":\"react-router\"}],378:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.push = push;\nexports.remove = remove;\nexports.toggle = toggle;\nfunction push(array, value) {\n if (array.indexOf(value) === -1) {\n var copy = array.slice();\n copy.push(value);\n return copy;\n } else {\n return array;\n }\n}\n\nfunction remove(array, value) {\n if (array.indexOf(value) >= 0) {\n return array.filter(function (i) {\n return i !== value;\n });\n } else {\n return array;\n }\n}\n\nfunction toggle(array, value) {\n if (array.indexOf(value) === -1) {\n var copy = array.slice();\n copy.push(value);\n return copy;\n } else {\n return array.filter(function (i) {\n return i !== value;\n });\n }\n}\n\n},{}],379:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (string, subString) {\n string = (string + \"\").toLowerCase();\n subString = (subString + \"\").toLowerCase();\n\n if (subString.length <= 0) return 0;\n\n var n = 0;\n var pos = 0;\n var step = subString.length;\n\n while (true) {\n pos = string.indexOf(subString, pos);\n if (pos >= 0) {\n n += 1;\n pos += step;\n } else {\n break;\n }\n }\n\n return n;\n};\n\n},{}],380:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.required = required;\nexports.email = email;\nexports.minLength = minLength;\nexports.maxLength = maxLength;\nexports.usernameMinLength = usernameMinLength;\nexports.usernameMaxLength = usernameMaxLength;\nexports.usernameContent = usernameContent;\nexports.passwordMinLength = passwordMinLength;\nvar EMAIL = /^(([^<>()[\\]\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\nvar USERNAME = new RegExp('^[0-9a-z]+$', 'i');\n\nfunction required() {\n return function (value) {\n if ($.trim(value).length === 0) {\n return gettext(\"This field is required.\");\n }\n };\n}\n\nfunction email(message) {\n return function (value) {\n if (!EMAIL.test(value)) {\n return message || gettext(\"Enter a valid email address.\");\n }\n };\n}\n\nfunction minLength(limitValue, message) {\n return function (value) {\n var returnMessage = '';\n var length = $.trim(value).length;\n\n if (length < limitValue) {\n if (message) {\n returnMessage = message(limitValue, length);\n } else {\n returnMessage = ngettext(\"Ensure this value has at least %(limit_value)s character (it has %(show_value)s).\", \"Ensure this value has at least %(limit_value)s characters (it has %(show_value)s).\", limitValue);\n }\n return interpolate(returnMessage, {\n limit_value: limitValue,\n show_value: length\n }, true);\n }\n };\n}\n\nfunction maxLength(limitValue, message) {\n return function (value) {\n var returnMessage = '';\n var length = $.trim(value).length;\n\n if (length > limitValue) {\n if (message) {\n returnMessage = message(limitValue, length);\n } else {\n returnMessage = ngettext(\"Ensure this value has at most %(limit_value)s character (it has %(show_value)s).\", \"Ensure this value has at most %(limit_value)s characters (it has %(show_value)s).\", limitValue);\n }\n return interpolate(returnMessage, {\n limit_value: limitValue,\n show_value: length\n }, true);\n }\n };\n}\n\nfunction usernameMinLength(lengthMin) {\n var message = function message(lengthMin) {\n return ngettext(\"Username must be at least %(limit_value)s character long.\", \"Username must be at least %(limit_value)s characters long.\", lengthMin);\n };\n return minLength(lengthMin, message);\n}\n\nfunction usernameMaxLength(lengthMax) {\n var message = function message(lengthMax) {\n return ngettext(\"Username cannot be longer than %(limit_value)s character.\", \"Username cannot be longer than %(limit_value)s characters.\", lengthMax);\n };\n return maxLength(lengthMax, message);\n}\n\nfunction usernameContent() {\n return function (value) {\n if (!USERNAME.test($.trim(value))) {\n return gettext(\"Username can only contain latin alphabet letters and digits.\");\n }\n };\n}\n\nfunction passwordMinLength(limitValue) {\n return function (value) {\n var length = value.length;\n\n if (length < limitValue) {\n var returnMessage = ngettext(\"Valid password must be at least %(limit_value)s character long.\", \"Valid password must be at least %(limit_value)s characters long.\", limitValue);\n\n return interpolate(returnMessage, {\n limit_value: limitValue,\n show_value: length\n }, true);\n }\n };\n}\n\n},{}]},{},[291,292,293,294,295,310,311,312,313,314,315,316,317,333,334,335,336,296,297,298,299,300,301,302,303,304,305,306,307,308,309,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332]);\n"]} \ No newline at end of file +{"version":3,"sources":["misago.js"],"names":["e","t","n","r","s","o","u","a","require","i","f","Error","code","l","exports","call","length","1","module","_interopRequireWildcard","obj","__esModule","newObj","key","Object","prototype","hasOwnProperty","_interopRequireDefault","default","_classCallCheck","instance","Constructor","TypeError","_possibleConstructorReturn","self","ReferenceError","_inherits","subClass","superClass","create","constructor","value","enumerable","writable","configurable","setPrototypeOf","__proto__","ModalHeader","props","_react2","createElement","className","aria-label","gettext","data-dismiss","type","aria-hidden","defineProperty","_createClass","defineProperties","target","descriptor","protoProps","staticProps","_react","_form","_form2","_formGroup","_formGroup2","_participants","participants","_thread","_ajax","_ajax2","_modal","_modal2","_snackbar","_snackbar2","_store","_store2","_class","_Form","this","_this","getPrototypeOf","onUsernameChange","event","changeValue","state","isLoading","username","trim","error","patch","thread","api","index","op","path","data","dispatch","updateAcl","replace","success","hide","role","onSubmit","handleSubmit","for","label","id","disabled","onChange","../reducers/participants","../reducers/thread","../services/ajax","../services/modal","../services/snackbar","../services/store","./form","./form-group","react","2","select","user","auth","signedIn","signedOut","_React$Component","apply","arguments","window","location","reload","interpolate","getMessage","onClick","refresh","Component","3","getSrc","size","resolveAvatarForSize","avatars","url","_2","get","avatar","forEach","av","size2x","alt","src","srcSet","width","height","_","..","4","_moment","_moment2","message","html","dangerouslySetInnerHTML","__html","plain","expires","isAfter","title","expires_on","format","fromNow","getReasonMessage","getExpirationMessage","moment","5","_loader","_loader2","Button","loading","children","defaultProps","./loader","6","7","_ref","categories","map","category","_category2","_category","./category","8","css_class","_listItem2","isFirst","subcategories","_listItem","./list-item","9","description","10","getClassName","is_read","getTitle","is_closed","getIcon","11","_main2","_stats2","_lastThread2","_subcategories2","_main","_lastThread","_stats","_subcategories","./last-thread","./main","./stats","./subcategories","12","LastThread","_ref2","acl","can_browse","can_see_all_threads","last_thread_title","LastPosterAvatar","href","last_thread_new","LastPosterName","last_post","last_post_on","_ref3","last_poster","last_poster_name","_avatar2","_ref4","Empty","_ref5","Message","Private","_ref6","Protected","_ref7","_ref8","_avatar","../../../avatar","13","_icon2","name","_description2","_description","_icon","./description","./icon","14","Threads","threads","ngettext","Posts","posts","15","16","17","store","tick","_blankslate","_blankslate2","_categoriesList","_categoriesList2","_index","_index2","_polls","_polls2","hydrate","assign","update","setState","startPolling","start","poll","frequency","../../index","../../services/polls","./blankslate","./categories-list","18","choices","item","repeat","level","19","_button","_button2","cropAvatar","avatarType","upload","cropit","$","deviceRatio","cropitOffset","post","crop","offset","x","y","zoom","then","onComplete","detail","rejection","status","showError","options","crop_tmp","crop_src","dataUrl","_this2","cropperWidth","getAvatarSize","initialWidth","exportZoom","imageState","getImagePath","onImageLoaded","zoomLevel","imageSize","displayedWidth","offsetX","displayedHeight","offsetY","showIndex","../../services/ajax","../../services/snackbar","../avatar","../button","20","Gallery","GalleryItem","undefined","_extends","source","_batch","_batch2","_temp","_ret","_len","args","Array","_key","concat","selection","_React$Component2","_this3","images","row","_React$Component3","_this4","image","save","response","_this5","galleries","../../utils/batch","21","setGravatar","callApi","setGenerated","gravatar","showCrop","showUpload","showGallery","userPeview","getAvatarPreview","getGravatarButton","getCropButton","getUploadButton","getGalleryButton","../loader","22","ChangeAvatarError","_crop","_crop2","_upload","_upload2","_gallery","_gallery2","_modalLoader","_modalLoader2","_users","reason","getErrorReason","component","completeFlow","updateAvatar","getBody","../../reducers/users","../../services/store","../modal-loader","./crop","./gallery","./index","./upload","23","_fileSize","_fileSize2","pickFile","document","getElementById","click","uploadFile","files","validationError","validateFile","preview","URL","createObjectURL","progress","FormData","append","uploaded","info","limit","filesize","invalidTypeMsg","allowed_mime_types","indexOf","extensionFound","loweredFilename","toLowerCase","allowed_extensions","extension","substr","extensions","join","getUploadRequirements","aria-valuenow","aria-valuemin","aria-valuemax","style","getUploadProgressLabel","getUploadProgress","renderCrop","renderUpload","../../utils/file-size","24","dropdown","toggleNav","aria-haspopup","aria-expanded","25","display","_panelMessage2","helpText","_panelMessage","../panel-message","26","_select","_select2","ev","_this$props","field","fieldname","_props","input","rows","../select","27","errors","fields","help_text","validation","_fieldInput2","_fieldInput","../form-group","./field-input","28","_defineProperty","CancelButton","onCancel","_fieldset","_fieldset2","groups","group","initial","onSuccess","apiError","../form","./fieldset","29","FormDisplay","cancel","_state","30","31","replaceSelection","execAction","32","insertCode","syntax","prompt","_action2","_action","_isUrl","../../../utils/is-url","./action","33","makeEmphasis","34","insertHr","35","insertImage","_isUrl2","36","insertLink","37","insertQuote","38","makeStriketrough","39","makeStrong","40","Preview","is_image","Image","Icon","thumbnailUrl","thumb","backgroundImage","Filename","filename","Details","uploader","USER_URL","_escapeHtml2","uploader_name","USER_SPAN","date","DATE_ABBR","absolute","uploaded_on","relative","filetype","Actions","Insert","Remove","Undo","isRemoved","onInsert","can_delete","onRemove","onUndo","_escapeHtml","insertAttachment","updateItem","newState","updatedAttachments","attachments","onAttachmentsChange","../../../..","../../../../utils/escape-html","../../../../utils/file-size","41","STRONG","filteredAttachments","filter","42","_complete2","_error2","_complete","_error","./complete","./error","43","44","max_attachment_size","_list2","_uploader2","_list","_uploader","../../..","./list","./uploader","45","_attachment2","_attachment","./attachment","46","47","getRandomKey","Math","round","Date","getTime","file","../../../services/ajax","../../../services/snackbar","48","Protect","canProtect","protect","onUnprotect","onProtect","_code","_code2","_emphasis","_emphasis2","_hr","_hr2","_image","_image2","_link","_link2","_striketrough","_striketrough2","_strong","_strong2","_quote","_quote2","_attachments","_attachments2","_uploadButton","_uploadButton2","_markupPreview","_markupPreview2","_textutils","textUtils","onPreviewClick","isPreviewLoading","show","markup","parsed","operation","getSelectionText","_replaceSelection","newValue","atwho","at","displayTpl","insertTpl","searchKey","callbacks","remoteFilter","query","callback","getJSON","q","on","flag","submitLabel","placeholder","../..","../../services/modal","./actions/code","./actions/emphasis","./actions/hr","./actions/image","./actions/link","./actions/quote","./actions/striketrough","./actions/strong","./attachments","./attachments/upload-button/","./markup-preview","./textutils","49","_misagoMarkup2","_misagoMarkup","../misago-markup","50","getTextarea","textareaId","getValue","getSelectionRange","end","getSelection","ctrl","focus","range","createRange","text","moveStart","selectionStart","selectionEnd","substring","setSelection","selectionRange","setSelectionRange","createTextRange","collapse","moveEnd","_replace","myRange","replacement","startText","51","isValidated","labelClass","htmlFor","controlClass","getFeedbackDescription","getFeedback","getHelpText","extra","52","_validators","validateRequired","required","bindInput","formErrors","validateField","preventDefault","clean","promise","send","handleSuccess","handleError","validators","optional","validatedFields","push","_name","_name2","fieldErrors","validate","requiredError","_i","_validationError","../utils/validators","53","isControlled","isActive","pathname","activeClassName","54","55","onError","onPollChange","confirmation","confirm","polls","./button","56","_oneBox","_oneBox2","render","documentNode","prevProps","prevState","nextProps","nextState","ref","node","../services/one-box","57","58","_PanelMessage","icon","./panel-message","59","filtered","section","results","count","slice","MAX_RESULTS","60","HEADER","RESULT","FOOTER","61","_input2","_input","./input","62","63","flattenProviders","flatlist","arrayLength","provider","_constants","flattenProvider","result","./constants","64","_dropdownMenu2","flatResults","_flattenResults2","_result2","_empty2","_dropdownMenu","_empty","_result","_flattenResults","./dropdown-menu","./empty","./flatten-results","./result","65","autoComplete","66","../../loader","67","encodeURI","68","69","_header2","_footer2","_footer","_header","../constants","./footer","./header","70","_thread2","_user2","_user","./thread","./user","71","poster","footer","content","posted_on","poster_name","72","rank","joined_on","73","_cleanResults","_cleanResults2","_dropdown","_dropdown2","onToggle","isOpen","setTimeout","container","querySelector","onDocumentMouseDown","closeResults","parentNode","onEscape","loadResults","intervalId","addEventListener","removeEventListener","delay","random","clearTimeout","data-toggle","./clean-results","./dropdown","74","_panelLoader2","_panelLoader","../../panel-loader","75","next_on","next_change","../../panel-message","76","usernameContent","usernameMinLength","length_min","usernameMaxLength","length_max","phrases","changes_left","name_changes_expire","_message","complete","slug","../../../utils/validators","../../button","../../form","../../form-group","77","_formLoading","_formLoading2","_formLocked","_formLocked2","_root","_root2","_usernameHistory","_pageTitle","_pageTitle2","addNameChange","updateUsername","isLoaded","set","parent","Promise","all","getChangeForm","changes","../../../index","../../../reducers/username-history","../../../reducers/users","../../../services/page-title","../../../services/store","../../username-history/root","./form-loading","./form-locked","78","_editDetails","_editDetails2","edit_details","../../services/page-title","../edit-details","79","_yesNoSwitch","_yesNoSwitch2","_auth","is_hiding_presence","limits_private_thread_invites_to","subscribe_to_started_threads","subscribe_to_replied_threads","privateThreadInvitesChoices","subscribeToChoices","iconOn","iconOff","labelOn","labelOff","../../reducers/auth","../yes-no-switch","80","SideNav","option","_reactRouter","Link","to","baseUrl","CompactNav","_li2","hideNav","_li","../li","react-router","81","username-history","paths","_reactRedux","connect","_forumOptions2","_root4","_dropdownToggle","_navs","_forumOptions","_root3","_withDropdown","_withDropdown2","_WithDropdown","../dropdown-toggle","../with-dropdown","./change-username/root","./edit-details","./forum-options","./navs","./sign-in-credentials/root","react-redux","82","new_email","password","email","lengths","change_email","83","new_password","repeat_password","change_password","84","_changeEmail","_changeEmail2","_changePassword","_changePassword2","./change-email","./change-password","85","_stringCount","_stringCount2","copy","../utils/string-count","86","87","88","_addParticipant","_addParticipant2","can_add_participants","../add-participant","89","leave","participant","remove","changeOwner","../../../reducers/participants","../../../reducers/thread","90","UserStatus","isOwner","is_owner","_makeOwner2","_remove2","_makeOwner","_remove","../../avatar","./make-owner","./remove","91","userIsOwner","_card2","_card","./card","92","_actions","confirmed","isUser","can_change_owner","./actions","93","isModerator","can_moderate_private_threads","94","getUserIsOwner","_cardsList2","utils","getParticipantsCopy","_cardsList","_utils","./add-participant","./cards-list","./utils","95","users","96","LABELS","STYLES","_zxcvbn","_zxcvbn2","_score","_password","_inputs","loaded","load","inputs","cacheStale","scorePassword","score","getScore","../services/zxcvbn","97","generateRandomHash","randomHash","toString","PollChoice","onAdd","hash","setChoices","choice","onDelete","canDelete","_temp2","_ret2","_len2","_key2","deleteItem","maxLength","98","PollPublicSwitch","isEdit","_choicesControl","_choicesControl2","_poll","_posting","_posting2","close","question","allowed_choices","allow_revotes","is_public","put","non_field_errors","../../../reducers/poll","../../../services/posting","../../yes-no-switch","./choices-control","99","PollForm","Poll","_poll2","./poll","100","PollCreation","getPoster","getPostedOn","PollLength","ends_on","getEndsOn","endsOn","PollVotes","votes","PollIsPublic","../../utils/escape-html","101","getIsPollOver","_results","_results2","_voting","_voting2","showResults","showVoting","hasSelectedChoices","isPollOver","can_vote","./results","./voting","102","proc","ceil","getVotesLabel","ChoiceVotes","UserChoice","selected","103","_info2","_chart2","_options2","_chart","_options","_info","../info","./chart","./options","104","ModalBody","_modalMessage2","ChoicesList","ChoiceDetails","VotesCount","VotesList","voters","Voter","VoteDate","voted_on","_modalMessage","hydratedData","voter","../../modal-loader","../../modal-message","105","isVisible","can_edit","can_see_votes","controls","control","ChangeVote","canVote","canChangeVote","isBusy","Delete","Edit","SeeVotes","_modal3","_modal4","seeVotes","open","submit","mode","_temp3","_ret3","_len3","_key3","deletePoll","busy","newThreadAcl","release","../../../services/modal","./modal","106","PollChoicesLeft","choicesLeft","PollAllowRevote","../../../utils/escape-html","107","_help","_help2","toggleChoice","getChoiceFromHash","deselectChoice","selectChoice","getChoicesLeft","./help","./select","108","ChoiceSelect","109","110","DiffItem","getItemClassName","cleanItem","diff","111","revertEdit","edit","canRevert","112","ModalDialog","_diff","_diff2","_toolbar","_toolbar2","_post","goToEdit","edits","isReady","hydrateEdit","hydratedPost","../../reducers/post","../modal-message","./diff","./toolbar","113","GoBackBtn","previous","GoForwardBtn","next","GoLastBtn","RevertBtn","Label","editor","editor_name","edited_on","edited_by","goLast","goForward","goBack","114","json","115","_post2","_preview2","_preview","./post","./preview","116","Default","Invalid","../../misago-markup","117","tooltip","118","_postSide2","_body2","_body","_postSide","./body","./post-side","119","120","121","_registered2","_anonymous2","_anonymous","_registered","./anonymous","./registered","122","_userTitle2","_userTitle","./user-title","123","userTitle","is_tab","124","_random","../../utils/random","125","hydrateLike","liked_on","likes","likesCount","LikesList","like","LikeDetails","liker_id","LikeDate","likedOn","./avatar","./modal-loader","./modal-message","126","_editor","_editor2","_container","_container2","_message2","loadSuccess","is_protected","can_protect","loadError","isErrored","onPostChange","getPostValidators","config","method","../../services/posting","../editor","./utils/attachments","./utils/container","./utils/loader","./utils/message","./utils/validators","127","_start2","_startPrivate2","_reply2","_edit2","_start","_startPrivate","_reply","_edit","./edit","./reply","./start","./start-private","128","appendData","newPost","context","newContext","reply","129","_usernames","_usernames2","onToChange","onTitleChange","getTitleValidators","withFirstRow","./utils/usernames","130","_categorySelect","_categorySelect2","showOptions","categoryOptions","pin","onCategoryChange","find","onClose","onOpen","onPinGlobally","onPinLocally","onUnpin","onHide","onUnhide","columns","titleStyle","../category-select","./utils/options","131","completedAttachments","attachment","132","133","./container","134","135","CloseOptions","textClassName","HideOptions","PinOptions","columnClassName","136","usernames","normalisedNames","split","removedBlanks","removedDuplicates","pos","137","getTitleLengthMin","getTitleLengthMax","post_length_max","validatePostLengthMin","validatePostLengthMax","minLength","thread_title_length_min","limitValue","limit_value","show_value","thread_title_length_max","post_length_min","138","can_hide","Unhide","Hide","is_hidden","hidden_on","hidden_by_name","hidden_by","decision","isDeleted","../../../reducers/post","139","ICON","event_type","changed_title","pinned_globally","pinned_locally","unpinned","moved","merged","approved","opened","closed","unhid","hid","changed_owner","tookover","added_participant","owner_left","participant_left","removed_participant","140","_unreadLabel2","_waypoint2","_unreadLabel","_waypoint","../waypoint","./info","./message","./unread-label","141","Hidden","event_by","event_on","Poster","DATE_URL","Ip","can_see_users_ips","poster_ip","_controls2","_controls","./controls","142","ChangedTitle","msgstring","oldTitle","ITEM_SPAN","event_context","old_title","Moved","fromCategory","ITEM_LINK","from_category","Merged","mergedThread","merged_thread","ChangedOwner","newOwner","AddedParticipant","RemovedParticipant","MESSAGE","143","144","ListItem","is_event","_event2","_event","./event","./post/preview","145","AttachmentPreview","AttachmentThumbnail","AttachmentIcon","AttachmentDetails","146","can_see_hidden","Row","../../../../utils/batch","147","HIDDEN_BY_URL","HIDDEN_BY_SPAN","HIDDEN_ON","148","approve","is_unapproved","ops","previousState","unprotect","unhide","lastLikes","last_likes","concatedLikes","finalLikes","is_liked","unlike","../../../../reducers/post","../../../../services/ajax","../../../../services/snackbar","../../../../services/store","149","Unprotect","Split","Move","Approve","PostEdits","Permalink","moderation","_move","_move2","_postChangelog","_postChangelog2","_split","_split2","permaUrl","protocol","host","isHidden","isUnedited","can_approve","_React$Component4","_temp4","_ret4","_len4","_key4","can_move","_React$Component5","_temp5","_ret5","_len5","_key5","_React$Component6","_temp6","_this6","_ret6","_len6","_key6","_React$Component7","_temp7","_this7","_ret7","_len7","_key7","_React$Component8","_temp8","_this8","_ret8","_len8","_key8","_React$Component9","_ref9","_temp9","_this9","_ret9","_len9","_key9","can_unhide","_React$Component10","_ref10","_temp10","_this10","_ret10","_len10","_key10","../../../../services/modal","../../../post-changelog","./move","./split","150","151","onUrlChange","move","new_thread","../../../button","../../../form","../../../form-group","152","Loader","Modal","ModerationForm","PostingConfig","Form","isError","misago","categoryId","can_pin_threads","weight","can_hide_threads","can_close_threads","isHiddenChoices","isClosedChoices","isValid","apiResponse","isArray","ErrorsModal","getWeightChoices","renderWeightField","renderHiddenField","renderClosedField","../../../../utils/validators","../../../category-select","../../../modal-loader","../../../select","153","FlagHidden","FlagUnapproved","FlagProtected","154","can_reply","can_see_likes","can_like","getLikesMessage","hiddenLikes","otherUsers","lastUser","usernamesList","last_user","Reply","LikesCompact","Likes","Like","actions","_postLikes","_postLikes2","hasLikes","_Likes","../../post-likes","./controls/actions","155","UnreadLabel","UnreadCompact","PostedOn","PostedOnCompact","ProtectedLabel","postAuthor","hasAcl","PostEditsCompacts","_PostEdits","../../post-changelog","../../user-status","156","_flags","./flags","157","Select","Controls","_userStatus","_userPostcount","../../../user-status","./user-postcount","158","159","160","_userStatus2","StatusIcon","_userStatus4","_userPostcount2","_userStatus3","../controls","./user-status","161","_hasVisibleTitle2","_hasVisibleTitle","./has-visible-title","162","StatusLabel","163","164","../../../utils/random","165","_posts","isSelected","deselect","can_merge_posts","../../../reducers/posts","166","waypoint","handler","direction","boundingClientRect","getBoundingClientRect","offsetBottom","top","clientHeight","documentElement","read","thread_is_read","../../reducers/thread","167","ban","has","initWithPreloadedData","pop","initWithoutPreloadedData","profile","stop","user_message","staff_message","_title","keys","getUserMessage","getStaffMessage","getPanelBody","../panel-loader","168","isAuthenticated","169","SafeValue","rel","170","_fieldValue2","_fieldValue","./field-value","171","../../edit-details","172","_field2","_field","./field","173","_group2","_emptyMessage2","_emptyMessage","_group","./empty-message","./group","174","EditButton","onEdit","showEditButton","175","_groupsList","_groupsList2","_profileDetails","_profileDetails2","_profileDetails3","editing","newDetails","profileDetails","../../../data/profile-details","../../../reducers/profile-details","./groups-list","176","emptyMessage","header","_route2","_route","./route","177","Feed","_postFeed2","LoadMoreButton","loadMore","more","_postFeed","loadItems","page","../../post-feed","178","_profile","action","is_followed","followers","follow","getLabel","../../reducers/profile","179","_quickSearch","_quickSearch2","_usersList","_usersList2","loadUsers","search","pages","setSpecialProps","PRELOADED_DATA_KEY","TITLE","API_FILTER","apiUrl","getEmptyMessage","cols","getMoreButton","getListBody","../quick-search","../users-list","180","_followers","_followers2","_Followers","./followers","181","IsDisabledMessage","getColStyle","col","colStyle","_followButton","_followButton2","_messageButton","_messageButton2","_nav","_nav2","age","can_follow","can_moderate","canFollow","canModerate","isProfileOwner","canMessage","can_start_private_threads","colsWidth","headerClassName","is_active","getFollowButton","getModerationButton","getUserStatus","getUserRank","getUserTitle","getJoinedOn","getEmail","../user-status","./follow-button","./message-button","./moderation/nav","182","183","is_avatar_locked","avatar_lock_user_message","avatar_lock_staff_message","moderate_avatar","avatar_hash","getFormBody","getModalBody","184","moderate_username","185","countdown","with_content","getButtonLabel","getDeletedBody","getForm","../../../services/polls","186","_avatarControls","_avatarControls2","_changeUsername","_changeUsername2","_deleteAccount","_deleteAccount2","showAvatarDialog","showRenameDialog","showDeleteDialog","can_moderate_avatar","can_rename","getAvatarButton","getRenameButton","getDeleteButton","./avatar-controls","./change-username","./delete-account","187","188","COMPONENTS","_banDetails","_banDetails2","_details","_details2","_feed","_follows","_follows2","_usernameHistory2","toggleModeration","follows","details","ban-details","./ban-details","./details","./feed","./follows","./username-history","189","loadChanges","../../reducers/username-history","../username-history/root","190","191","_register","_register2","_captcha","_captcha2","showRegisterForm","account_activation","criteria","../services/captcha","./register.js","192","RegisterComplete","RegisterForm","_passwordStrength","_passwordStrength2","_auth2","_bannedPage","_bannedPage2","_this$props$criteria","passwordMinLength","min_length","captcha","max_length","validator","__all__","aria-describedby","form","getLegalFootNote","activation","getLead","getSubscript","completeRegistration","signIn","../services/auth","../utils/banned-page","./password-strength","193","LinkSent","RequestLinkForm","reset","../index","194","AccountInactivePage","RequestResetForm","_reactDom","_reactDom2","showInactivePage","getActivateButton","react-dom","195","PasswordChangedPage","ResetPasswordForm","_signIn","_signIn2","showSignIn","softSignOut","./sign-in.js","196","_search","onQueryChange","providers","../../reducers/posts","../../reducers/search","197","components","_threads","_threads2","_users2","./threads","./users","198","SearchTime","time","p","_sidenav2","_sidenav","./sidenav","199","Badge","200","Blankslate","_page2","route","_page","../page","201","LoadMore","updateProvider","../../../reducers/search","202","../../users-list","203","change","getChoice","204","showActivation","val","getCsrfToken","getActivationButton","205","snackbar","Snackbar","TYPES_CLASSES","warning","snackbarClass","getSnackbarClass","206","Breadcrumb","GoBack","lastItem","207","Moderation","isSingle","ModerationControls","_breadcrumbs","_breadcrumbs2","isEditing","showModeration","isModerationVisible","../../posting/utils/validators","../moderation/thread","./breadcrumbs","208","Weight","Unapproved","has_unapproved_posts","IsHidden","IsClosed","Replies","replies","legend","LastReply","LAST_POSTER_URL","LAST_POSTER_SPAN","LAST_REPLY","209","deselectAll","ids","rollback","_errorsList2","merge","_errorsList","../../../../reducers/posts","./errors-list","210","Merge","can_merge","211","PostErrors","heading","212","visible","can_unprotect","213","214","215","_merge","_merge2","successMessage","pinGlobally","pinLocally","unpin","can_pin_globally","can_pin","can_close","getPinGloballyButton","getPinLocallyButton","getUnpinButton","getMoveButton","getMergeButton","getApproveButton","getOpenButton","getCloseButton","getUnhideButton","getHideButton","../../../../reducers/thread","./merge","216","_isVisible","_isVisible2","./is-visible","217","218","_mergePolls","_mergePolls2","handleSuccessUnmounted","other_thread","../../../merge-polls","219","ModalLoading","ModalMessage","post_set","220","Pager","FirstPage","PreviousPage","NextPage","LastPage","first","previousUrl","nextUrl","last","More","221","222","basePath","pk","223","_participants2","_postsList","_postsList2","_toolbarTop","_toolbarTop2","_toolbarBottom","_toolbarBottom2","_participants3","setPageTitle","openReplyForm","shouldFetchData","fetchData","startPollingApi","stopPollingApi","params","unload","delayed","../../reducers/participants","../../reducers/poll","../participants","../poll","../posts-list","./toolbar-bottom","./toolbar-top","224","subscription","Dropdown","dropdownClassName","Disable","Enable","Email","oldState","finalState","225","Options","_posts2","Subscription","xsClass","_subscription2","btnClassName","_replyButton2","Spacer","_paginator","_replyButton","_subscription","./moderation/posts","./paginator","./reply-button","./subscription","226","GotoMenu","is_anonymous","GotoLast","GotoNew","GotoUnapproved","CompactOptions","is_new","new_post","unapproved_post","StartPollCompact","GotoNewCompact","GotoUnapprovedCompact","GotoLastCompact","SubscriptionMenu","StartPoll","hiddenSpecialOption","can_start_poll","_StartPoll","227","diffSize","applyDiff","_ready2","activeCategory","list","busyThreads","_ready","./list/empty","./list/preview","./list/ready","228","229","_diffMessage","_diffMessage2","getDiffMessage","./diff-message","230","../thread/preview","231","../thread/ready","232","HiddenLabel","ClosedLabel","PollLabel","RepliesLabel","forceFullText","compactClassName","fullClassName","LastReplyLabel","datetime","LastPoster","posterName","statusFlags","has_poll","allFlagsVisible","OptionsXs","../options","233","234","TopDetails","BottomDetails","_bottom","_bottom2","_top","_top2","./bottom","./top","235","NewLabel","isRead","PinnedLabel","UnapprovedLabel","236","Timestamp","_userUrl2","_userUrl","./user-url","237","_full2","_compact2","Checkbox","_compact","_full","_selection","toggleSelection","../../../reducers/selection","./subscription/compact","./subscription/full","238","239","flavor","styles","starter_name","starter","_lastAction2","_lastAction","./last-action","240","_SubscriptionFull","./full","241","_props$thread","fullwidth","242","243","STATE_UPDATES","unsubscribe","notify","setSubscription","../../../../reducers/threads","244","245","Subcategory","listPath","getUrl","246","compareLastPostAge","b","compareGlobalWeight","compareWeight","247","_pageLead","_pageLead2","pageLead","categoriesMap","selectAllThreads","selectNoneThreads","addThreads","freezeThread","deleteThread","updateThread","getDisableToolbar","getCategoryDescription","getToolbar","../page-lead","248","ParentCategory","startThread","hasGoBackButton","getGoBackButton","getStartThreadButton","lists","./nav","249","special_role","250","_countdown","threadsMap","failedThreads","../../../utils/countdown","251","ThreadErrors","252","getFormdata","none","filterThreads","categoryChoices","_acl","can_start_threads","renderForm","renderCantMergeMessage","../../../reducers/threads","../../category-select","../../merge-polls","../../select","253","storeState","getState","leftThreads","acls","renderCantMoveMessage","254","selectAll","selectNone","255","256","getSelect","getLists","longName","can_see_unapproved_content_lists","routes","257","_compare","_threadsList","_threadsList2","_listEmpty","_listEmpty2","_sets","sets","loadThreads","getCategory","pollResponse","diffThreads","getSorting","getModerationActions","currentState","toggle","isMounted","getPageTitle","forum_index_title","forum_name","threadsCount","../../reducers/selection","../../reducers/threads","../../utils/sets","../threads-list","./compare","./list-empty","258","_categoryPicker","_categoryPicker2","_selection2","allow","showModerationOptions","getSelectedThreads","getCategoryPicker","getSelectionButton","./category-picker","./moderation/controls","./moderation/selection","259","isThreadChanged","current","fromDb","currentMap","260","CompactGuestNav","GuestNav","GuestMenu","_navbarSearch","_navbarSearch2","_registerButton","_registerButton2","_mobileNavbarDropdown","_mobileNavbarDropdown2","showSignInModal","_GuestMenu","showGuestMenu","../../services/mobile-navbar-dropdown","../navbar-search","../register-button","../sign-in.js","261","CompactUserMenu","UserMenu","_guestNav","_userNav","UserNav","CompactUserNav","./guest-nav","./user-nav","262","PrivateThreadsBadge","unread_private_threads","UserPrivateThreadsLink","can_use_private_threads","selectUserMenu","following","changeAvatar","logout","showConnected","showUserMenu","../change-avatar/root","263","getStatusClassName","is_banned","is_online_hidden","is_offline_hidden","is_online","is_offline","getStatusDescription","banned_until","ban_expires","last_click","getClass","getHelp","264","hiddenOnMobile","265","changed_by","changed_by_username","renderUserAvatar","renderUsername","old_username","new_username","changed_on","266","267","_changePreview","_changePreview2","./change-preview","268","_change","_change2","./change","269","_listReady","_listReady2","_listPreview","_listPreview2","./list-preview","./list-ready","270","showStatus","271","Status","JoinDate","getStatClassName","Followers","stat","272","dup","273","colClassName","274","275","Number","276","days","trackedPeriod","277","278","rankUrl","getRankName","counter","meta","279","_listItemPreview","_listItemPreview2","./list-item-preview","280","posters","getLeadMessage","281","tracked_period","282","listUrl","283","284","_pager2","_pager","./pager","285","_resetScroll2","_resetScroll","../../../utils/reset-scroll","286","_listLoading","_listLoading2","getRankDescription","getComponent","../../page-lead","./list-loading","287","./active-posters/root","./rank/root","288","289","290","../reducers/profile-details","291","global","Misago","_orderedList","_orderedList2","_initializers","_context","initializer","after","before","initOrder","orderedValues","fallback","./utils/ordered-list","292","init","addInitializer","293","setInterval","AUTH_SYNC_RATE","../reducers/auth","294","_localStorage2","_localStorage","../services/local-storage","295","_include2","_include","../services/include","296","_mountComponent2","_authMessage","_authMessage2","_mountComponent","../../components/auth-message","../../utils/mount-component","297","../../utils/banned-page","298","_categories","_categories2","../../components/categories","299","_routedComponent2","root","_routedComponent","../../components/options/root","../../utils/routed-component","300","../../components/profile/root","301","_requestActivationLink2","_requestActivationLink","../../components/request-activation-link","302","_requestPasswordReset2","_requestPasswordReset","../../components/request-password-reset","303","_resetPasswordForm2","_resetPasswordForm","../../components/reset-password-form","304","_search2","../../components/search","305","../../components/snackbar","306","../../components/thread/root","307","getListOptions","currentLink","PRIVATE_THREADS_LIST","../../components/threads/root","308","../../components/user-menu/root","309","../../components/users/root","310","311","312","element","../services/mobile-navbar-dropdown","313","314","locale","attr","315","../services/page-title","316","../services/polls","317","../services/posting","318","addReducer","isAnonymous","initialState","319","320","321","322","../../reducers/profile-details","323","324","_profile2","325","326","327","../../reducers/snackbar","328","329","330","_tick2","_tick","../../reducers/tick","331","332","333","334","335","doTick","TICK_PERIOD","../reducers/tick","336","337","PATCH_USER","SIGN_IN","signOut","soft","SIGN_OUT","UPDATE_AVATAR","userId","_newState","UPDATE_USERNAME","_newState2","338","REPLACE_PARTICIPANTS","339","add","BUSY_POLL","RELEASE_POLL","hydrated","REPLACE_POLL","UPDATE_POLL","REMOVE_POLL","340","updated_on","hydrateAttachment","hydrateUser","PATCH_POST","341","SELECT_POST","DESELECT_POST","DESELECT_POSTS","LOAD_POSTS","APPEND_POSTS","UNLOAD_POSTS","UPDATE_POSTS","selectedPosts","deseletedPosts","deseletedAllPosts","resultsIds","reducedPosts","342","LOAD_DETAILS","343","HYDRATE_PROFILE","PATCH_PROFILE","hydrateStatus","344","REPLACE_SEARCH","UPDATE_SEARCH","UPDATE_SEARCH_PROVIDER","345","itemsIds","SELECT_ALL","items","SELECT_NONE","itemId","SELECT_ITEM","../utils/sets","346","showSnackbar","SHOW_SNACKBAR","messageType","hideSnackbar","HIDE_SNACKBAR","347","started_on","BUSY_THREAD","RELEASE_THREAD","REPLACE_THREAD","UPDATE_THREAD","UPDATE_THREAD_ACL","348","sorting","APPEND_THREADS","DELETE_THREAD","FILTER_THREADS","HYDRATE_THREADS","PATCH_THREAD","sort","SORT_THREADS","getThreadModerationOptions","thread_acl","MODERATION_PERMISSIONS","perm","hydrateThread","mergedState","_concatUnique2","itemCategory","lft","rght","patchedState","_concatUnique","../utils/concat-unique","349","TICK","350","changedBy","ADD_NAME_CHANGE","APPEND_HISTORY","HYDRATE_HISTORY","hydrateNamechange","namechange","unshift","floor","now","351","APPEND_USERS","HYDRATE_USERS","352","Ajax","_cookieName","_csrfToken","_locks","cookieName","cookie","cookieRegex","RegExp","match","resolve","reject","xhr","headers","X-CSRFToken","JSON","stringify","contentType","dataType","jqXHR","responseJSON","statusText","ajax","lock","param","waiter","wait","request","processData","XMLHttpRequest","evt","lengthComputable","total","353","Auth","local","modal","_local","syncSession","watchState","watch","354","Captcha","ReCaptcha","ReCaptchaComponent","QACaptcha","NoCaptcha","BaseCaptcha","include","_BaseCaptcha","_BaseCaptcha2","kwargs","grecaptcha","sitekey","siteKey","binding","_BaseCaptcha3","recaptcha_site_key","captcha_type","../components/form-group","355","Include","staticUrl","_staticUrl","_included","script","remote","cache","356","storage","localStorage","LocalStorage","prefix","_prefix","_watchers","newValueJson","parse","watcher","oldValue","setItem","itemString","getItem","357","MobileNavbarDropdown","_element","_component","addClass","removeClass","../utils/mount-component","358","unmountComponentAtNode","359","parseYoutubeUrl","cleanedUrl","cleanUrl","video","getVideoIdFromUrl","timebit","bits","parseInt","ytRegExp","OneBox","domnode","highlightCode","embedYoutubePlayers","_youtube","codeblocks","querySelectorAll","hljs","highlightBlock","anchors","onlyChild","childNodes","youtubeMovie","swapYoutubePlayer","youtube","player","replaceWith","wrap","360","PageTitle","indexTitle","forumName","_indexTitle","_forumName","finalTitle","pageLabel","361","Polls","poolServer","_stopped","timeout","pollId","362","Posting","_isOpen","_isClosing","_placeholder","_mode","_realOpen","changeForm","animate","scrollTop","../components/poll","../components/posting","363","HIDE_ANIMATION_LENGTH","MESSAGE_SHOW_LENGTH","_timeout","alert","../reducers/snackbar","364","StoreWrapper","_redux","_reducers","_initialState","reducer","createStore","combineReducers","redux","365","Zxcvbn","_isLoaded","zxcvbn","_loadedPromise","_loadingPromise","tries","366","changeState","Provider","getStore","RedrawedBannedPage","history","pushState","../components/banned-page","367","rowWidth","padding","368","369","_callback","_count","370","m","&","<",">","\"","'","371","roundSize","toFixed","bytes","372","str","URL_PATTERN","test","373","rootElementId","connected","rootElement","finalComponent","374","OrderedList","isOrdered","_items","order","values","values_only","_order","unordered","insertItem","insertAt","ordering","ordered","splice","iterations","375","int","min","max","array","376","scrollTo","377","childRoutes","onEnter","replaceState","Router","browserHistory","378","379","string","subString","step","380","EMAIL","returnMessage","lengthMin","lengthMax","USERNAME"],"mappings":"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","file":"misago.js","sourcesContent":["(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o= size) {\n avatar = av;\n }\n });\n return avatar;\n}\n\n},{\"..\":291,\"react\":\"react\"}],4:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getReasonMessage',\n value: function getReasonMessage() {\n /* jshint ignore:start */\n if (this.props.message.html) {\n return _react2.default.createElement('div', { className: 'lead', dangerouslySetInnerHTML: {\n __html: this.props.message.html\n } });\n } else {\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.props.message.plain\n );\n }\n /* jshint ignore:end */\n }\n }, {\n key: 'getExpirationMessage',\n value: function getExpirationMessage() {\n if (this.props.expires) {\n if (this.props.expires.isAfter((0, _moment2.default)())) {\n /* jshint ignore:start */\n var title = interpolate(gettext(\"This ban expires on %(expires_on)s.\"), {\n 'expires_on': this.props.expires.format('LL, LT')\n }, true);\n\n var message = interpolate(gettext(\"This ban expires %(expires_on)s.\"), {\n 'expires_on': this.props.expires.fromNow()\n }, true);\n\n return _react2.default.createElement(\n 'abbr',\n { title: title },\n message\n );\n /* jshint ignore:end */\n } else {\n return gettext(\"This ban has expired.\");\n }\n } else {\n return gettext(\"This ban is permanent.\");\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'page page-error page-error-banned' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'message-panel' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'highlight_off'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n this.getReasonMessage(),\n _react2.default.createElement(\n 'p',\n { className: 'message-footnote' },\n this.getExpirationMessage()\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"moment\":\"moment\",\"react\":\"react\"}],5:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _loader = require('./loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar Button = function (_React$Component) {\n _inherits(Button, _React$Component);\n\n function Button() {\n _classCallCheck(this, Button);\n\n return _possibleConstructorReturn(this, (Button.__proto__ || Object.getPrototypeOf(Button)).apply(this, arguments));\n }\n\n _createClass(Button, [{\n key: 'render',\n value: function render() {\n var className = 'btn ' + this.props.className;\n var disabled = this.props.disabled;\n\n if (this.props.loading) {\n className += ' btn-loading';\n disabled = true;\n }\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'button',\n {\n className: className,\n disabled: disabled,\n onClick: this.props.onClick,\n type: this.props.onClick ? 'button' : 'submit'\n },\n this.props.children,\n this.props.loading ? _react2.default.createElement(_loader2.default, null) : null\n );\n /* jshint ignore:end */\n }\n }]);\n\n return Button;\n}(_react2.default.Component);\n\nexports.default = Button;\n\n\nButton.defaultProps = {\n className: \"btn-default\",\n\n type: \"submit\",\n\n loading: false,\n disabled: false,\n\n onClick: null\n};\n\n},{\"./loader\":54,\"react\":\"react\"}],6:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n \"div\",\n { className: \"categories-list\" },\n _react2.default.createElement(\n \"ul\",\n { className: \"list-group\" },\n _react2.default.createElement(\n \"li\",\n { className: \"list-group-item empty-message\" },\n _react2.default.createElement(\n \"p\",\n { className: \"lead\" },\n gettext(\"No categories exist or you don't have permission to see them.\")\n )\n )\n )\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],7:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var categories = _ref.categories;\n\n return _react2.default.createElement(\n 'div',\n { className: 'categories-list' },\n categories.map(function (category) {\n return _react2.default.createElement(_category2.default, {\n category: category,\n key: category.id\n });\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _category = require('./category');\n\nvar _category2 = _interopRequireDefault(_category);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./category\":8,\"react\":\"react\"}],8:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category;\n\n var className = 'list-group list-group-category';\n if (category.css_class) {\n className += ' list-group-category-has-flavor';\n className += ' list-group-category-' + category.css_class;\n }\n\n return _react2.default.createElement(\n 'ul',\n { className: className },\n _react2.default.createElement(_listItem2.default, {\n category: category,\n isFirst: true\n }),\n category.subcategories.map(function (category) {\n return _react2.default.createElement(_listItem2.default, {\n category: category,\n isFirst: false,\n key: category.id\n });\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _listItem = require('./list-item');\n\nvar _listItem2 = _interopRequireDefault(_listItem);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./list-item\":11,\"react\":\"react\"}],9:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category;\n\n if (!category.description) return null;\n\n return _react2.default.createElement(\"div\", {\n className: \"category-description\",\n dangerouslySetInnerHTML: {\n __html: category.description.html\n }\n });\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],10:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category;\n\n return _react2.default.createElement(\n 'div',\n {\n className: getClassName(category),\n title: getTitle(category)\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n getIcon(category)\n )\n );\n};\n\nexports.getClassName = getClassName;\nexports.getTitle = getTitle;\nexports.getIcon = getIcon;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction getClassName(category) {\n if (category.is_read) {\n return 'read-status item-read';\n }\n\n return 'read-status item-new';\n}\n\nfunction getTitle(category) {\n if (category.is_closed) {\n if (category.is_read) {\n return gettext(\"This category has no new posts. (closed)\");\n }\n\n return gettext(\"This category has new posts. (closed)\");\n }\n\n if (category.is_read) {\n return gettext(\"This category has no new posts.\");\n }\n\n return gettext(\"This category has new posts.\");\n}\n\nfunction getIcon(category) {\n if (category.is_closed) {\n if (category.is_read) {\n return 'lock_outline';\n }\n\n return 'lock';\n }\n\n if (category.is_read) {\n return 'chat_bubble_outline';\n }\n\n return 'chat_bubble';\n}\n\n},{\"react\":\"react\"}],11:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category,\n isFirst = _ref.isFirst;\n\n var className = 'list-group-item';\n\n if (category.description) {\n className += ' list-group-category-has-description';\n } else {\n className += ' list-group-category-no-description';\n }\n\n if (isFirst) {\n className += ' list-group-item-first';\n }\n if (category.css_class) {\n className += ' list-group-category-has-flavor';\n className += ' list-group-item-category-' + category.css_class;\n }\n\n return _react2.default.createElement(\n 'li',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(_main2.default, { category: category }),\n _react2.default.createElement(_stats2.default, { category: category }),\n _react2.default.createElement(_lastThread2.default, { category: category })\n ),\n _react2.default.createElement(_subcategories2.default, {\n category: category,\n isFirst: isFirst\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _main = require('./main');\n\nvar _main2 = _interopRequireDefault(_main);\n\nvar _lastThread = require('./last-thread');\n\nvar _lastThread2 = _interopRequireDefault(_lastThread);\n\nvar _stats = require('./stats');\n\nvar _stats2 = _interopRequireDefault(_stats);\n\nvar _subcategories = require('./subcategories');\n\nvar _subcategories2 = _interopRequireDefault(_subcategories);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./last-thread\":12,\"./main\":13,\"./stats\":14,\"./subcategories\":15,\"react\":\"react\"}],12:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-6 col-md-4 category-last-thread' },\n _react2.default.createElement(LastThread, { category: category }),\n _react2.default.createElement(Empty, { category: category }),\n _react2.default.createElement(Private, { category: category }),\n _react2.default.createElement(Protected, { category: category })\n );\n};\n\nexports.LastThread = LastThread;\nexports.LastPosterAvatar = LastPosterAvatar;\nexports.LastPosterName = LastPosterName;\nexports.Empty = Empty;\nexports.Private = Private;\nexports.Protected = Protected;\nexports.Message = Message;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction LastThread(_ref2) {\n var category = _ref2.category;\n\n if (!category.acl.can_browse) return null;\n if (!category.acl.can_see_all_threads) return null;\n if (!category.last_thread_title) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left hidden-xs' },\n _react2.default.createElement(LastPosterAvatar, { category: category })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'div',\n { className: 'media-heading' },\n _react2.default.createElement(\n 'a',\n {\n className: 'item-title thread-title',\n href: category.url.last_thread_new,\n title: category.last_thread_title\n },\n category.last_thread_title\n )\n ),\n _react2.default.createElement(\n 'ul',\n { className: 'list-inline' },\n _react2.default.createElement(\n 'li',\n { className: 'category-last-thread-poster' },\n _react2.default.createElement(LastPosterName, { category: category })\n ),\n _react2.default.createElement(\n 'li',\n { className: 'divider' },\n '\\u2014'\n ),\n _react2.default.createElement(\n 'li',\n { className: 'category-last-thread-date' },\n _react2.default.createElement(\n 'a',\n { href: category.url.last_post },\n category.last_post_on.fromNow()\n )\n )\n )\n )\n );\n} // jshint ignore:start\nfunction LastPosterAvatar(_ref3) {\n var category = _ref3.category;\n\n if (category.last_poster) {\n return _react2.default.createElement(\n 'a',\n {\n className: 'last-poster-avatar',\n href: category.last_poster.url,\n title: category.last_poster_name\n },\n _react2.default.createElement(_avatar2.default, {\n className: 'media-object',\n size: 40,\n user: category.last_poster\n })\n );\n }\n\n return _react2.default.createElement(\n 'span',\n {\n className: 'last-poster-avatar',\n title: category.last_poster_name\n },\n _react2.default.createElement(_avatar2.default, {\n className: 'media-object',\n size: 40\n })\n );\n}\n\nfunction LastPosterName(_ref4) {\n var category = _ref4.category;\n\n if (category.last_poster) {\n return _react2.default.createElement(\n 'a',\n {\n className: 'item-title',\n href: category.last_poster.url\n },\n category.last_poster_name\n );\n }\n\n return _react2.default.createElement(\n 'span',\n { className: 'item-title' },\n category.last_poster_name\n );\n}\n\nfunction Empty(_ref5) {\n var category = _ref5.category;\n\n if (!category.acl.can_browse) return null;\n if (!category.acl.can_see_all_threads) return null;\n if (category.last_thread_title) return null;\n\n return _react2.default.createElement(Message, {\n message: gettext(\"This category is empty. No threads were posted within it so far.\")\n });\n}\n\nfunction Private(_ref6) {\n var category = _ref6.category;\n\n if (!category.acl.can_browse) return null;\n if (category.acl.can_see_all_threads) return null;\n\n return _react2.default.createElement(Message, {\n message: gettext(\"This category is private. You can see only your own threads within it.\")\n });\n}\n\nfunction Protected(_ref7) {\n var category = _ref7.category;\n\n if (category.acl.can_browse) return null;\n\n return _react2.default.createElement(Message, {\n message: gettext(\"This category is protected. You can't browse it's contents.\")\n });\n}\n\nfunction Message(_ref8) {\n var message = _ref8.message;\n\n return _react2.default.createElement(\n 'div',\n { className: 'media category-thread-message' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'p',\n null,\n message\n )\n )\n );\n}\n\n},{\"../../../avatar\":3,\"react\":\"react\"}],13:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-6 col-md-6 category-main' },\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(_icon2.default, { category: category })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'h4',\n { className: 'media-heading' },\n _react2.default.createElement(\n 'a',\n { href: category.url.index },\n category.name\n )\n ),\n _react2.default.createElement(_description2.default, { category: category })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _description = require('./description');\n\nvar _description2 = _interopRequireDefault(_description);\n\nvar _icon = require('./icon');\n\nvar _icon2 = _interopRequireDefault(_icon);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./description\":9,\"./icon\":10,\"react\":\"react\"}],14:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-md-2 hidden-xs hidden-sm' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled category-stats' },\n _react2.default.createElement(Threads, { threads: category.threads }),\n _react2.default.createElement(Posts, { posts: category.posts })\n )\n );\n};\n\nexports.Threads = Threads;\nexports.Posts = Posts;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction Threads(_ref2) {\n var threads = _ref2.threads;\n\n var message = ngettext(\"%(threads)s thread\", \"%(threads)s threads\", threads);\n\n return _react2.default.createElement(\n 'li',\n { className: 'category-stat-threads' },\n interpolate(message, {\n 'threads': threads\n }, true)\n );\n} // jshint ignore:start\nfunction Posts(_ref3) {\n var posts = _ref3.posts;\n\n var message = ngettext(\"%(posts)s post\", \"%(posts)s posts\", posts);\n\n return _react2.default.createElement(\n 'li',\n { className: 'category-stat-posts' },\n interpolate(message, {\n 'posts': posts\n }, true)\n );\n}\n\n},{\"../../../avatar\":3,\"react\":\"react\"}],15:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category,\n isFirst = _ref.isFirst;\n\n if (isFirst) return null;\n if (category.subcategories.length === 0) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'row subcategories-list' },\n category.subcategories.map(function (category) {\n return _react2.default.createElement(_listItem2.default, {\n category: category,\n key: category.id\n });\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _listItem = require('./list-item');\n\nvar _listItem2 = _interopRequireDefault(_listItem);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./list-item\":16,\"react\":\"react\"}],16:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category;\n\n var className = 'btn btn-default btn-block btn-sm btn-subcategory';\n if (!category.is_read) {\n className += ' btn-subcategory-new';\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-4 col-md-3' },\n _react2.default.createElement(\n 'a',\n {\n className: className,\n href: category.url.index\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n getIcon(category)\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-text' },\n category.name\n )\n )\n );\n};\n\nexports.getIcon = getIcon;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction getIcon(category) {\n if (category.is_closed) {\n if (category.is_read) {\n return 'lock_outline';\n }\n\n return 'lock';\n }\n\n if (category.is_read) {\n return 'chat_bubble_outline';\n }\n\n return 'chat_bubble';\n}\n\n},{\"react\":\"react\"}],17:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.select = select;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _blankslate = require('./blankslate');\n\nvar _blankslate2 = _interopRequireDefault(_blankslate);\n\nvar _categoriesList = require('./categories-list');\n\nvar _categoriesList2 = _interopRequireDefault(_categoriesList);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _polls = require('../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar hydrate = function hydrate(category) {\n return Object.assign({}, category, {\n last_post_on: category.last_post_on ? (0, _moment2.default)(category.last_post_on) : null,\n subcategories: category.subcategories.map(hydrate)\n });\n};\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.update = function (data) {\n _this.setState({\n categories: data.map(hydrate)\n });\n };\n\n _this.state = {\n categories: _index2.default.get('CATEGORIES').map(hydrate)\n };\n\n _this.startPolling(_index2.default.get('CATEGORIES_API'));\n return _this;\n }\n\n _createClass(_class, [{\n key: 'startPolling',\n value: function startPolling(api) {\n _polls2.default.start({\n poll: 'categories',\n url: api,\n frequency: 180 * 1000,\n update: this.update\n });\n }\n }, {\n key: 'render',\n value: function render() {\n var categories = this.state.categories;\n\n\n if (categories.length === 0) {\n return _react2.default.createElement(_blankslate2.default, null);\n }\n\n return _react2.default.createElement(_categoriesList2.default, { categories: categories });\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction select(store) {\n return {\n 'tick': store.tick.tick\n };\n}\n\n},{\"../../index\":291,\"../../services/polls\":361,\"./blankslate\":6,\"./categories-list\":7,\"moment\":\"moment\",\"react\":\"react\"}],18:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'select',\n {\n className: props.className || 'form-control',\n disabled: props.disabled || false,\n id: props.id || null,\n onChange: props.onChange,\n value: props.value\n },\n props.choices.map(function (item) {\n return _react2.default.createElement(\n 'option',\n {\n disabled: item.disabled || false,\n key: item.value,\n value: item.value\n },\n '- - '.repeat(item.level) + item.label\n );\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],19:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.cropAvatar = function () {\n if (_this.state.isLoading) {\n return false;\n }\n\n _this.setState({\n 'isLoading': true\n });\n\n var avatarType = _this.props.upload ? 'crop_tmp' : 'crop_src';\n var cropit = $('.crop-form');\n\n var deviceRatio = cropit.cropit('exportZoom');\n var cropitOffset = cropit.cropit('offset');\n\n _ajax2.default.post(_this.props.user.api.avatar, {\n avatar: avatarType,\n crop: {\n offset: {\n x: cropitOffset.x * deviceRatio,\n y: cropitOffset.y * deviceRatio\n },\n zoom: cropit.cropit('zoom') * deviceRatio\n }\n }).then(function (data) {\n _this.props.onComplete(data);\n _snackbar2.default.success(data.detail);\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n _this.setState({\n isLoading: false\n });\n } else {\n _this.props.showError(rejection);\n }\n });\n };\n\n _this.state = {\n isLoading: false,\n deviceRatio: 1\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'getAvatarSize',\n value: function getAvatarSize() {\n if (this.props.upload) {\n return this.props.options.crop_tmp.size;\n } else {\n return this.props.options.crop_src.size;\n }\n }\n }, {\n key: 'getImagePath',\n value: function getImagePath() {\n if (this.props.upload) {\n return this.props.dataUrl;\n } else {\n return this.props.options.crop_src.url;\n }\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n var cropit = $('.crop-form');\n var cropperWidth = this.getAvatarSize();\n\n var initialWidth = cropit.width();\n while (initialWidth < cropperWidth) {\n cropperWidth = cropperWidth / 2;\n }\n\n var deviceRatio = this.getAvatarSize() / cropperWidth;\n\n cropit.width(cropperWidth);\n\n cropit.cropit({\n width: cropperWidth,\n height: cropperWidth,\n exportZoom: deviceRatio,\n imageState: {\n src: this.getImagePath()\n },\n onImageLoaded: function onImageLoaded() {\n if (_this2.props.upload) {\n // center uploaded image\n var zoomLevel = cropit.cropit('zoom');\n var imageSize = cropit.cropit('imageSize');\n\n // is it wider than taller?\n if (imageSize.width > imageSize.height) {\n var displayedWidth = imageSize.width * zoomLevel;\n var offsetX = (displayedWidth - _this2.getAvatarSize()) / -2;\n\n cropit.cropit('offset', {\n x: offsetX,\n y: 0\n });\n } else if (imageSize.width < imageSize.height) {\n var displayedHeight = imageSize.height * zoomLevel;\n var offsetY = (displayedHeight - _this2.getAvatarSize()) / -2;\n\n cropit.cropit('offset', {\n x: 0,\n y: offsetY\n });\n } else {\n cropit.cropit('offset', {\n x: 0,\n y: 0\n });\n }\n } else {\n // use preserved crop\n var crop = _this2.props.options.crop_src.crop;\n\n if (crop) {\n cropit.cropit('zoom', crop.zoom);\n cropit.cropit('offset', {\n x: crop.x,\n y: crop.y\n });\n }\n }\n }\n });\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n $('.crop-form').cropit('disable');\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-avatar-crop' },\n _react2.default.createElement(\n 'div',\n { className: 'crop-form' },\n _react2.default.createElement('div', { className: 'cropit-preview' }),\n _react2.default.createElement('input', {\n type: 'range',\n className: 'cropit-image-zoom-input'\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-6 col-md-offset-3' },\n _react2.default.createElement(\n _button2.default,\n {\n onClick: this.cropAvatar,\n loading: this.state.isLoading,\n className: 'btn-primary btn-block'\n },\n this.props.upload ? gettext(\"Set avatar\") : gettext(\"Crop image\")\n ),\n _react2.default.createElement(\n _button2.default,\n {\n onClick: this.props.showIndex,\n disabled: this.state.isLoading,\n className: 'btn-default btn-block'\n },\n gettext(\"Cancel\")\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../avatar\":3,\"../button\":5,\"react\":\"react\"}],20:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Gallery = exports.GalleryItem = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _batch = require('../../utils/batch');\n\nvar _batch2 = _interopRequireDefault(_batch);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar GalleryItem = exports.GalleryItem = function (_React$Component) {\n _inherits(GalleryItem, _React$Component);\n\n function GalleryItem() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, GalleryItem);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = GalleryItem.__proto__ || Object.getPrototypeOf(GalleryItem)).call.apply(_ref, [this].concat(args))), _this), _this.select = function () {\n _this.props.select(_this.props.id);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n /* jshint ignore:start */\n\n\n _createClass(GalleryItem, [{\n key: 'getClassName',\n\n /* jshint ignore:end */\n\n value: function getClassName() {\n if (this.props.selection === this.props.id) {\n if (this.props.disabled) {\n return 'btn btn-avatar btn-disabled avatar-selected';\n } else {\n return 'btn btn-avatar avatar-selected';\n }\n } else if (this.props.disabled) {\n return 'btn btn-avatar btn-disabled';\n } else {\n return 'btn btn-avatar';\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: this.getClassName(),\n disabled: this.props.disabled,\n onClick: this.select\n },\n _react2.default.createElement('img', { src: this.props.url })\n );\n /* jshint ignore:end */\n }\n }]);\n\n return GalleryItem;\n}(_react2.default.Component);\n\nvar Gallery = exports.Gallery = function (_React$Component2) {\n _inherits(Gallery, _React$Component2);\n\n function Gallery() {\n _classCallCheck(this, Gallery);\n\n return _possibleConstructorReturn(this, (Gallery.__proto__ || Object.getPrototypeOf(Gallery)).apply(this, arguments));\n }\n\n _createClass(Gallery, [{\n key: 'render',\n value: function render() {\n var _this3 = this;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'avatars-gallery' },\n _react2.default.createElement(\n 'h3',\n null,\n this.props.name\n ),\n _react2.default.createElement(\n 'div',\n { className: 'avatars-gallery-images' },\n (0, _batch2.default)(this.props.images, 4, null).map(function (row, i) {\n return _react2.default.createElement(\n 'div',\n { className: 'row', key: i },\n row.map(function (item, i) {\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-3', key: i },\n item ? _react2.default.createElement(GalleryItem, _extends({\n disabled: _this3.props.disabled,\n select: _this3.props.select,\n selection: _this3.props.selection\n }, item)) : _react2.default.createElement('div', { className: 'blank-avatar' })\n );\n })\n );\n })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return Gallery;\n}(_react2.default.Component);\n\nvar _class = function (_React$Component3) {\n _inherits(_class, _React$Component3);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this4 = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this4.select = function (image) {\n _this4.setState({\n selection: image\n });\n };\n\n _this4.save = function () {\n if (_this4.state.isLoading) {\n return false;\n }\n\n _this4.setState({\n 'isLoading': true\n });\n\n _ajax2.default.post(_this4.props.user.api.avatar, {\n avatar: 'galleries',\n image: _this4.state.selection\n }).then(function (response) {\n _this4.setState({\n 'isLoading': false\n });\n\n _snackbar2.default.success(response.detail);\n _this4.props.onComplete(response);\n _this4.props.showIndex();\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n _this4.setState({\n 'isLoading': false\n });\n } else {\n _this4.props.showError(rejection);\n }\n });\n };\n\n _this4.state = {\n 'selection': null,\n 'isLoading': false\n };\n return _this4;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n var _this5 = this;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-avatar-gallery' },\n this.props.options.galleries.map(function (item, i) {\n return _react2.default.createElement(Gallery, { name: item.name,\n images: item.images,\n selection: _this5.state.selection,\n disabled: _this5.state.isLoading,\n select: _this5.select,\n key: i });\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-6 col-md-offset-3' },\n _react2.default.createElement(\n _button2.default,\n { onClick: this.save,\n loading: this.state.isLoading,\n disabled: !this.state.selection,\n className: 'btn-primary btn-block' },\n this.state.selection ? gettext(\"Save choice\") : gettext(\"Select avatar\")\n ),\n _react2.default.createElement(\n _button2.default,\n { onClick: this.props.showIndex,\n disabled: this.state.isLoading,\n className: 'btn-default btn-block' },\n gettext(\"Cancel\")\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../index\":291,\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../../utils/batch\":367,\"../avatar\":3,\"../button\":5,\"react\":\"react\"}],21:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _loader = require('../loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.setGravatar = function () {\n _this.callApi('gravatar');\n };\n\n _this.setGenerated = function () {\n _this.callApi('generated');\n };\n\n _this.state = {\n 'isLoading': false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'callApi',\n value: function callApi(avatarType) {\n var _this2 = this;\n\n if (this.state.isLoading) {\n return false;\n }\n\n this.setState({\n 'isLoading': true\n });\n\n _ajax2.default.post(this.props.user.api.avatar, {\n avatar: avatarType\n }).then(function (response) {\n _this2.setState({\n 'isLoading': false\n });\n\n _snackbar2.default.success(response.detail);\n _this2.props.onComplete(response);\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n _this2.setState({\n 'isLoading': false\n });\n } else {\n _this2.props.showError(rejection);\n }\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getGravatarButton',\n\n /* jshint ignore:end */\n\n value: function getGravatarButton() {\n if (this.props.options.gravatar) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n _button2.default,\n { onClick: this.setGravatar,\n disabled: this.state.isLoading,\n className: 'btn-default btn-block btn-avatar-gravatar' },\n gettext(\"Download my Gravatar\")\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getCropButton',\n value: function getCropButton() {\n if (!this.props.options.crop_src) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-block btn-avatar-crop',\n disabled: this.state.isLoading,\n onClick: this.props.showCrop\n },\n gettext(\"Re-crop uploaded image\")\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getUploadButton',\n value: function getUploadButton() {\n if (!this.props.options.upload) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-block btn-avatar-upload',\n disabled: this.state.isLoading,\n onClick: this.props.showUpload\n },\n gettext(\"Upload new image\")\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getGalleryButton',\n value: function getGalleryButton() {\n if (!this.props.options.galleries) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-block btn-avatar-gallery',\n disabled: this.state.isLoading,\n onClick: this.props.showGallery\n },\n gettext(\"Pick avatar from gallery\")\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getAvatarPreview',\n value: function getAvatarPreview() {\n /* jshint ignore:start */\n var userPeview = {\n id: this.props.user.id,\n avatars: this.props.options.avatars\n /* jshint ignore:end */\n\n };if (this.state.isLoading) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'avatar-preview preview-loading' },\n _react2.default.createElement(_avatar2.default, {\n size: '200',\n user: userPeview\n }),\n _react2.default.createElement(_loader2.default, null)\n );\n /* jshint ignore:end */\n }\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'avatar-preview' },\n _react2.default.createElement(_avatar2.default, {\n size: '200',\n user: userPeview\n })\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-avatar-index' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-5' },\n this.getAvatarPreview()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-md-7' },\n this.getGravatarButton(),\n _react2.default.createElement(\n _button2.default,\n { onClick: this.setGenerated,\n disabled: this.state.isLoading,\n className: 'btn-default btn-block btn-avatar-generate' },\n gettext(\"Generate my individual avatar\")\n ),\n this.getCropButton(),\n this.getUploadButton(),\n this.getGalleryButton()\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../avatar\":3,\"../button\":5,\"../loader\":54,\"react\":\"react\"}],22:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ChangeAvatarError = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.select = select;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _index = require('./index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _crop = require('./crop');\n\nvar _crop2 = _interopRequireDefault(_crop);\n\nvar _upload = require('./upload');\n\nvar _upload2 = _interopRequireDefault(_upload);\n\nvar _gallery = require('./gallery');\n\nvar _gallery2 = _interopRequireDefault(_gallery);\n\nvar _modalLoader = require('../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _users = require('../../reducers/users');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar ChangeAvatarError = exports.ChangeAvatarError = function (_React$Component) {\n _inherits(ChangeAvatarError, _React$Component);\n\n function ChangeAvatarError() {\n _classCallCheck(this, ChangeAvatarError);\n\n return _possibleConstructorReturn(this, (ChangeAvatarError.__proto__ || Object.getPrototypeOf(ChangeAvatarError)).apply(this, arguments));\n }\n\n _createClass(ChangeAvatarError, [{\n key: 'getErrorReason',\n value: function getErrorReason() {\n if (this.props.reason) {\n /* jshint ignore:start */\n return _react2.default.createElement('p', { dangerouslySetInnerHTML: { __html: this.props.reason } });\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'remove_circle_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.props.message\n ),\n this.getErrorReason(),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n gettext(\"Ok\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return ChangeAvatarError;\n}(_react2.default.Component);\n\nvar _class = function (_React$Component2) {\n _inherits(_class, _React$Component2);\n\n function _class() {\n var _ref;\n\n var _temp, _this2, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this2 = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this2), _this2.showError = function (error) {\n _this2.setState({\n error: error\n });\n }, _this2.showIndex = function () {\n _this2.setState({\n 'component': _index2.default\n });\n }, _this2.showUpload = function () {\n _this2.setState({\n 'component': _upload2.default\n });\n }, _this2.showCrop = function () {\n _this2.setState({\n 'component': _crop2.default\n });\n }, _this2.showGallery = function () {\n _this2.setState({\n 'component': _gallery2.default\n });\n }, _this2.completeFlow = function (options) {\n _store2.default.dispatch((0, _users.updateAvatar)(_this2.props.user, options.avatars));\n\n _this2.setState({\n 'component': _index2.default,\n options: options\n });\n }, _temp), _possibleConstructorReturn(_this2, _ret);\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this3 = this;\n\n _ajax2.default.get(this.props.user.api.avatar).then(function (options) {\n _this3.setState({\n 'component': _index2.default,\n 'options': options,\n 'error': null\n });\n }, function (rejection) {\n _this3.showError(rejection);\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getBody',\n\n /* jshint ignore:end */\n\n value: function getBody() {\n if (this.state) {\n if (this.state.error) {\n /* jshint ignore:start */\n return _react2.default.createElement(ChangeAvatarError, { message: this.state.error.detail,\n reason: this.state.error.reason });\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(this.state.component, { options: this.state.options,\n user: this.props.user,\n onComplete: this.completeFlow,\n showError: this.showError,\n showIndex: this.showIndex,\n showCrop: this.showCrop,\n showUpload: this.showUpload,\n showGallery: this.showGallery });\n /* jshint ignore:end */\n }\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_modalLoader2.default, null);\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.state && this.state.error) {\n return \"modal-dialog modal-message modal-change-avatar\";\n } else {\n return \"modal-dialog modal-change-avatar\";\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName(),\n role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Change your avatar\")\n )\n ),\n this.getBody()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction select(state) {\n return {\n 'user': state.auth.user\n };\n}\n\n},{\"../../reducers/users\":351,\"../../services/ajax\":352,\"../../services/store\":364,\"../modal-loader\":57,\"./crop\":19,\"./gallery\":20,\"./index\":21,\"./upload\":23,\"react\":\"react\"}],23:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _crop = require('./crop');\n\nvar _crop2 = _interopRequireDefault(_crop);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _fileSize = require('../../utils/file-size');\n\nvar _fileSize2 = _interopRequireDefault(_fileSize);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.pickFile = function () {\n document.getElementById('avatar-hidden-upload').click();\n };\n\n _this.uploadFile = function () {\n var image = document.getElementById('avatar-hidden-upload').files[0];\n if (!image) return;\n\n var validationError = _this.validateFile(image);\n if (validationError) {\n _snackbar2.default.error(validationError);\n return;\n }\n\n _this.setState({\n image: image,\n preview: URL.createObjectURL(image),\n progress: 0\n });\n\n var data = new FormData();\n data.append('avatar', 'upload');\n data.append('image', image);\n\n _ajax2.default.upload(_this.props.user.api.avatar, data, function (progress) {\n _this.setState({\n progress: progress\n });\n }).then(function (data) {\n _this.setState({\n options: data,\n uploaded: data.detail\n });\n\n _snackbar2.default.info(gettext(\"Your image has been uploaded and you may now crop it.\"));\n }, function (rejection) {\n if (rejection.status === 400 || rejection.status === 413) {\n _snackbar2.default.error(rejection.detail);\n _this.setState({\n isLoading: false,\n image: null,\n progress: 0\n });\n } else {\n _this.props.showError(rejection);\n }\n });\n };\n\n _this.state = {\n image: null,\n preview: null,\n progress: 0,\n uploaded: null,\n dataUrl: null\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'validateFile',\n value: function validateFile(image) {\n if (image.size > this.props.options.upload.limit) {\n return interpolate(gettext(\"Selected file is too big. (%(filesize)s)\"), {\n 'filesize': (0, _fileSize2.default)(image.size)\n }, true);\n }\n\n var invalidTypeMsg = gettext(\"Selected file type is not supported.\");\n if (this.props.options.upload.allowed_mime_types.indexOf(image.type) === -1) {\n return invalidTypeMsg;\n }\n\n var extensionFound = false;\n var loweredFilename = image.name.toLowerCase();\n this.props.options.upload.allowed_extensions.map(function (extension) {\n if (loweredFilename.substr(extension.length * -1) === extension) {\n extensionFound = true;\n }\n });\n\n if (!extensionFound) {\n return invalidTypeMsg;\n }\n\n return false;\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getUploadRequirements',\n\n /* jshint ignore:end */\n\n value: function getUploadRequirements(options) {\n var extensions = options.allowed_extensions.map(function (extension) {\n return extension.substr(1);\n });\n\n return interpolate(gettext(\"%(files)s files smaller than %(limit)s\"), {\n 'files': extensions.join(', '),\n 'limit': (0, _fileSize2.default)(options.limit)\n }, true);\n }\n }, {\n key: 'getUploadButton',\n value: function getUploadButton() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-avatar-upload' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-pick-file',\n onClick: this.pickFile\n },\n _react2.default.createElement(\n 'div',\n { className: 'material-icon' },\n 'input'\n ),\n gettext(\"Select file\")\n ),\n _react2.default.createElement(\n 'p',\n { className: 'text-muted' },\n this.getUploadRequirements(this.props.options.upload)\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getUploadProgressLabel',\n value: function getUploadProgressLabel() {\n return interpolate(gettext(\"%(progress)s % complete\"), {\n 'progress': this.state.progress\n }, true);\n }\n }, {\n key: 'getUploadProgress',\n value: function getUploadProgress() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-avatar-upload' },\n _react2.default.createElement(\n 'div',\n { className: 'upload-progress' },\n _react2.default.createElement('img', { src: this.state.preview }),\n _react2.default.createElement(\n 'div',\n { className: 'progress' },\n _react2.default.createElement(\n 'div',\n {\n className: 'progress-bar',\n role: 'progressbar',\n 'aria-valuenow': '{this.state.progress}',\n 'aria-valuemin': '0',\n 'aria-valuemax': '100',\n style: { width: this.state.progress + '%' }\n },\n _react2.default.createElement(\n 'span',\n { className: 'sr-only' },\n this.getUploadProgressLabel()\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'renderUpload',\n value: function renderUpload() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement('input', {\n type: 'file',\n id: 'avatar-hidden-upload',\n className: 'hidden-file-upload',\n onChange: this.uploadFile\n }),\n this.state.image ? this.getUploadProgress() : this.getUploadButton(),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-6 col-md-offset-3' },\n _react2.default.createElement(\n _button2.default,\n {\n onClick: this.props.showIndex,\n disabled: !!this.state.image,\n className: 'btn-default btn-block'\n },\n gettext(\"Cancel\")\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'renderCrop',\n value: function renderCrop() {\n /* jshint ignore:start */\n return _react2.default.createElement(_crop2.default, {\n options: this.state.options,\n user: this.props.user,\n upload: this.state.uploaded,\n dataUrl: this.state.preview,\n onComplete: this.props.onComplete,\n showError: this.props.showError,\n showIndex: this.props.showIndex\n });\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n if (this.state.uploaded) return this.renderCrop();\n\n return this.renderUpload();\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../../utils/file-size\":371,\"../button\":5,\"./crop\":19,\"react\":\"react\"}],24:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: \"getClassName\",\n value: function getClassName() {\n if (this.props.dropdown) {\n return \"btn btn-default btn-aligned btn-icon btn-dropdown-toggle open hidden-md hidden-lg\";\n } else {\n return \"btn btn-default btn-aligned btn-icon btn-dropdown-toggle hidden-md hidden-lg\";\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n \"button\",\n { className: this.getClassName(),\n type: \"button\",\n onClick: this.props.toggleNav,\n \"aria-haspopup\": \"true\",\n \"aria-expanded\": this.props.dropdown ? 'true' : 'false' },\n _react2.default.createElement(\n \"i\",\n { className: \"material-icon\" },\n \"menu\"\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],25:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var display = _ref.display;\n\n if (!display) return null;\n\n return _react2.default.createElement(_panelMessage2.default, {\n helpText: gettext(\"No profile details are editable at this time.\"),\n message: gettext(\"This option is currently unavailable.\")\n });\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _panelMessage = require('../panel-message');\n\nvar _panelMessage2 = _interopRequireDefault(_panelMessage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../panel-message\":87,\"react\":\"react\"}],26:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _select = require('../select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onChange = function (ev) {\n var _this$props = _this.props,\n field = _this$props.field,\n onChange = _this$props.onChange;\n\n onChange(field.fieldname, ev.target.value);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n var _props = this.props,\n disabled = _props.disabled,\n field = _props.field,\n value = _props.value;\n var input = field.input;\n\n\n if (input.type === 'select') {\n return _react2.default.createElement(_select2.default, {\n choices: input.choices,\n disabled: disabled,\n id: \"id_\" + field.fieldname,\n onChange: this.onChange,\n value: value\n });\n }\n\n if (input.type === 'textarea') {\n return _react2.default.createElement('textarea', {\n className: 'form-control',\n disabled: disabled,\n id: \"id_\" + field.fieldname,\n onChange: this.onChange,\n rows: '4',\n type: 'text',\n value: value\n });\n }\n\n if (input.type === 'text') {\n return _react2.default.createElement('input', {\n className: 'form-control',\n disabled: disabled,\n id: \"id_\" + field.fieldname,\n onChange: this.onChange,\n type: 'text',\n value: value\n });\n }\n\n return null;\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../select\":203,\"react\":\"react\"}],27:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var disabled = _ref.disabled,\n errors = _ref.errors,\n fields = _ref.fields,\n name = _ref.name,\n onChange = _ref.onChange,\n value = _ref.value;\n\n return _react2.default.createElement(\n 'fieldset',\n null,\n _react2.default.createElement(\n 'legend',\n null,\n name\n ),\n fields.map(function (field) {\n return _react2.default.createElement(\n _formGroup2.default,\n {\n 'for': \"id_\" + field.fieldname,\n helpText: field.help_text,\n key: field.fieldname,\n label: field.label,\n validation: errors[field.fieldname]\n },\n _react2.default.createElement(_fieldInput2.default, {\n disabled: disabled,\n field: field,\n onChange: onChange,\n value: value[field.fieldname]\n })\n );\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _fieldInput = require('./field-input');\n\nvar _fieldInput2 = _interopRequireDefault(_fieldInput);\n\nvar _formGroup = require('../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../form-group\":51,\"./field-input\":26,\"react\":\"react\"}],28:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.CancelButton = CancelButton;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _fieldset = require('./fieldset');\n\nvar _fieldset2 = _interopRequireDefault(_fieldset);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _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; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onChange = function (name, value) {\n _this.setState(_defineProperty({}, name, value));\n };\n\n _this.state = {\n isLoading: false,\n\n errors: {}\n };\n\n var groups = props.groups.length;\n for (var i = 0; i < groups; i++) {\n var group = props.groups[i];\n var fields = group.fields.length;\n for (var f = 0; f < fields; f++) {\n var fieldname = group.fields[f].fieldname;\n var initial = group.fields[f].initial;\n _this.state[fieldname] = initial;\n }\n }\n return _this;\n }\n\n _createClass(_class, [{\n key: 'send',\n value: function send() {\n var data = Object.assign({}, this.state, {\n errors: null,\n isLoading: null\n });\n\n return _ajax2.default.post(this.props.api, data);\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(data) {\n this.props.onSuccess(data);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n this.setState({ errors: rejection });\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n this.props.groups.map(function (group, i) {\n return _react2.default.createElement(_fieldset2.default, {\n disabled: _this2.state.isLoading,\n errors: _this2.state.errors,\n fields: group.fields,\n name: group.name,\n key: i,\n onChange: _this2.onChange,\n value: _this2.state\n });\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-footer text-right' },\n _react2.default.createElement(CancelButton, {\n disabled: this.state.isLoading,\n onCancel: this.props.onCancel\n }),\n ' ',\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Save changes\")\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\nfunction CancelButton(_ref) {\n var onCancel = _ref.onCancel,\n disabled = _ref.disabled;\n\n if (!onCancel) return null;\n\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n disabled: disabled,\n onClick: onCancel,\n type: 'button'\n },\n gettext(\"Cancel\")\n );\n}\n\n},{\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../button\":5,\"../form\":52,\"./fieldset\":27,\"react\":\"react\"}],29:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.FormDisplay = FormDisplay;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _blankslate = require('./blankslate');\n\nvar _blankslate2 = _interopRequireDefault(_blankslate);\n\nvar _loader = require('./loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n loading: true,\n groups: null\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(this.props.api).then(function (groups) {\n _this2.setState({\n loading: false,\n\n groups: groups\n });\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n if (_this2.props.cancel) {\n _this2.props.cancel();\n }\n });\n }\n }, {\n key: 'render',\n value: function render() {\n var _state = this.state,\n groups = _state.groups,\n loading = _state.loading;\n\n\n return _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Edit details\")\n )\n ),\n _react2.default.createElement(_loader2.default, { display: loading }),\n _react2.default.createElement(_blankslate2.default, { display: !loading && !groups.length }),\n _react2.default.createElement(FormDisplay, {\n api: this.props.api,\n display: !loading && groups.length,\n groups: groups,\n onCancel: this.props.onCancel,\n onSuccess: this.props.onSuccess\n })\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction FormDisplay(_ref) {\n var api = _ref.api,\n display = _ref.display,\n groups = _ref.groups,\n onCancel = _ref.onCancel,\n onSuccess = _ref.onSuccess;\n\n if (!display) return null;\n\n return _react2.default.createElement(_form2.default, {\n api: api,\n groups: groups,\n onCancel: onCancel,\n onSuccess: onSuccess\n });\n}\n\n},{\"../../services/ajax\":352,\"../../services/snackbar\":363,\"./blankslate\":25,\"./form\":28,\"./loader\":30,\"react\":\"react\"}],30:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var display = _ref.display;\n\n if (!display) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(_loader2.default, null)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _loader = require('../loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../loader\":54,\"react\":\"react\"}],31:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _this.props.replaceSelection(_this.props.execAction);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-icon ' + this.props.className,\n disabled: this.props.disabled,\n onClick: this.onClick,\n title: this.props.title,\n type: 'button'\n },\n this.props.children\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],32:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: insertCode,\n title: gettext(\"Insert code\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'functions'\n )\n );\n};\n\nexports.insertCode = insertCode;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nvar _isUrl = require('../../../utils/is-url');\n\nvar _isUrl2 = _interopRequireDefault(_isUrl);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction insertCode(selection, replace) {\n var syntax = $.trim(prompt(gettext(\"Enter name of syntax of your code (optional)\") + ':'));\n replace(\"\\n\\n```\" + syntax + '\\n' + selection + \"\\n```\\n\\n\");\n}\n\n},{\"../../../utils/is-url\":372,\"./action\":31,\"react\":\"react\"}],33:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: makeEmphasis,\n title: gettext(\"Emphase selection\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'format_italic'\n )\n );\n};\n\nexports.makeEmphasis = makeEmphasis;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction makeEmphasis(selection, replace) {\n if (selection.length) {\n replace('*' + selection + '*');\n }\n}\n\n},{\"./action\":31,\"react\":\"react\"}],34:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: insertHr,\n title: gettext(\"Insert horizontal ruler\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'remove'\n )\n );\n};\n\nexports.insertHr = insertHr;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction insertHr(selection, replace) {\n replace('\\n\\n- - - - -\\n\\n');\n}\n\n},{\"./action\":31,\"react\":\"react\"}],35:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: insertImage,\n title: gettext(\"Insert image\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'insert_photo'\n )\n );\n};\n\nexports.insertImage = insertImage;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nvar _isUrl = require('../../../utils/is-url');\n\nvar _isUrl2 = _interopRequireDefault(_isUrl);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction insertImage(selection, replace) {\n var url = '';\n var label = '';\n\n if (selection.length) {\n if ((0, _isUrl2.default)(selection)) {\n url = selection;\n } else {\n label = selection;\n }\n }\n\n url = $.trim(prompt(gettext(\"Enter link to image\") + ':', url));\n label = $.trim(prompt(gettext(\"Enter image label (optional)\") + ':', label));\n\n if (url.length) {\n if (label.length > 0) {\n replace('![' + label + '](' + url + ')');\n } else {\n replace('!(' + url + ')');\n }\n }\n}\n\n},{\"../../../utils/is-url\":372,\"./action\":31,\"react\":\"react\"}],36:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: insertLink,\n title: gettext(\"Insert link\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'insert_link'\n )\n );\n};\n\nexports.insertLink = insertLink;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nvar _isUrl = require('../../../utils/is-url');\n\nvar _isUrl2 = _interopRequireDefault(_isUrl);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction insertLink(selection, replace) {\n var url = '';\n var label = '';\n\n if (selection.length) {\n if ((0, _isUrl2.default)(selection)) {\n url = selection;\n } else {\n label = selection;\n }\n }\n\n url = $.trim(prompt(gettext(\"Enter link address\") + ':', url));\n label = $.trim(prompt(gettext(\"Enter link label (optional)\") + ':', label));\n\n if (url.length) {\n if (label.length > 0) {\n replace('[' + label + '](' + url + ')');\n } else {\n replace(url);\n }\n }\n}\n\n},{\"../../../utils/is-url\":372,\"./action\":31,\"react\":\"react\"}],37:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: insertQuote,\n title: gettext(\"Insert quote\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'format_quote'\n )\n );\n};\n\nexports.insertQuote = insertQuote;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nvar _isUrl = require('../../../utils/is-url');\n\nvar _isUrl2 = _interopRequireDefault(_isUrl);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction insertQuote(selection, replace) {\n var title = $.trim(prompt(gettext(\"Enter quote autor, prefix usernames with @\") + ':', title));\n\n if (title) {\n replace('\\n\\n[quote=\"' + title + '\"]\\n' + selection + '\\n[/quote]\\n\\n');\n } else {\n replace('\\n\\n[quote]\\n' + selection + '\\n[/quote]\\n\\n');\n }\n}\n\n},{\"../../../utils/is-url\":372,\"./action\":31,\"react\":\"react\"}],38:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: makeStriketrough,\n title: gettext(\"Striketrough selection\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'format_strikethrough'\n )\n );\n};\n\nexports.makeStriketrough = makeStriketrough;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction makeStriketrough(selection, replace) {\n if (selection.length) {\n replace('~~' + selection + '~~');\n }\n}\n\n},{\"./action\":31,\"react\":\"react\"}],39:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _action2.default,\n _extends({\n execAction: makeStrong,\n title: gettext(\"Bolder selection\")\n }, props),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'format_bold'\n )\n );\n};\n\nexports.makeStrong = makeStrong;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _action = require('./action');\n\nvar _action2 = _interopRequireDefault(_action);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction makeStrong(selection, replace) {\n if (selection.length) {\n replace('**' + selection + '**');\n }\n}\n\n},{\"./action\":31,\"react\":\"react\"}],40:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.Preview = Preview;\nexports.Image = Image;\nexports.Icon = Icon;\nexports.Filename = Filename;\nexports.Details = Details;\nexports.Actions = Actions;\nexports.Insert = Insert;\nexports.Remove = Remove;\nexports.Undo = Undo;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _ = require('../../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _escapeHtml = require('../../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nvar _fileSize = require('../../../../utils/file-size');\n\nvar _fileSize2 = _interopRequireDefault(_fileSize);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar DATE_ABBR = '%(relative)s';\nvar USER_SPAN = '%(user)s';\nvar USER_URL = '%(user)s';\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onInsert = function () {\n _this.props.replaceSelection(_this.insertAttachment);\n }, _this.insertAttachment = function (selection, replace) {\n var item = _this.props.item;\n\n if (item.is_image) {\n if (item.url.thumb) {\n replace('[![' + item.filename + '](' + item.url.thumb + ')](' + item.url.index + ')');\n } else {\n replace('[![' + item.filename + '](' + item.url.index + ')](' + item.url.index + ')');\n }\n } else {\n replace('[' + item.filename + '](' + item.url.index + ')');\n }\n }, _this.onRemove = function () {\n _this.updateItem({\n isRemoved: true\n });\n }, _this.onUndo = function () {\n _this.updateItem({\n isRemoved: false\n });\n }, _this.updateItem = function (newState) {\n var updatedAttachments = _this.props.attachments.map(function (item) {\n if (item.id === _this.props.item.id) {\n return Object.assign({}, item, newState);\n } else {\n return item;\n }\n });\n _this.props.onAttachmentsChange(updatedAttachments);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'li',\n { className: 'editor-attachment-complete' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-8 col-md-9' },\n _react2.default.createElement(Preview, this.props),\n _react2.default.createElement(\n 'div',\n { className: 'editor-attachment-details' },\n _react2.default.createElement(Filename, this.props),\n _react2.default.createElement(Details, this.props)\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-4 col-md-3 xs-margin-top-half' },\n _react2.default.createElement(Actions, _extends({\n onInsert: this.onInsert,\n onRemove: this.onRemove,\n onUndo: this.onUndo\n }, this.props))\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n;\n\nfunction Preview(props) {\n if (props.item.is_image) {\n return _react2.default.createElement(Image, props);\n } else {\n return _react2.default.createElement(Icon, props);\n }\n}\n\nfunction Image(props) {\n var thumbnailUrl = props.item.url.thumb || props.item.url.index;\n\n return _react2.default.createElement(\n 'div',\n { className: 'editor-attachment-image' },\n _react2.default.createElement('a', {\n href: props.item.url.index + '?shva=1',\n style: { backgroundImage: \"url('\" + thumbnailUrl + \"?shva=1')\" },\n target: '_blank'\n })\n );\n};\n\nfunction Icon(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'editor-attachment-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'insert_drive_file'\n )\n );\n}\n\nfunction Filename(props) {\n return _react2.default.createElement(\n 'h4',\n null,\n _react2.default.createElement(\n 'a',\n {\n className: 'item-title',\n href: props.item.url.index + '?shva=1',\n target: '_blank'\n },\n props.item.filename\n )\n );\n}\n\nfunction Details(props) {\n var user = null;\n if (props.item.url.uploader) {\n user = interpolate(USER_URL, {\n url: (0, _escapeHtml2.default)(props.item.url.uploader),\n user: (0, _escapeHtml2.default)(props.item.uploader_name)\n }, true);\n } else {\n user = interpolate(USER_SPAN, {\n user: (0, _escapeHtml2.default)(props.item.uploader_name)\n }, true);\n }\n\n var date = interpolate(DATE_ABBR, {\n absolute: (0, _escapeHtml2.default)(props.item.uploaded_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(props.item.uploaded_on.fromNow())\n }, true);\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s.\")), {\n filetype: props.item.filetype,\n size: (0, _fileSize2.default)(props.item.size),\n uploader: user,\n uploaded_on: date\n }, true);\n\n return _react2.default.createElement('p', { dangerouslySetInnerHTML: { __html: message } });\n}\n\nfunction Actions(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'editor-attachment-actions' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(Insert, props),\n _react2.default.createElement(Remove, props),\n _react2.default.createElement(Undo, props)\n )\n );\n}\n\nfunction Insert(props) {\n if (!!props.item.isRemoved) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-6' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sm btn-block',\n onClick: props.onInsert,\n type: 'button'\n },\n gettext(\"Insert\")\n )\n );\n}\n\nfunction Remove(props) {\n if (!!props.item.isRemoved && props.item.acl.can_delete) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-6' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sm btn-block',\n onClick: props.onRemove,\n type: 'button'\n },\n gettext(\"Remove\")\n )\n );\n}\n\nfunction Undo(props) {\n if (!props.item.isRemoved) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sm btn-block',\n onClick: props.onUndo,\n type: 'button'\n },\n gettext(\"Undo removal\")\n )\n );\n}\n\n},{\"../../../..\":291,\"../../../../utils/escape-html\":370,\"../../../../utils/file-size\":371,\"react\":\"react\"}],41:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _escapeHtml = require('../../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar STRONG = '%(name)s';\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n var filteredAttachments = _this.props.attachments.filter(function (item) {\n return item.key !== _this.props.item.key;\n });\n _this.props.onAttachmentsChange(filteredAttachments);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n var filename = interpolate(STRONG, {\n name: (0, _escapeHtml2.default)(this.props.item.filename)\n }, true);\n\n var title = interpolate(gettext(\"Error uploading %(filename)s\"), {\n filename: filename,\n progress: this.props.item.progress + '%'\n }, true);\n\n return _react2.default.createElement(\n 'li',\n { className: 'editor-attachment-error' },\n _react2.default.createElement(\n 'div',\n { className: 'editor-attachment-error-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'warning'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'editor-attachment-error-message' },\n _react2.default.createElement('h4', { dangerouslySetInnerHTML: { __html: title + ':' } }),\n _react2.default.createElement(\n 'p',\n null,\n this.props.item.error\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sm',\n onClick: this.onClick,\n type: 'button'\n },\n gettext(\"Dismiss\")\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n;\n\n},{\"../../../../utils/escape-html\":370,\"react\":\"react\"}],42:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (props.item.id) {\n return _react2.default.createElement(_complete2.default, props);\n }\n\n if (props.item.error) {\n return _react2.default.createElement(_error2.default, props);\n }\n\n return _react2.default.createElement(_upload2.default, props);\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _complete = require('./complete');\n\nvar _complete2 = _interopRequireDefault(_complete);\n\nvar _error = require('./error');\n\nvar _error2 = _interopRequireDefault(_error);\n\nvar _upload = require('./upload');\n\nvar _upload2 = _interopRequireDefault(_upload);\n\nvar _ = require('../../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _escapeHtml = require('../../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../..\":291,\"../../../../utils/escape-html\":370,\"./complete\":40,\"./error\":41,\"./upload\":43,\"react\":\"react\"}],43:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n var filename = interpolate(STRONG, {\n name: (0, _escapeHtml2.default)(props.item.filename)\n }, true);\n\n var message = interpolate(gettext(\"Uploading %(filename)s... %(progress)s\"), {\n filename: filename,\n progress: props.item.progress + '%'\n }, true);\n\n return _react2.default.createElement(\n 'li',\n { className: 'editor-attachment-upload' },\n _react2.default.createElement(\n 'div',\n { className: 'editor-attachment-progress-bar' },\n _react2.default.createElement('div', {\n className: 'editor-attachment-progress',\n style: { width: props.item.progress + '%' }\n })\n ),\n _react2.default.createElement('p', {\n className: 'editor-attachment-upload-message',\n dangerouslySetInnerHTML: { __html: message }\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _escapeHtml = require('../../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nvar STRONG = '%(name)s';\n\n;\n\n},{\"../../../../utils/escape-html\":370,\"react\":\"react\"}],44:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (!_2.default.get('user').acl.max_attachment_size) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'editor-attachments' },\n _react2.default.createElement(_list2.default, props),\n _react2.default.createElement(_uploader2.default, props)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _list = require('./list');\n\nvar _list2 = _interopRequireDefault(_list);\n\nvar _uploader = require('./uploader');\n\nvar _uploader2 = _interopRequireDefault(_uploader);\n\nvar _ = require('../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n; // jshint ignore:start\n\n},{\"../../..\":291,\"./list\":45,\"./uploader\":47,\"react\":\"react\"}],45:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled editor-attachments-list' },\n props.attachments.map(function (item) {\n return _react2.default.createElement(_attachment2.default, _extends({ item: item, key: item.id || item.key }, props));\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _attachment = require('./attachment');\n\nvar _attachment2 = _interopRequireDefault(_attachment);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n;\n\n},{\"./attachment\":42,\"react\":\"react\"}],46:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _ = require('../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n document.getElementById('editor-upload-field').click();\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n if (!_2.default.get('user').acl.max_attachment_size) {\n return null;\n }\n\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-icon ' + this.props.className,\n disabled: this.props.disabled,\n onClick: this.onClick,\n title: gettext('Upload file'),\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'file_upload'\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n;\n\n},{\"../../..\":291,\"react\":\"react\"}],47:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.getRandomKey = getRandomKey;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _ = require('../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onChange = function (event) {\n var file = event.target.files[0];\n if (!file) {\n return;\n }\n\n var upload = {\n id: null,\n key: getRandomKey(),\n progress: 0,\n error: null,\n filename: file.name\n };\n\n _this.props.onAttachmentsChange([upload].concat(_this.props.attachments));\n\n var data = new FormData();\n data.append('upload', file);\n\n _ajax2.default.upload(_2.default.get('ATTACHMENTS_API'), data, function (progress) {\n upload.progress = progress;\n _this.props.onAttachmentsChange(_this.props.attachments.concat());\n }).then(function (data) {\n data.uploaded_on = (0, _moment2.default)(data.uploaded_on);\n Object.assign(upload, data);\n _this.props.onAttachmentsChange(_this.props.attachments.concat());\n }, function (rejection) {\n if (rejection.status === 400 || rejection.status === 413) {\n upload.error = rejection.detail;\n _this.props.onAttachmentsChange(_this.props.attachments.concat());\n } else {\n _snackbar2.default.apiError(rejection);\n }\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement('input', {\n id: 'editor-upload-field',\n onChange: this.onChange,\n type: 'file'\n });\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n;\n\nfunction getRandomKey() {\n return 'upld-' + Math.round(new Date().getTime());\n}\n\n},{\"../../..\":291,\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"moment\":\"moment\",\"react\":\"react\"}],48:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.Protect = Protect;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _code = require('./actions/code');\n\nvar _code2 = _interopRequireDefault(_code);\n\nvar _emphasis = require('./actions/emphasis');\n\nvar _emphasis2 = _interopRequireDefault(_emphasis);\n\nvar _hr = require('./actions/hr');\n\nvar _hr2 = _interopRequireDefault(_hr);\n\nvar _image = require('./actions/image');\n\nvar _image2 = _interopRequireDefault(_image);\n\nvar _link = require('./actions/link');\n\nvar _link2 = _interopRequireDefault(_link);\n\nvar _striketrough = require('./actions/striketrough');\n\nvar _striketrough2 = _interopRequireDefault(_striketrough);\n\nvar _strong = require('./actions/strong');\n\nvar _strong2 = _interopRequireDefault(_strong);\n\nvar _quote = require('./actions/quote');\n\nvar _quote2 = _interopRequireDefault(_quote);\n\nvar _attachments = require('./attachments');\n\nvar _attachments2 = _interopRequireDefault(_attachments);\n\nvar _uploadButton = require('./attachments/upload-button/');\n\nvar _uploadButton2 = _interopRequireDefault(_uploadButton);\n\nvar _markupPreview = require('./markup-preview');\n\nvar _markupPreview2 = _interopRequireDefault(_markupPreview);\n\nvar _textutils = require('./textutils');\n\nvar textUtils = _interopRequireWildcard(_textutils);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onPreviewClick = function () {\n if (_this.state.isPreviewLoading) {\n return;\n }\n\n _this.setState({\n isPreviewLoading: true\n });\n\n _ajax2.default.post(_2.default.get('PARSE_MARKUP_API'), { post: _this.props.value }).then(function (data) {\n _modal2.default.show(_react2.default.createElement(_markupPreview2.default, { markup: data.parsed }));\n\n _this.setState({\n isPreviewLoading: false\n });\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n _this.setState({\n isPreviewLoading: false\n });\n });\n };\n\n _this.replaceSelection = function (operation) {\n operation(textUtils.getSelectionText(), _this._replaceSelection);\n };\n\n _this._replaceSelection = function (newValue) {\n _this.props.onChange({\n target: {\n value: textUtils.replace(newValue)\n }\n });\n };\n\n _this.state = {\n isPreviewLoading: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n $('#editor-textarea').atwho({\n at: '@',\n displayTpl: '
  • \"\"${username}
  • ',\n insertTpl: '@${username}',\n searchKey: 'username',\n callbacks: {\n remoteFilter: function remoteFilter(query, callback) {\n $.getJSON(_2.default.get('MENTION_API'), { q: query }, callback);\n }\n }\n });\n\n $('#editor-textarea').on(\"inserted.atwho\", function (event, flag, query) {\n _this2.props.onChange(event);\n });\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'editor-border' },\n _react2.default.createElement('textarea', {\n className: 'form-control',\n value: this.props.value,\n disabled: this.props.loading,\n id: 'editor-textarea',\n onChange: this.props.onChange,\n rows: '9'\n }),\n _react2.default.createElement(\n 'div',\n { className: 'editor-footer' },\n _react2.default.createElement(\n 'div',\n { className: 'buttons-list pull-left' },\n _react2.default.createElement(_strong2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_emphasis2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_striketrough2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_hr2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_link2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_image2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_quote2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_code2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n replaceSelection: this.replaceSelection\n }),\n _react2.default.createElement(_uploadButton2.default, {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading\n })\n ),\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-sm pull-left',\n disabled: this.props.loading || this.state.isPreviewLoading,\n onClick: this.onPreviewClick,\n type: 'button'\n },\n gettext(\"Preview\")\n ),\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-primary btn-sm pull-right',\n loading: this.props.loading\n },\n this.props.submitLabel || gettext(\"Post\")\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sm pull-right',\n disabled: this.props.loading,\n onClick: this.props.onCancel,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement('div', { className: 'clearfix visible-xs-block' }),\n _react2.default.createElement(Protect, {\n canProtect: this.props.canProtect,\n disabled: this.props.loading,\n onProtect: this.props.onProtect,\n onUnprotect: this.props.onUnprotect,\n protect: this.props.protect\n })\n ),\n _react2.default.createElement(_attachments2.default, {\n attachments: this.props.attachments,\n onAttachmentsChange: this.props.onAttachmentsChange,\n placeholder: this.props.placeholder,\n replaceSelection: this.replaceSelection\n })\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction Protect(props) {\n if (!props.canProtect) return null;\n\n var label = props.protect ? gettext('Protected') : gettext('Protect');\n\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-icon btn-default btn-protect btn-sm pull-right',\n disabled: props.disabled,\n onClick: props.protect ? props.onUnprotect : props.onProtect,\n title: label,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n props.protect ? 'lock' : 'lock_outline'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'btn-text hidden-md hidden-lg' },\n label\n )\n );\n}\n\n},{\"../..\":291,\"../../services/ajax\":352,\"../../services/modal\":358,\"../../services/snackbar\":363,\"../button\":5,\"./actions/code\":32,\"./actions/emphasis\":33,\"./actions/hr\":34,\"./actions/image\":35,\"./actions/link\":36,\"./actions/quote\":37,\"./actions/striketrough\":38,\"./actions/strong\":39,\"./attachments\":44,\"./attachments/upload-button/\":46,\"./markup-preview\":49,\"./textutils\":50,\"react\":\"react\"}],49:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog', role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Preview message\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-body markup-preview' },\n _react2.default.createElement(_misagoMarkup2.default, { markup: props.markup })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _misagoMarkup = require('../misago-markup');\n\nvar _misagoMarkup2 = _interopRequireDefault(_misagoMarkup);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../misago-markup\":56,\"react\":\"react\"}],50:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getTextarea = getTextarea;\nexports.getValue = getValue;\nexports.getSelectionRange = getSelectionRange;\nexports.getSelection = getSelection;\nexports.getSelectionText = getSelectionText;\nexports.setSelection = setSelection;\nexports._replace = _replace;\nexports.replace = replace;\nvar textareaId = exports.textareaId = 'editor-textarea';\n\nfunction getTextarea() {\n return document.getElementById(textareaId);\n}\n\nfunction getValue() {\n return document.getElementById(textareaId).value;\n}\n\nfunction getSelectionRange(start, end) {\n return {\n start: start,\n end: end\n };\n}\n\nfunction getSelection() {\n var ctrl = getTextarea();\n if (document.selection) {\n ctrl.focus();\n var range = document.selection.createRange();\n var length = range.text.length;\n range.moveStart('character', -ctrl.value.length);\n return getSelectionRange(range.text.length - length, range.text.length);\n } else if (ctrl.selectionStart || ctrl.selectionStart == '0') {\n return getSelectionRange(ctrl.selectionStart, ctrl.selectionEnd);\n }\n}\n\nfunction getSelectionText() {\n var range = getSelection();\n return $.trim(getValue().substring(range.start, range.end));\n}\n\nfunction setSelection(selectionRange) {\n var ctrl = getTextarea();\n if (ctrl.setSelectionRange) {\n ctrl.focus();\n ctrl.setSelectionRange(selectionRange.start, selectionRange.end);\n } else if (ctrl.createTextRange) {\n var range = ctrl.createTextRange();\n range.collapse(true);\n range.moveStart('character', selectionRange.start);\n range.moveEnd('character', selectionRange.end);\n range.select();\n }\n}\n\nfunction _replace(myRange, replacement) {\n var ctrl = getTextarea();\n var text = ctrl.value;\n var startText = text.substring(0, myRange.start);\n ctrl.value = text.substring(0, myRange.start) + replacement + text.substring(myRange.end);\n setSelection(getSelectionRange(startText.length + replacement.length, startText.length + replacement.length));\n return ctrl.value;\n}\n\nfunction replace(replacement) {\n return _replace(getSelection(), replacement);\n}\n\n},{}],51:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'isValidated',\n value: function isValidated() {\n return typeof this.props.validation !== \"undefined\";\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n var className = 'form-group';\n if (this.isValidated()) {\n className += ' has-feedback';\n if (this.props.validation === null) {\n className += ' has-success';\n } else {\n className += ' has-error';\n }\n }\n return className;\n }\n }, {\n key: 'getFeedback',\n value: function getFeedback() {\n var _this2 = this;\n\n if (this.props.validation) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'help-block errors' },\n this.props.validation.map(function (error, i) {\n return _react2.default.createElement(\n 'p',\n { key: _this2.props.for + 'FeedbackItem' + i },\n error\n );\n })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getFeedbackDescription',\n value: function getFeedbackDescription() {\n if (this.isValidated()) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { id: this.props.for + '_status', className: 'sr-only' },\n this.props.validation ? gettext('(error)') : gettext('(success)')\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getHelpText',\n value: function getHelpText() {\n if (this.props.helpText) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'p',\n { className: 'help-block' },\n this.props.helpText\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName() },\n _react2.default.createElement(\n 'label',\n { className: 'control-label ' + (this.props.labelClass || ''),\n htmlFor: this.props.for || '' },\n this.props.label + ':'\n ),\n _react2.default.createElement(\n 'div',\n { className: this.props.controlClass || '' },\n this.props.children,\n this.getFeedbackDescription(),\n this.getFeedback(),\n this.getHelpText(),\n this.props.extra || null\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],52:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _validators = require('../utils/validators');\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _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; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar validateRequired = (0, _validators.required)();\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.bindInput = function (name) {\n return function (event) {\n _this.changeValue(name, event.target.value);\n };\n }, _this.changeValue = function (name, value) {\n var newState = _defineProperty({}, name, value);\n\n var formErrors = _this.state.errors || {};\n formErrors[name] = _this.validateField(name, newState[name]);\n newState.errors = formErrors;\n\n _this.setState(newState);\n }, _this.handleSubmit = function (event) {\n // we don't reload page on submissions\n if (event) {\n event.preventDefault();\n }\n\n if (_this.state.isLoading) {\n return;\n }\n\n if (_this.clean()) {\n _this.setState({ isLoading: true });\n var promise = _this.send();\n\n if (promise) {\n promise.then(function (success) {\n _this.setState({ isLoading: false });\n _this.handleSuccess(success);\n }, function (rejection) {\n _this.setState({ isLoading: false });\n _this.handleError(rejection);\n });\n } else {\n _this.setState({ isLoading: false });\n }\n }\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'validate',\n value: function validate() {\n var errors = {};\n if (!this.state.validators) {\n return errors;\n }\n\n var validators = {\n required: this.state.validators.required || this.state.validators,\n optional: this.state.validators.optional || {}\n };\n\n var validatedFields = [];\n\n // add required fields to validation\n for (var name in validators.required) {\n if (validators.required.hasOwnProperty(name) && validators.required[name]) {\n validatedFields.push(name);\n }\n }\n\n // add optional fields to validation\n for (var _name in validators.optional) {\n if (validators.optional.hasOwnProperty(_name) && validators.optional[_name]) {\n validatedFields.push(_name);\n }\n }\n\n // validate fields values\n for (var i in validatedFields) {\n var _name2 = validatedFields[i];\n var fieldErrors = this.validateField(_name2, this.state[_name2]);\n\n if (fieldErrors === null) {\n errors[_name2] = null;\n } else if (fieldErrors) {\n errors[_name2] = fieldErrors;\n }\n }\n\n return errors;\n }\n }, {\n key: 'isValid',\n value: function isValid() {\n var errors = this.validate();\n for (var field in errors) {\n if (errors.hasOwnProperty(field)) {\n if (errors[field] !== null) {\n return false;\n }\n }\n }\n\n return true;\n }\n }, {\n key: 'validateField',\n value: function validateField(name, value) {\n var errors = [];\n if (!this.state.validators) {\n return errors;\n }\n\n var validators = {\n required: (this.state.validators.required || this.state.validators)[name],\n optional: (this.state.validators.optional || {})[name]\n };\n\n var requiredError = validateRequired(value) || false;\n\n if (validators.required) {\n if (requiredError) {\n errors = [requiredError];\n } else {\n for (var i in validators.required) {\n var validationError = validators.required[i](value);\n if (validationError) {\n errors.push(validationError);\n }\n }\n }\n\n return errors.length ? errors : null;\n } else if (requiredError === false && validators.optional) {\n for (var _i in validators.optional) {\n var _validationError = validators.optional[_i](value);\n if (_validationError) {\n errors.push(_validationError);\n }\n }\n\n return errors.length ? errors : null;\n }\n\n return false; // false === field wasn't validated\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'clean',\n value: function clean() {\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return null;\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n return;\n }\n }, {\n key: 'handleError',\n\n /* jshint ignore:end */\n value: function handleError(rejection) {\n _snackbar2.default.apiError(rejection);\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../services/snackbar\":363,\"../utils/validators\":380,\"react\":\"react\"}],53:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'isActive',\n value: function isActive() {\n if (this.props.isControlled) {\n return this.props.isActive;\n } else {\n if (this.props.path) {\n return document.location.pathname.indexOf(this.props.path) === 0;\n } else {\n return false;\n }\n }\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.isActive()) {\n return (this.props.className || '') + ' ' + (this.props.activeClassName || 'active');\n } else {\n return this.props.className || '';\n }\n }\n }, {\n key: 'render',\n value: function render() {\n // jshint ignore:start\n return _react2.default.createElement(\n 'li',\n { className: this.getClassName() },\n this.props.children\n );\n // jshint ignore:end\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],54:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n \"div\",\n { className: props.className || \"loader\" },\n _react2.default.createElement(\"div\", { className: \"loader-spinning-wheel\" })\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],55:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('./form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.handleSuccess = function (success) {\n _this.props.onSuccess(success);\n _modal2.default.hide();\n };\n\n _this.handleError = function (rejection) {\n _this.props.onError(rejection);\n };\n\n _this.onPollChange = function (event) {\n _this.changeValue('poll', event.target.value);\n };\n\n _this.state = {\n isLoading: false,\n\n poll: 0\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n var confirmation = confirm(gettext(\"Are you sure? This will delete other polls.\"));\n return confirmation;\n }\n }, {\n key: 'send',\n value: function send() {\n var data = Object.assign({}, this.props.data, {\n poll: this.state.poll\n });\n\n return _ajax2.default.post(this.props.api, data);\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog', role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Merge polls\")\n )\n ),\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'p',\n null,\n gettext(\"Select poll to use in merged thread. Other polls will be deleted.\")\n ),\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Poll\"),\n 'for': 'id_poll'\n },\n _react2.default.createElement(\n 'select',\n {\n className: 'form-control',\n id: 'id_poll',\n onChange: this.onPollChange,\n value: this.state.poll\n },\n this.props.polls.map(function (poll) {\n return _react2.default.createElement(\n 'option',\n { value: poll[0], key: poll[0] },\n poll[1]\n );\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Merge polls\")\n )\n )\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../services/ajax\":352,\"../services/modal\":358,\"./button\":5,\"./form\":52,\"./form-group\":51,\"react\":\"react\"}],56:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _oneBox = require('../services/one-box');\n\nvar _oneBox2 = _interopRequireDefault(_oneBox);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n _oneBox2.default.render(this.documentNode);\n }\n }, {\n key: 'componentDidUpdate',\n value: function componentDidUpdate(prevProps, prevState) {\n _oneBox2.default.render(this.documentNode);\n }\n }, {\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate(nextProps, nextState) {\n return nextProps.markup !== this.props.markup;\n }\n }, {\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n return _react2.default.createElement('article', {\n className: 'misago-markup',\n dangerouslySetInnerHTML: { __html: this.props.markup },\n ref: function ref(node) {\n _this2.documentNode = node;\n }\n });\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../services/one-box\":359,\"react\":\"react\"}],57:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _loader = require('./loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-loader' },\n _react2.default.createElement(_loader2.default, null)\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./loader\":54,\"react\":\"react\"}],58:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _panelMessage = require('./panel-message');\n\nvar _panelMessage2 = _interopRequireDefault(_panelMessage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\nvar _class = function (_PanelMessage) {\n _inherits(_class, _PanelMessage);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getHelpText',\n value: function getHelpText() {\n if (this.props.helpText) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'p',\n { className: 'help-block' },\n this.props.helpText\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n this.props.icon || 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.props.message\n ),\n this.getHelpText(),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n gettext(\"Ok\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_panelMessage2.default);\n\nexports.default = _class;\n\n},{\"./panel-message\":87,\"react\":\"react\"}],59:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (data) {\n var filtered = data.filter(function (section) {\n return section.results.count > 0;\n });\n\n return filtered.map(function (section) {\n return Object.assign({}, section, {\n count: section.results.count,\n results: section.results.results.slice(0, MAX_RESULTS)\n });\n });\n};\n\nvar MAX_RESULTS = 5;\n\n},{}],60:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nvar HEADER = exports.HEADER = 'HEADER';\nvar RESULT = exports.RESULT = 'RESULT';\nvar FOOTER = exports.FOOTER = 'FOOTER';\n\n},{}],61:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var children = _ref.children,\n onChange = _ref.onChange,\n query = _ref.query;\n\n return _react2.default.createElement(\n 'ul',\n { className: 'dropdown-menu dropdown-search-results', role: 'menu' },\n _react2.default.createElement(\n 'li',\n { className: 'form-group' },\n _react2.default.createElement(_input2.default, {\n value: query,\n onChange: onChange\n })\n ),\n children\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _input = require('./input');\n\nvar _input2 = _interopRequireDefault(_input);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./input\":65,\"react\":\"react\"}],62:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function () {\n return _react2.default.createElement(\n \"li\",\n { className: \"dropdown-search-message\" },\n gettext(\"Search returned no results.\")\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],63:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (results) {\n var flatlist = [];\n flattenProviders(results, flatlist);\n return flatlist;\n};\n\nvar _constants = require('./constants');\n\nfunction flattenProviders(results, flatlist) {\n var arrayLength = results.length;\n for (var i = 0; i < arrayLength; i++) {\n var provider = results[i];\n\n flatlist.push({\n provider: provider,\n type: _constants.HEADER\n });\n\n flattenProvider(provider, flatlist);\n }\n}\n\nfunction flattenProvider(provider, flatlist) {\n var arrayLength = provider.results.length;\n for (var i = 0; i < arrayLength; i++) {\n var result = provider.results[i];\n flatlist.push({\n provider: provider,\n result: result,\n type: _constants.RESULT\n });\n }\n\n flatlist.push({\n provider: provider,\n type: _constants.FOOTER\n });\n}\n\n},{\"./constants\":60}],64:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (_ref) {\n var isLoading = _ref.isLoading,\n onChange = _ref.onChange,\n results = _ref.results,\n query = _ref.query;\n\n if (!query.trim().length) {\n return _react2.default.createElement(_dropdownMenu2.default, { onChange: onChange, query: query });\n }\n\n if (results.length) {\n var flatResults = (0, _flattenResults2.default)(results);\n\n return _react2.default.createElement(\n _dropdownMenu2.default,\n { onChange: onChange, query: query },\n flatResults.map(function (props) {\n var type = props.type,\n provider = props.provider,\n result = props.result;\n\n\n if (type === _constants.RESULT) {\n return _react2.default.createElement(_result2.default, _extends({\n key: [provider.id, type, result.id].join('_')\n }, props));\n }\n\n return _react2.default.createElement(_result2.default, _extends({\n key: [provider.id, type].join('_'),\n query: query\n }, props));\n })\n );\n } else if (isLoading) {\n return _react2.default.createElement(\n _dropdownMenu2.default,\n { onChange: onChange, query: query },\n _react2.default.createElement(_loader2.default, null)\n );\n }\n\n return _react2.default.createElement(\n _dropdownMenu2.default,\n { onChange: onChange, query: query },\n _react2.default.createElement(_empty2.default, null)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _constants = require('./constants');\n\nvar _dropdownMenu = require('./dropdown-menu');\n\nvar _dropdownMenu2 = _interopRequireDefault(_dropdownMenu);\n\nvar _empty = require('./empty');\n\nvar _empty2 = _interopRequireDefault(_empty);\n\nvar _loader = require('./loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nvar _result = require('./result');\n\nvar _result2 = _interopRequireDefault(_result);\n\nvar _flattenResults = require('./flatten-results');\n\nvar _flattenResults2 = _interopRequireDefault(_flattenResults);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./constants\":60,\"./dropdown-menu\":61,\"./empty\":62,\"./flatten-results\":63,\"./loader\":66,\"./result\":69,\"react\":\"react\"}],65:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var value = _ref.value,\n onChange = _ref.onChange;\n\n return _react2.default.createElement(\"input\", {\n \"aria-haspopup\": \"true\",\n \"aria-expanded\": \"false\",\n autoComplete: \"off\",\n className: \"form-control\",\n value: value,\n onChange: onChange,\n placeholder: gettext(\"Search\"),\n role: \"combobox\",\n type: \"text\"\n });\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],66:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var message = _ref.message;\n\n return _react2.default.createElement(\n 'li',\n { className: 'dropdown-search-loader' },\n _react2.default.createElement(_loader2.default, null)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _loader = require('../../loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../loader\":54,\"react\":\"react\"}],67:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var provider = _ref.provider,\n query = _ref.query;\n\n var url = provider.url + '?q=' + encodeURI(query);\n var label = ngettext('See full \"%(provider)s\" results page with %(count)s result.', 'See full \"%(provider)s\" results page with %(count)s results.', provider.count);\n\n return _react2.default.createElement(\n 'li',\n { className: 'dropdown-search-footer' },\n _react2.default.createElement(\n 'a',\n { href: url },\n interpolate(label, {\n count: provider.count,\n provider: provider.name\n }, true)\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],68:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var provider = _ref.provider;\n\n return _react2.default.createElement(\n \"li\",\n { className: \"dropdown-search-header\" },\n provider.name\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],69:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var provider = _ref.provider,\n result = _ref.result,\n type = _ref.type,\n query = _ref.query;\n\n if (type === _constants.HEADER) {\n return _react2.default.createElement(_header2.default, { provider: provider });\n } else if (type === _constants.FOOTER) {\n return _react2.default.createElement(_footer2.default, { provider: provider, query: query });\n }\n\n return _react2.default.createElement(_result2.default, { provider: provider, result: result });\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _constants = require('../constants');\n\nvar _footer = require('./footer');\n\nvar _footer2 = _interopRequireDefault(_footer);\n\nvar _header = require('./header');\n\nvar _header2 = _interopRequireDefault(_header);\n\nvar _result = require('./result');\n\nvar _result2 = _interopRequireDefault(_result);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../constants\":60,\"./footer\":67,\"./header\":68,\"./result\":70,\"react\":\"react\"}],70:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var provider = _ref.provider,\n result = _ref.result;\n\n if (provider.id === 'threads') {\n return _react2.default.createElement(_thread2.default, { result: result });\n }\n\n return _react2.default.createElement(_user2.default, { result: result });\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _thread = require('./thread');\n\nvar _thread2 = _interopRequireDefault(_thread);\n\nvar _user = require('./user');\n\nvar _user2 = _interopRequireDefault(_user);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./thread\":71,\"./user\":72,\"react\":\"react\"}],71:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var result = _ref.result;\n var poster = result.poster,\n thread = result.thread;\n\n var footer = gettext(\"Posted by %(poster)s on %(posted_on)s in %(category)s.\");\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n { href: result.url.index, className: 'dropdown-search-thread' },\n _react2.default.createElement(\n 'h5',\n null,\n thread.title\n ),\n _react2.default.createElement(\n 'small',\n { className: 'dropdown-search-post-content' },\n $(result.content).text()\n ),\n _react2.default.createElement(\n 'small',\n { className: 'dropdown-search-post-footer' },\n interpolate(footer, {\n category: result.category.name,\n posted_on: (0, _moment2.default)(result.posted_on).format('LL'),\n poster: result.poster_name\n }, true)\n )\n )\n );\n};\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"moment\":\"moment\",\"react\":\"react\"}],72:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var result = _ref.result;\n var rank = result.rank;\n\n\n var detail = gettext(\"%(title)s, joined on %(joined_on)s\");\n var title = result.title || rank.title || rank.name;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n { href: result.url, className: 'dropdown-search-user' },\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(_avatar2.default, { size: 38, user: result })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'h5',\n { className: 'media-heading' },\n result.username\n ),\n _react2.default.createElement(\n 'small',\n null,\n interpolate(detail, {\n title: title,\n joined_on: (0, _moment2.default)(result.joined_on).format('LL')\n }, true)\n )\n )\n )\n )\n );\n};\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../avatar\":3,\"moment\":\"moment\",\"react\":\"react\"}],73:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _cleanResults = require('./clean-results');\n\nvar _cleanResults2 = _interopRequireDefault(_cleanResults);\n\nvar _dropdown = require('./dropdown');\n\nvar _dropdown2 = _interopRequireDefault(_dropdown);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this));\n\n _this.onToggle = function (ev) {\n _this.setState(function (prevState, props) {\n if (!prevState.isOpen) {\n window.setTimeout(function () {\n _this.container.querySelector('input').focus();\n }, 100);\n }\n\n return { isOpen: !prevState.isOpen };\n });\n };\n\n _this.onDocumentMouseDown = function (ev) {\n var closeResults = true;\n var node = ev.target;\n\n while (node !== null && node !== document) {\n if (node === _this.container) {\n closeResults = false;\n return;\n }\n\n node = node.parentNode;\n }\n\n if (closeResults) {\n _this.setState({ isOpen: false });\n }\n };\n\n _this.onEscape = function (ev) {\n if (ev.key === 'Escape') {\n _this.setState({ isOpen: false });\n }\n };\n\n _this.onChange = function (ev) {\n var query = ev.target.value;\n\n _this.setState({ query: query });\n _this.loadResults(query.trim());\n };\n\n _this.state = {\n isLoading: false,\n isOpen: false,\n query: '',\n results: []\n };\n\n _this.intervalId = null;\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n document.addEventListener('mousedown', this.onDocumentMouseDown);\n document.addEventListener('keydown', this.onEscape);\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n document.removeEventListener('mousedown', this.onDocumentMouseDown);\n document.removeEventListener('keydown', this.onEscape);\n }\n }, {\n key: 'loadResults',\n value: function loadResults(query) {\n var _this2 = this;\n\n if (!query.length) return;\n\n var delay = 300 + Math.random() * 300;\n\n if (this.intervalId) {\n window.clearTimeout(this.intervalId);\n }\n\n this.setState({ isLoading: true });\n\n this.intervalId = window.setTimeout(function () {\n _ajax2.default.get(_2.default.get('SEARCH_API'), { q: query }).then(function (data) {\n _this2.setState({\n intervalId: null,\n isLoading: false,\n results: (0, _cleanResults2.default)(data)\n });\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n\n _this2.setState({\n intervalId: null,\n isLoading: false,\n results: []\n });\n });\n }, delay);\n }\n }, {\n key: 'render',\n value: function render() {\n var _this3 = this;\n\n var className = \"navbar-search dropdown\";\n if (this.state.isOpen) className += \" open\";\n\n return _react2.default.createElement(\n 'div',\n { className: className, ref: function ref(container) {\n return _this3.container = container;\n } },\n _react2.default.createElement(\n 'a',\n {\n 'aria-haspopup': 'true',\n 'aria-expanded': 'false',\n className: 'navbar-icon',\n 'data-toggle': 'dropdown',\n href: _2.default.get('SEARCH_URL'),\n onClick: this.onToggle\n },\n _react2.default.createElement(\n 'i',\n { className: 'material-icon' },\n 'search'\n )\n ),\n _react2.default.createElement(_dropdown2.default, {\n isLoading: this.state.isLoading,\n onChange: this.onChange,\n results: this.state.results,\n query: this.state.query\n })\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../..\":291,\"../../services/ajax\":352,\"../../services/snackbar\":363,\"./clean-results\":59,\"./dropdown\":64,\"react\":\"react\"}],74:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function () {\n return _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Change username\")\n )\n ),\n _react2.default.createElement(_panelLoader2.default, null)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _panelLoader = require('../../panel-loader');\n\nvar _panelLoader2 = _interopRequireDefault(_panelLoader);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../panel-loader\":86,\"react\":\"react\"}],75:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _panelMessage = require('../../panel-message');\n\nvar _panelMessage2 = _interopRequireDefault(_panelMessage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getHelpText',\n value: function getHelpText() {\n if (this.props.options.next_on) {\n return interpolate(gettext(\"You will be able to change your username %(next_change)s.\"), { 'next_change': this.props.options.next_on.fromNow() }, true);\n } else {\n return gettext(\"You have used up available name changes.\");\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Change username\")\n )\n ),\n _react2.default.createElement(_panelMessage2.default, {\n helpText: this.getHelpText(),\n message: gettext(\"You can't change your username at the moment.\")\n })\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../panel-message\":87,\"react\":\"react\"}],76:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _validators = require('../../../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n username: '',\n\n validators: {\n username: [validators.usernameContent(), validators.usernameMinLength(props.options.length_min), validators.usernameMaxLength(props.options.length_max)]\n },\n\n isLoading: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'getHelpText',\n value: function getHelpText() {\n var phrases = [];\n\n if (this.props.options.changes_left > 0) {\n var message = ngettext(\"You can change your username %(changes_left)s more time.\", \"You can change your username %(changes_left)s more times.\", this.props.options.changes_left);\n\n phrases.push(interpolate(message, {\n 'changes_left': this.props.options.changes_left\n }, true));\n }\n\n if (this.props.user.acl.name_changes_expire > 0) {\n var _message = ngettext(\"Used changes become available again after %(name_changes_expire)s day.\", \"Used changes become available again after %(name_changes_expire)s days.\", this.props.user.acl.name_changes_expire);\n\n phrases.push(interpolate(_message, {\n 'name_changes_expire': this.props.user.acl.name_changes_expire\n }, true));\n }\n\n return phrases.length ? phrases.join(' ') : null;\n }\n }, {\n key: 'clean',\n value: function clean() {\n var errors = this.validate();\n if (errors.username) {\n _snackbar2.default.error(errors.username[0]);\n return false;\n }if (this.state.username.trim() === this.props.user.username) {\n _snackbar2.default.info(gettext(\"Your new username is same as current one.\"));\n return false;\n } else {\n return true;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.user.api.username, {\n 'username': this.state.username\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n this.setState({\n 'username': ''\n });\n\n this.props.complete(success.username, success.slug, success.options);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n _snackbar2.default.apiError(rejection);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Change username\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"New username\"), 'for': 'id_username',\n helpText: this.getHelpText() },\n _react2.default.createElement('input', { type: 'text', id: 'id_username', className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.bindInput('username'),\n value: this.state.username })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-footer' },\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Change username\")\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../utils/validators\":380,\"../../button\":5,\"../../form\":52,\"../../form-group\":51,\"react\":\"react\"}],77:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _formLoading = require('./form-loading');\n\nvar _formLoading2 = _interopRequireDefault(_formLoading);\n\nvar _formLocked = require('./form-locked');\n\nvar _formLocked2 = _interopRequireDefault(_formLocked);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _root = require('../../username-history/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _index = require('../../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _usernameHistory = require('../../../reducers/username-history');\n\nvar _users = require('../../../reducers/users');\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _pageTitle = require('../../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onComplete = function (username, slug, options) {\n _this.setState({\n options: options\n });\n\n _store2.default.dispatch((0, _usernameHistory.addNameChange)({ username: username, slug: slug }, _this.props.user, _this.props.user));\n _store2.default.dispatch((0, _users.updateUsername)(_this.props.user, username, slug));\n\n _snackbar2.default.success(gettext(\"Your username has been changed successfully.\"));\n };\n\n _this.state = {\n isLoaded: false,\n options: null\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _pageTitle2.default.set({\n title: gettext(\"Change username\"),\n parent: gettext(\"Change your options\")\n });\n\n Promise.all([_ajax2.default.get(this.props.user.api.username), _ajax2.default.get(_index2.default.get('USERNAME_CHANGES_API'), { user: this.props.user.id })]).then(function (data) {\n _store2.default.dispatch((0, _usernameHistory.hydrate)(data[1].results));\n\n _this2.setState({\n isLoaded: true,\n options: {\n changes_left: data[0].changes_left,\n length_min: data[0].length_min,\n length_max: data[0].length_max,\n next_on: data[0].next_on ? (0, _moment2.default)(data[0].next_on) : null\n }\n });\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getChangeForm',\n\n /* jshint ignore:end */\n\n value: function getChangeForm() {\n if (!this.state.isLoaded) {\n /* jshint ignore:start */\n return _react2.default.createElement(_formLoading2.default, null);\n /* jshint ignore:end */\n }\n\n if (this.state.options.changes_left === 0) {\n /* jshint ignore:start */\n return _react2.default.createElement(_formLocked2.default, { options: this.state.options });\n /* jshint ignore:end */\n }\n\n /* jshint ignore:start */\n return _react2.default.createElement(_form2.default, {\n complete: this.onComplete,\n options: this.state.options,\n user: this.props.user\n });\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n this.getChangeForm(),\n _react2.default.createElement(_root2.default, {\n changes: this.props['username-history'],\n isLoaded: this.state.isLoaded\n })\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../index\":291,\"../../../reducers/username-history\":350,\"../../../reducers/users\":351,\"../../../services/ajax\":352,\"../../../services/page-title\":360,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../username-history/root\":269,\"./form\":76,\"./form-loading\":74,\"./form-locked\":75,\"moment\":\"moment\",\"react\":\"react\"}],78:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _editDetails = require('../edit-details');\n\nvar _editDetails2 = _interopRequireDefault(_editDetails);\n\nvar _pageTitle = require('../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onSuccess = function () {\n _snackbar2.default.info(gettext(\"Your details have been updated.\"));\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: gettext(\"Edit details\"),\n parent: gettext(\"Change your options\")\n });\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(_editDetails2.default, {\n api: this.props.user.api.edit_details,\n onSuccess: this.onSuccess\n });\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../services/page-title\":360,\"../../services/snackbar\":363,\"../edit-details\":29,\"react\":\"react\"}],79:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _select = require('../select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nvar _yesNoSwitch = require('../yes-no-switch');\n\nvar _yesNoSwitch2 = _interopRequireDefault(_yesNoSwitch);\n\nvar _auth = require('../../reducers/auth');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _pageTitle = require('../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n 'isLoading': false,\n\n 'is_hiding_presence': props.user.is_hiding_presence,\n 'limits_private_thread_invites_to': props.user.limits_private_thread_invites_to,\n 'subscribe_to_started_threads': props.user.subscribe_to_started_threads,\n 'subscribe_to_replied_threads': props.user.subscribe_to_replied_threads,\n\n 'errors': {}\n };\n\n _this.privateThreadInvitesChoices = [{\n 'value': 0,\n 'icon': 'help_outline',\n 'label': gettext(\"Everybody\")\n }, {\n 'value': 1,\n 'icon': 'done_all',\n 'label': gettext(\"Users I follow\")\n }, {\n 'value': 2,\n 'icon': 'highlight_off',\n 'label': gettext(\"Nobody\")\n }];\n\n _this.subscribeToChoices = [{\n 'value': 0,\n 'icon': 'star_border',\n 'label': gettext(\"No\")\n }, {\n 'value': 1,\n 'icon': 'star_half',\n 'label': gettext(\"Notify\")\n }, {\n 'value': 2,\n 'icon': 'star',\n 'label': gettext(\"Notify with e-mail\")\n }];\n return _this;\n }\n\n _createClass(_class, [{\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.user.api.options, {\n is_hiding_presence: this.state.is_hiding_presence,\n limits_private_thread_invites_to: this.state.limits_private_thread_invites_to,\n subscribe_to_started_threads: this.state.subscribe_to_started_threads,\n subscribe_to_replied_threads: this.state.subscribe_to_replied_threads\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess() {\n _store2.default.dispatch((0, _auth.patch)({\n is_hiding_presence: this.state.is_hiding_presence,\n limits_private_thread_invites_to: this.state.limits_private_thread_invites_to,\n subscribe_to_started_threads: this.state.subscribe_to_started_threads,\n subscribe_to_replied_threads: this.state.subscribe_to_replied_threads\n }));\n _snackbar2.default.success(gettext(\"Your forum options have been changed.\"));\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(gettext(\"Please reload page and try again.\"));\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: gettext(\"Forum options\"),\n parent: gettext(\"Change your options\")\n });\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Change forum options\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'fieldset',\n null,\n _react2.default.createElement(\n 'legend',\n null,\n gettext(\"Privacy settings\")\n ),\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Hide my presence\"),\n helpText: gettext(\"If you hide your presence, only members with permission to see hidden users will see when you are online.\"),\n 'for': 'id_is_hiding_presence'\n },\n _react2.default.createElement(_yesNoSwitch2.default, {\n id: 'id_is_hiding_presence',\n disabled: this.state.isLoading,\n iconOn: 'visibility_off',\n iconOff: 'visibility',\n labelOn: gettext(\"Hide my presence from other users\"),\n labelOff: gettext(\"Show my presence to other users\"),\n onChange: this.bindInput('is_hiding_presence'),\n value: this.state.is_hiding_presence\n })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Private thread invitations\"),\n 'for': 'id_limits_private_thread_invites_to'\n },\n _react2.default.createElement(_select2.default, {\n id: 'id_limits_private_thread_invites_to',\n disabled: this.state.isLoading,\n onChange: this.bindInput('limits_private_thread_invites_to'),\n value: this.state.limits_private_thread_invites_to,\n choices: this.privateThreadInvitesChoices\n })\n )\n ),\n _react2.default.createElement(\n 'fieldset',\n null,\n _react2.default.createElement(\n 'legend',\n null,\n gettext(\"Automatic subscriptions\")\n ),\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Threads I start\"),\n 'for': 'id_subscribe_to_started_threads'\n },\n _react2.default.createElement(_select2.default, {\n id: 'id_subscribe_to_started_threads',\n disabled: this.state.isLoading,\n onChange: this.bindInput('subscribe_to_started_threads'),\n value: this.state.subscribe_to_started_threads,\n choices: this.subscribeToChoices\n })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Threads I reply to\"),\n 'for': 'id_subscribe_to_replied_threads'\n },\n _react2.default.createElement(_select2.default, {\n id: 'id_subscribe_to_replied_threads',\n disabled: this.state.isLoading,\n onChange: this.bindInput('subscribe_to_replied_threads'),\n value: this.state.subscribe_to_replied_threads,\n choices: this.subscribeToChoices\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-footer' },\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Save changes\")\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../reducers/auth\":337,\"../../services/ajax\":352,\"../../services/page-title\":360,\"../../services/snackbar\":363,\"../../services/store\":364,\"../button\":5,\"../form\":52,\"../form-group\":51,\"../select\":203,\"../yes-no-switch\":289,\"react\":\"react\"}],80:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SideNav = SideNav;\nexports.CompactNav = CompactNav;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nvar _li = require('../li');\n\nvar _li2 = _interopRequireDefault(_li);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction SideNav(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'list-group nav-side' },\n props.options.map(function (option) {\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n to: props.baseUrl + option.component + '/',\n className: 'list-group-item',\n activeClassName: 'active',\n key: option.component\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n option.icon\n ),\n option.name\n );\n })\n );\n}\n\nfunction CompactNav(props) {\n return _react2.default.createElement(\n 'ul',\n { className: props.className || \"dropdown-menu stick-to-bottom\", role: 'menu' },\n props.options.map(function (option) {\n return _react2.default.createElement(\n _li2.default,\n {\n path: props.baseUrl + option.component + '/',\n key: option.component\n },\n _react2.default.createElement(\n _reactRouter.Link,\n {\n to: props.baseUrl + option.component + '/',\n onClick: props.hideNav\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon hidden-sm' },\n option.icon\n ),\n option.name\n )\n );\n })\n );\n}\n\n},{\"../../index\":291,\"../li\":53,\"react\":\"react\",\"react-router\":\"react-router\"}],81:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.select = select;\nexports.paths = paths;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRedux = require('react-redux');\n\nvar _dropdownToggle = require('../dropdown-toggle');\n\nvar _dropdownToggle2 = _interopRequireDefault(_dropdownToggle);\n\nvar _navs = require('./navs');\n\nvar _editDetails = require('./edit-details');\n\nvar _editDetails2 = _interopRequireDefault(_editDetails);\n\nvar _forumOptions = require('./forum-options');\n\nvar _forumOptions2 = _interopRequireDefault(_forumOptions);\n\nvar _root = require('./change-username/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _root3 = require('./sign-in-credentials/root');\n\nvar _root4 = _interopRequireDefault(_root3);\n\nvar _withDropdown = require('../with-dropdown');\n\nvar _withDropdown2 = _interopRequireDefault(_withDropdown);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_WithDropdown) {\n _inherits(_class, _WithDropdown);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'page page-options' },\n _react2.default.createElement(\n 'div',\n { className: 'page-header-bg' },\n _react2.default.createElement(\n 'div',\n { className: 'page-header' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'h1',\n null,\n gettext(\"Change your options\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'page-tabs visible-xs-block visible-sm-block' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(_navs.CompactNav, {\n className: 'nav nav-pills',\n baseUrl: _index2.default.get('USERCP_URL'),\n options: _index2.default.get('USER_OPTIONS')\n })\n )\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-3 hidden-xs hidden-sm' },\n _react2.default.createElement(_navs.SideNav, {\n baseUrl: _index2.default.get('USERCP_URL'),\n options: _index2.default.get('USER_OPTIONS')\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-md-9' },\n this.props.children\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_withDropdown2.default);\n\nexports.default = _class;\nfunction select(store) {\n return {\n 'tick': store.tick.tick,\n 'user': store.auth.user,\n 'username-history': store['username-history']\n };\n}\n\nfunction paths() {\n return [{\n path: _index2.default.get('USERCP_URL') + 'forum-options/',\n component: (0, _reactRedux.connect)(select)(_forumOptions2.default)\n }, {\n path: _index2.default.get('USERCP_URL') + 'edit-details/',\n component: (0, _reactRedux.connect)(select)(_editDetails2.default)\n }, {\n path: _index2.default.get('USERCP_URL') + 'change-username/',\n component: (0, _reactRedux.connect)(select)(_root2.default)\n }, {\n path: _index2.default.get('USERCP_URL') + 'sign-in-credentials/',\n component: (0, _reactRedux.connect)(select)(_root4.default)\n }];\n}\n\n},{\"../../index\":291,\"../dropdown-toggle\":24,\"../with-dropdown\":288,\"./change-username/root\":77,\"./edit-details\":78,\"./forum-options\":79,\"./navs\":80,\"./sign-in-credentials/root\":84,\"react\":\"react\",\"react-redux\":\"react-redux\"}],82:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _validators = require('../../../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n new_email: '',\n password: '',\n\n validators: {\n new_email: [validators.email()],\n password: []\n },\n\n isLoading: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n var errors = this.validate();\n var lengths = [this.state.new_email.trim().length, this.state.password.trim().length];\n\n if (lengths.indexOf(0) !== -1) {\n _snackbar2.default.error(gettext(\"Fill out all fields.\"));\n return false;\n }\n\n if (errors.new_email) {\n _snackbar2.default.error(errors.new_email[0]);\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.user.api.change_email, {\n new_email: this.state.new_email,\n password: this.state.password\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(response) {\n this.setState({\n new_email: '',\n password: ''\n });\n\n _snackbar2.default.success(response.detail);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n if (rejection.new_email) {\n _snackbar2.default.error(rejection.new_email);\n } else {\n _snackbar2.default.error(rejection.password);\n }\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement('input', { type: 'type', style: { display: 'none' } }),\n _react2.default.createElement('input', { type: 'password', style: { display: 'none' } }),\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Change e-mail address\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"New e-mail\"), 'for': 'id_new_email' },\n _react2.default.createElement('input', { type: 'text', id: 'id_new_email', className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.bindInput('new_email'),\n value: this.state.new_email })\n ),\n _react2.default.createElement('hr', null),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Your current password\"), 'for': 'id_password' },\n _react2.default.createElement('input', { type: 'password', id: 'id_password', className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.bindInput('password'),\n value: this.state.password })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-footer' },\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Change e-mail\")\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../utils/validators\":380,\"../../button\":5,\"../../form\":52,\"../../form-group\":51,\"react\":\"react\"}],83:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n new_password: '',\n repeat_password: '',\n password: '',\n\n validators: {\n new_password: [],\n repeat_password: [],\n password: []\n },\n\n isLoading: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n var errors = this.validate();\n var lengths = [this.state.new_password.trim().length, this.state.repeat_password.trim().length, this.state.password.trim().length];\n\n if (lengths.indexOf(0) !== -1) {\n _snackbar2.default.error(gettext(\"Fill out all fields.\"));\n return false;\n }\n\n if (errors.new_password) {\n _snackbar2.default.error(errors.new_password[0]);\n return false;\n }\n\n if (this.state.new_password !== this.state.repeat_password) {\n _snackbar2.default.error(gettext(\"New passwords are different.\"));\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.user.api.change_password, {\n new_password: this.state.new_password,\n password: this.state.password\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(response) {\n this.setState({\n new_password: '',\n repeat_password: '',\n password: ''\n });\n\n _snackbar2.default.success(response.detail);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n if (rejection.new_password) {\n _snackbar2.default.error(rejection.new_password);\n } else {\n _snackbar2.default.error(rejection.password);\n }\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement('input', { type: 'type', style: { display: 'none' } }),\n _react2.default.createElement('input', { type: 'password', style: { display: 'none' } }),\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Change password\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"New password\"), 'for': 'id_new_password' },\n _react2.default.createElement('input', { type: 'password', id: 'id_new_password', className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.bindInput('new_password'),\n value: this.state.new_password })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Repeat password\"), 'for': 'id_repeat_password' },\n _react2.default.createElement('input', { type: 'password', id: 'id_repeat_password', className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.bindInput('repeat_password'),\n value: this.state.repeat_password })\n ),\n _react2.default.createElement('hr', null),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Your current password\"), 'for': 'id_password' },\n _react2.default.createElement('input', { type: 'password', id: 'id_password', className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.bindInput('password'),\n value: this.state.password })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-footer' },\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Change password\")\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../button\":5,\"../../form\":52,\"../../form-group\":51,\"react\":\"react\"}],84:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _changeEmail = require('./change-email');\n\nvar _changeEmail2 = _interopRequireDefault(_changeEmail);\n\nvar _changePassword = require('./change-password');\n\nvar _changePassword2 = _interopRequireDefault(_changePassword);\n\nvar _index = require('../../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _pageTitle = require('../../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: gettext(\"Change email or password\"),\n parent: gettext(\"Change your options\")\n });\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_changeEmail2.default, { user: this.props.user }),\n _react2.default.createElement(_changePassword2.default, { user: this.props.user }),\n _react2.default.createElement(\n 'p',\n { className: 'message-line' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'warning'\n ),\n _react2.default.createElement(\n 'a',\n { href: _index2.default.get('FORGOTTEN_PASSWORD_URL') },\n gettext(\"Change forgotten password\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../index\":291,\"../../../services/page-title\":360,\"./change-email\":82,\"./change-password\":83,\"react\":\"react\"}],85:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _stringCount = require('../utils/string-count');\n\nvar _stringCount2 = _interopRequireDefault(_stringCount);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getClassName',\n value: function getClassName() {\n if (this.props.copy && this.props.copy.length) {\n if ((0, _stringCount2.default)(this.props.copy, ' 2,\n choice: choice,\n disabled: _this2.props.disabled,\n key: choice.hash,\n onChange: _this2.onChange,\n onDelete: _this2.onDelete\n });\n })\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sm',\n disabled: this.props.disabled,\n onClick: this.onAdd,\n type: 'button'\n },\n gettext(\"Add choice\")\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\nvar PollChoice = exports.PollChoice = function (_React$Component2) {\n _inherits(PollChoice, _React$Component2);\n\n function PollChoice() {\n var _ref2;\n\n var _temp2, _this3, _ret2;\n\n _classCallCheck(this, PollChoice);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this3 = _possibleConstructorReturn(this, (_ref2 = PollChoice.__proto__ || Object.getPrototypeOf(PollChoice)).call.apply(_ref2, [this].concat(args))), _this3), _this3.onChange = function (event) {\n _this3.props.onChange(_this3.props.choice.hash, event.target.value);\n }, _this3.onDelete = function () {\n var deleteItem = confirm(gettext(\"Are you sure you want to delete this choice?\"));\n if (deleteItem) {\n _this3.props.onDelete(_this3.props.choice.hash);\n }\n }, _temp2), _possibleConstructorReturn(_this3, _ret2);\n }\n\n _createClass(PollChoice, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'li',\n { className: 'list-group-item' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn',\n disabled: !this.props.canDelete || this.props.disabled,\n onClick: this.onDelete,\n title: gettext(\"Delete this choice\"),\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'close'\n )\n ),\n _react2.default.createElement('input', {\n disabled: this.props.disabled,\n maxLength: '255',\n placeholder: gettext(\"choice label\"),\n type: 'text',\n onChange: this.onChange,\n value: this.props.choice.label\n })\n );\n }\n }]);\n\n return PollChoice;\n}(_react2.default.Component);\n\nfunction generateRandomHash() {\n var randomHash = '';\n while (randomHash.length != 12) {\n randomHash = Math.random().toString(36).replace(/[^a-zA-Z0-9]+/g, '').substr(1, 12);\n }\n return randomHash;\n}\n\n},{\"react\":\"react\"}],98:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.PollPublicSwitch = PollPublicSwitch;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _choicesControl = require('./choices-control');\n\nvar _choicesControl2 = _interopRequireDefault(_choicesControl);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _yesNoSwitch = require('../../yes-no-switch');\n\nvar _yesNoSwitch2 = _interopRequireDefault(_yesNoSwitch);\n\nvar _poll = require('../../../reducers/poll');\n\nvar poll = _interopRequireWildcard(_poll);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _posting = require('../../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.setChoices = function (choices) {\n var errors = Object.assign({}, errors, { choices: null });\n\n _this.setState({\n choices: choices,\n errors: errors\n });\n };\n\n _this.onCancel = function () {\n var cancel = confirm(gettext(\"Are you sure you want to discard poll?\"));\n if (cancel) {\n _posting2.default.close();\n }\n };\n\n var poll = props.poll || {\n question: '',\n choices: [{\n hash: 'choice-10000',\n label: ''\n }, {\n hash: 'choice-20000',\n label: ''\n }],\n length: 0,\n allowed_choices: 1,\n allow_revotes: 0,\n is_public: 0\n };\n\n _this.state = {\n isLoading: false,\n isEdit: !!poll.question,\n\n question: poll.question,\n choices: poll.choices,\n length: poll.length,\n allowed_choices: poll.allowed_choices,\n allow_revotes: poll.allow_revotes,\n is_public: poll.is_public,\n\n validators: {\n question: [],\n choices: [],\n length: [],\n allowed_choices: []\n },\n\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'send',\n value: function send() {\n var data = {\n question: this.state.question,\n choices: this.state.choices,\n length: this.state.length,\n allowed_choices: this.state.allowed_choices,\n allow_revotes: this.state.allow_revotes,\n is_public: this.state.is_public\n };\n\n if (this.state.isEdit) {\n return _ajax2.default.put(this.props.poll.api.index, data);\n } else {\n return _ajax2.default.post(this.props.thread.api.poll, data);\n }\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(data) {\n _store2.default.dispatch(poll.replace(data));\n\n if (this.state.isEdit) {\n _snackbar2.default.success(gettext(\"Poll has been edited.\"));\n } else {\n _snackbar2.default.success(gettext(\"Poll has been posted.\"));\n }\n\n _posting2.default.close();\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n if (rejection.non_field_errors) {\n rejection.allowed_choices = rejection.non_field_errors;\n }\n\n this.setState({\n 'errors': Object.assign({}, rejection)\n });\n\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'poll-form' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-form' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'fieldset',\n null,\n _react2.default.createElement(\n 'legend',\n null,\n gettext(\"Question and choices\")\n ),\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Poll question\"),\n 'for': 'id_questions',\n validation: this.state.errors.question\n },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n id: 'id_questions',\n onChange: this.bindInput('question'),\n type: 'text',\n maxLength: '255',\n value: this.state.question\n })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Available choices\"),\n validation: this.state.errors.choices\n },\n _react2.default.createElement(_choicesControl2.default, {\n choices: this.state.choices,\n disabled: this.state.isLoading,\n setChoices: this.setChoices\n })\n )\n ),\n _react2.default.createElement(\n 'fieldset',\n null,\n _react2.default.createElement(\n 'legend',\n null,\n gettext(\"Voting\")\n ),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-6' },\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Poll length\"),\n helpText: gettext(\"Enter number of days for which voting in this poll should be possible or zero to run this poll indefinitely.\"),\n 'for': 'id_length',\n validation: this.state.errors.length\n },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n id: 'id_length',\n onChange: this.bindInput('length'),\n type: 'text',\n value: this.state.length\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-6' },\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Allowed choices\"),\n 'for': 'id_allowed_choices',\n validation: this.state.errors.allowed_choices\n },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n id: 'id_allowed_choices',\n onChange: this.bindInput('allowed_choices'),\n type: 'text',\n maxLength: '255',\n value: this.state.allowed_choices\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(PollPublicSwitch, {\n bindInput: this.bindInput,\n disabled: this.state.isLoading,\n isEdit: this.state.isEdit,\n value: this.state.is_public\n }),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-6' },\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Allow vote changes\"),\n 'for': 'id_allow_revotes'\n },\n _react2.default.createElement(_yesNoSwitch2.default, {\n id: 'id_allow_revotes',\n disabled: this.state.isLoading,\n iconOn: 'check',\n iconOff: 'close',\n labelOn: gettext(\"Allow participants to change their vote\"),\n labelOff: gettext(\"Don't allow participants to change their vote\"),\n onChange: this.bindInput('allow_revotes'),\n value: this.state.allow_revotes\n })\n )\n )\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-footer text-right' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n disabled: this.state.isLoading,\n onClick: this.onCancel,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n ' ',\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-primary',\n loading: this.state.isLoading\n },\n this.state.isEdit ? gettext(\"Save changes\") : gettext(\"Post poll\")\n )\n )\n )\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\nfunction PollPublicSwitch(props) {\n if (props.isEdit) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-6' },\n _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Make voting public\"),\n helpText: gettext(\"Making voting public will allow everyone to access detailed list of votes, showing which users voted for which choices and at which times. This option can't be changed after poll's creation. Moderators may see voting details for all polls.\"),\n 'for': 'id_is_public'\n },\n _react2.default.createElement(_yesNoSwitch2.default, {\n id: 'id_is_public',\n disabled: props.disabled,\n iconOn: 'visibility',\n iconOff: 'visibility_off',\n labelOn: gettext(\"Votes are public\"),\n labelOff: gettext(\"Votes are hidden\"),\n onChange: props.bindInput('is_public'),\n value: props.value\n })\n )\n );\n}\n\n},{\"../../../reducers/poll\":339,\"../../../services/ajax\":352,\"../../../services/posting\":362,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../button\":5,\"../../form\":52,\"../../form-group\":51,\"../../yes-no-switch\":289,\"./choices-control\":97,\"react\":\"react\"}],99:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.PollForm = exports.Poll = undefined;\n\nvar _poll = require('./poll');\n\nvar _poll2 = _interopRequireDefault(_poll);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.Poll = _poll2.default;\nexports.PollForm = _form2.default;\n\n},{\"./form\":98,\"./poll\":101}],100:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled list-inline poll-details' },\n _react2.default.createElement(PollVotes, { votes: props.poll.votes }),\n _react2.default.createElement(PollLength, { poll: props.poll }),\n _react2.default.createElement(PollIsPublic, { poll: props.poll }),\n _react2.default.createElement(PollCreation, { poll: props.poll })\n );\n};\n\nexports.PollCreation = PollCreation;\nexports.getPoster = getPoster;\nexports.getPostedOn = getPostedOn;\nexports.PollLength = PollLength;\nexports.getEndsOn = getEndsOn;\nexports.PollVotes = PollVotes;\nexports.PollIsPublic = PollIsPublic;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _escapeHtml = require('../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nvar DATE_ABBR = '%(relative)s';\nvar USER_SPAN = '%(user)s';\nvar USER_URL = '%(user)s';\n\nfunction PollCreation(props) {\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"Posted by %(poster)s %(posted_on)s.\")), {\n poster: getPoster(props.poll),\n posted_on: getPostedOn(props.poll)\n }, true);\n\n return _react2.default.createElement('li', {\n className: 'poll-info-creation',\n dangerouslySetInnerHTML: { __html: message }\n });\n}\n\nfunction getPoster(poll) {\n if (poll.url.poster) {\n return interpolate(USER_URL, {\n url: (0, _escapeHtml2.default)(poll.url.poster),\n user: (0, _escapeHtml2.default)(poll.poster_name)\n }, true);\n }\n\n return interpolate(USER_SPAN, {\n user: (0, _escapeHtml2.default)(poll.poster_name)\n }, true);\n}\n\nfunction getPostedOn(poll) {\n return interpolate(DATE_ABBR, {\n absolute: (0, _escapeHtml2.default)(poll.posted_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(poll.posted_on.fromNow())\n }, true);\n}\n\nfunction PollLength(props) {\n if (!props.poll.length) {\n return null;\n }\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"Voting ends %(ends_on)s.\")), {\n ends_on: getEndsOn(props.poll)\n }, true);\n\n return _react2.default.createElement('li', {\n className: 'poll-info-ends-on',\n dangerouslySetInnerHTML: { __html: message }\n });\n}\n\nfunction getEndsOn(poll) {\n return interpolate(DATE_ABBR, {\n absolute: (0, _escapeHtml2.default)(poll.endsOn.format('LLL')),\n relative: (0, _escapeHtml2.default)(poll.endsOn.fromNow())\n }, true);\n}\n\nfunction PollVotes(props) {\n var message = ngettext(\"%(votes)s vote.\", \"%(votes)s votes.\", props.votes);\n var label = interpolate(message, {\n 'votes': props.votes\n }, true);\n\n return _react2.default.createElement(\n 'li',\n { className: 'poll-info-votes' },\n label\n );\n}\n\nfunction PollIsPublic(props) {\n if (!props.poll.is_public) {\n return null;\n }\n\n return _react2.default.createElement(\n 'li',\n { className: 'poll-info-public' },\n gettext(\"Votes are public.\")\n );\n}\n\n},{\"../../utils/escape-html\":370,\"react\":\"react\"}],101:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.getIsPollOver = getIsPollOver;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _results = require('./results');\n\nvar _results2 = _interopRequireDefault(_results);\n\nvar _voting = require('./voting');\n\nvar _voting2 = _interopRequireDefault(_voting);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.showResults = function () {\n _this.setState({\n showResults: true\n });\n };\n\n _this.showVoting = function () {\n _this.setState({\n showResults: false\n });\n };\n\n var showResults = true;\n if (props.user.id && !props.poll.hasSelectedChoices) {\n showResults = false;\n }\n\n _this.state = {\n showResults: showResults\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n if (!this.props.thread.poll) return null;\n\n var isPollOver = getIsPollOver(this.props.poll);\n\n if (!isPollOver && this.props.poll.acl.can_vote && !this.state.showResults) {\n return _react2.default.createElement(_voting2.default, _extends({ showResults: this.showResults }, this.props));\n } else {\n return _react2.default.createElement(_results2.default, _extends({\n isPollOver: isPollOver,\n showVoting: this.showVoting\n }, this.props));\n }\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction getIsPollOver(poll) {\n if (poll.length) {\n return (0, _moment2.default)().isAfter(poll.endsOn);\n }\n return false;\n}\n\n},{\"./results\":103,\"./voting\":107,\"moment\":\"moment\",\"react\":\"react\"}],102:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n \"div\",\n { className: \"poll-choices-bars\" },\n props.poll.choices.map(function (choice) {\n return _react2.default.createElement(PollChoice, {\n choice: choice,\n key: choice.hash,\n poll: props.poll\n });\n })\n );\n};\n\nexports.PollChoice = PollChoice;\nexports.ChoiceVotes = ChoiceVotes;\nexports.getVotesLabel = getVotesLabel;\nexports.UserChoice = UserChoice;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction PollChoice(props) {\n var proc = 0;\n if (props.choice.votes && props.poll.votes) {\n proc = Math.ceil(props.choice.votes * 100 / props.poll.votes);\n }\n\n return _react2.default.createElement(\n \"dl\",\n { className: \"dl-horizontal\" },\n _react2.default.createElement(\n \"dt\",\n null,\n props.choice.label\n ),\n _react2.default.createElement(\n \"dd\",\n null,\n _react2.default.createElement(\n \"div\",\n { className: \"progress\" },\n _react2.default.createElement(\n \"div\",\n {\n className: \"progress-bar\",\n role: \"progressbar\",\n \"aria-valuenow\": proc,\n \"aria-valuemin\": \"0\",\n \"aria-valuemax\": \"100\",\n style: { width: proc + '%' }\n },\n _react2.default.createElement(\n \"span\",\n { className: \"sr-only\" },\n getVotesLabel(props.votes, props.proc)\n )\n )\n ),\n _react2.default.createElement(\n \"ul\",\n { className: \"list-unstyled list-inline poll-chart\" },\n _react2.default.createElement(ChoiceVotes, {\n proc: proc,\n votes: props.choice.votes\n }),\n _react2.default.createElement(UserChoice, { selected: props.choice.selected })\n )\n )\n );\n}\n\nfunction ChoiceVotes(props) {\n return _react2.default.createElement(\n \"li\",\n { className: \"poll-chart-votes\" },\n getVotesLabel(props.votes, props.proc)\n );\n}\n\nfunction getVotesLabel(votes, proc) {\n var message = ngettext(\"%(votes)s vote, %(proc)s% of total.\", \"%(votes)s votes, %(proc)s% of total.\", votes);\n\n return interpolate(message, {\n 'votes': votes,\n 'proc': proc\n }, true);\n}\n\nfunction UserChoice(props) {\n if (!props.selected) return null;\n\n return _react2.default.createElement(\n \"li\",\n { className: \"poll-chart-selected\" },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"check_box\"\n ),\n gettext(\"Your choice.\")\n );\n}\n\n},{\"react\":\"react\"}],103:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-poll' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'h2',\n null,\n props.poll.question\n ),\n _react2.default.createElement(_info2.default, { poll: props.poll }),\n _react2.default.createElement(_chart2.default, { poll: props.poll }),\n _react2.default.createElement(_options2.default, {\n isPollOver: props.isPollOver,\n poll: props.poll,\n showVoting: props.showVoting,\n thread: props.thread\n })\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _chart = require('./chart');\n\nvar _chart2 = _interopRequireDefault(_chart);\n\nvar _options = require('./options');\n\nvar _options2 = _interopRequireDefault(_options);\n\nvar _info = require('../info');\n\nvar _info2 = _interopRequireDefault(_info);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../info\":100,\"./chart\":102,\"./options\":105,\"react\":\"react\"}],104:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ModalBody = ModalBody;\nexports.ChoicesList = ChoicesList;\nexports.ChoiceDetails = ChoiceDetails;\nexports.VotesCount = VotesCount;\nexports.VotesList = VotesList;\nexports.Voter = Voter;\nexports.VoteDate = VoteDate;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _modalMessage = require('../../modal-message');\n\nvar _modalMessage2 = _interopRequireDefault(_modalMessage);\n\nvar _modalLoader = require('../../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n isLoading: true,\n error: null,\n data: []\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(this.props.poll.api.votes).then(function (data) {\n var hydratedData = data.map(function (choice) {\n return Object.assign({}, choice, {\n voters: choice.voters.map(function (voter) {\n return Object.assign({}, voter, {\n voted_on: (0, _moment2.default)(voter.voted_on)\n });\n })\n });\n });\n\n _this2.setState({\n isLoading: false,\n data: hydratedData\n });\n }, function (rejection) {\n _this2.setState({\n isLoading: false,\n error: rejection.detail\n });\n });\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n {\n className: 'modal-dialog' + (this.state.error ? ' modal-message' : ' modal-sm'),\n role: 'document'\n },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: 'close',\n 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\")\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Poll votes\")\n )\n ),\n _react2.default.createElement(ModalBody, {\n data: this.state.data,\n error: this.state.error,\n isLoading: this.state.isLoading\n })\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction ModalBody(props) {\n if (props.isLoading) {\n return _react2.default.createElement(_modalLoader2.default, null);\n } else if (props.error) {\n return _react2.default.createElement(_modalMessage2.default, {\n icon: 'error_outline',\n message: props.error\n });\n }\n\n return _react2.default.createElement(ChoicesList, {\n data: props.data\n });\n}\n\nfunction ChoicesList(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-poll-votes' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled votes-details' },\n props.data.map(function (choice) {\n return _react2.default.createElement(ChoiceDetails, _extends({\n key: choice.hash\n }, choice));\n })\n )\n );\n}\n\nfunction ChoiceDetails(props) {\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'h4',\n null,\n props.label\n ),\n _react2.default.createElement(VotesCount, { votes: props.votes }),\n _react2.default.createElement(VotesList, { voters: props.voters }),\n _react2.default.createElement('hr', null)\n );\n}\n\nfunction VotesCount(props) {\n var message = ngettext(\"%(votes)s user has voted for this choice.\", \"%(votes)s users have voted for this choice.\", props.votes);\n\n var label = interpolate(message, {\n 'votes': props.votes\n }, true);\n\n return _react2.default.createElement(\n 'p',\n null,\n label\n );\n}\n\nfunction VotesList(props) {\n if (!props.voters.length) return null;\n\n return _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled' },\n props.voters.map(function (user) {\n return _react2.default.createElement(Voter, _extends({\n key: user.username\n }, user));\n })\n );\n}\n\nfunction Voter(props) {\n if (props.url) {\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n {\n className: 'item-title',\n href: props.url\n },\n props.username\n ),\n ' ',\n _react2.default.createElement(VoteDate, { voted_on: props.voted_on })\n );\n }\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'strong',\n null,\n props.username\n ),\n ' ',\n _react2.default.createElement(VoteDate, { voted_on: props.voted_on })\n );\n}\n\nfunction VoteDate(props) {\n return _react2.default.createElement(\n 'abbr',\n {\n className: 'text-muted',\n title: props.voted_on.format('LLL')\n },\n props.voted_on.fromNow()\n );\n}\n\n},{\"../../../services/ajax\":352,\"../../modal-loader\":57,\"../../modal-message\":58,\"moment\":\"moment\",\"react\":\"react\"}],105:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Delete = exports.Edit = exports.SeeVotes = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n var isPollOver = props.isPollOver,\n poll = props.poll,\n showVoting = props.showVoting,\n thread = props.thread;\n\n\n if (!isVisible(isPollOver, poll.acl, poll)) return null;\n\n var controls = [];\n\n var canVote = poll.acl.can_vote;\n var canChangeVote = !poll.hasSelectedChoices || poll.allow_revotes;\n\n if (canVote && canChangeVote) controls.push(0);\n if (poll.is_public || poll.acl.can_see_votes) controls.push(1);\n if (poll.acl.can_edit) controls.push(2);\n if (poll.acl.can_delete) controls.push(3);\n\n return _react2.default.createElement(\n 'div',\n { className: 'row poll-options' },\n _react2.default.createElement(ChangeVote, {\n controls: controls,\n isPollOver: isPollOver,\n poll: poll,\n showVoting: showVoting\n }),\n _react2.default.createElement(SeeVotes, {\n controls: controls,\n poll: poll\n }),\n _react2.default.createElement(Edit, {\n controls: controls,\n poll: poll,\n thread: thread\n }),\n _react2.default.createElement(Delete, {\n controls: controls,\n poll: poll\n })\n );\n};\n\nexports.isVisible = isVisible;\nexports.getClassName = getClassName;\nexports.ChangeVote = ChangeVote;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _modal = require('./modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _poll = require('../../../reducers/poll');\n\nvar poll = _interopRequireWildcard(_poll);\n\nvar _thread = require('../../../reducers/thread');\n\nvar thread = _interopRequireWildcard(_thread);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal3 = require('../../../services/modal');\n\nvar _modal4 = _interopRequireDefault(_modal3);\n\nvar _posting = require('../../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nfunction isVisible(isPollOver, acl, poll) {\n return poll.is_public || acl.can_delete || acl.can_edit || acl.can_see_votes || acl.can_vote && !isPollOver && (!poll.hasSelectedChoices || poll.allow_revotes);\n}\n\nfunction getClassName(controls, control) {\n var className = 'col-xs-6';\n\n if (controls.length === 1) {\n className = 'col-xs-12';\n }\n\n if (controls.length === 3 && controls[0] === control) {\n className = 'col-xs-12';\n }\n\n return className + ' col-sm-3 col-md-2';\n}\n\nfunction ChangeVote(props) {\n var canVote = props.poll.acl.can_vote;\n var canChangeVote = !props.poll.hasSelectedChoices || props.poll.allow_revotes;\n\n if (!(canVote && canChangeVote)) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: getClassName(props.controls, 0) },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-sm',\n disabled: props.poll.isBusy,\n onClick: props.showVoting\n },\n gettext(\"Vote\")\n )\n );\n}\n\nvar SeeVotes = exports.SeeVotes = function (_React$Component) {\n _inherits(SeeVotes, _React$Component);\n\n function SeeVotes() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, SeeVotes);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = SeeVotes.__proto__ || Object.getPrototypeOf(SeeVotes)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _modal4.default.show(_react2.default.createElement(_modal2.default, { poll: _this.props.poll }));\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(SeeVotes, [{\n key: 'render',\n value: function render() {\n var seeVotes = this.props.poll.is_public || this.props.poll.acl.can_see_votes;\n if (!seeVotes) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: getClassName(this.props.controls, 1) },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-sm',\n disabled: this.props.poll.isBusy,\n onClick: this.onClick\n },\n gettext(\"See votes\")\n )\n );\n }\n }]);\n\n return SeeVotes;\n}(_react2.default.Component);\n\nvar Edit = exports.Edit = function (_React$Component2) {\n _inherits(Edit, _React$Component2);\n\n function Edit() {\n var _ref2;\n\n var _temp2, _this2, _ret2;\n\n _classCallCheck(this, Edit);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, (_ref2 = Edit.__proto__ || Object.getPrototypeOf(Edit)).call.apply(_ref2, [this].concat(args))), _this2), _this2.onClick = function () {\n _posting2.default.open({\n submit: _this2.props.poll.api.index,\n\n thread: _this2.props.thread,\n poll: _this2.props.poll,\n\n mode: 'POLL'\n });\n }, _temp2), _possibleConstructorReturn(_this2, _ret2);\n }\n\n _createClass(Edit, [{\n key: 'render',\n value: function render() {\n if (!this.props.poll.acl.can_edit) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: getClassName(this.props.controls, 2) },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-sm',\n disabled: this.props.poll.isBusy,\n onClick: this.onClick\n },\n gettext(\"Edit\")\n )\n );\n }\n }]);\n\n return Edit;\n}(_react2.default.Component);\n\nvar Delete = exports.Delete = function (_React$Component3) {\n _inherits(Delete, _React$Component3);\n\n function Delete() {\n var _ref3;\n\n var _temp3, _this3, _ret3;\n\n _classCallCheck(this, Delete);\n\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _ret3 = (_temp3 = (_this3 = _possibleConstructorReturn(this, (_ref3 = Delete.__proto__ || Object.getPrototypeOf(Delete)).call.apply(_ref3, [this].concat(args))), _this3), _this3.onClick = function () {\n var deletePoll = confirm(gettext(\"Are you sure you want to delete this poll? This action is not reversible.\"));\n if (!deletePoll) return false;\n\n _store2.default.dispatch(poll.busy());\n\n _ajax2.default.delete(_this3.props.poll.api.index).then(_this3.handleSuccess, _this3.handleError);\n }, _this3.handleSuccess = function (newThreadAcl) {\n _snackbar2.default.success(\"Poll has been deleted\");\n _store2.default.dispatch(poll.remove());\n _store2.default.dispatch(thread.updateAcl(newThreadAcl));\n }, _this3.handleError = function (rejection) {\n _snackbar2.default.apiError(rejection);\n _store2.default.dispatch(poll.release());\n }, _temp3), _possibleConstructorReturn(_this3, _ret3);\n }\n\n _createClass(Delete, [{\n key: 'render',\n value: function render() {\n if (!this.props.poll.acl.can_delete) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: getClassName(this.props.controls, 3) },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-sm',\n disabled: this.props.poll.isBusy,\n onClick: this.onClick\n },\n gettext(\"Delete\")\n )\n );\n }\n }]);\n\n return Delete;\n}(_react2.default.Component);\n\n},{\"../../../reducers/poll\":339,\"../../../reducers/thread\":347,\"../../../services/ajax\":352,\"../../../services/modal\":358,\"../../../services/posting\":362,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"./modal\":104,\"react\":\"react\"}],106:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled list-inline poll-help' },\n _react2.default.createElement(PollChoicesLeft, { choicesLeft: props.choicesLeft }),\n _react2.default.createElement(PollAllowRevote, { poll: props.poll })\n );\n};\n\nexports.PollChoicesLeft = PollChoicesLeft;\nexports.PollAllowRevote = PollAllowRevote;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _escapeHtml = require('../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nvar DATE_ABBR = '%(relative)s';\nvar USER_SPAN = '%(user)s';\nvar USER_URL = '%(user)s';\n\nfunction PollChoicesLeft(_ref) {\n var choicesLeft = _ref.choicesLeft;\n\n if (choicesLeft === 0) {\n return _react2.default.createElement(\n 'li',\n { className: 'poll-help-choices-left' },\n gettext(\"You can't select any more choices.\")\n );\n }\n\n var message = ngettext(\"You can select %(choices)s more choice.\", \"You can select %(choices)s more choices.\", choicesLeft);\n\n var label = interpolate(message, {\n 'choices': choicesLeft\n }, true);\n\n return _react2.default.createElement(\n 'li',\n { className: 'poll-help-choices-left' },\n label\n );\n}\n\nfunction PollAllowRevote(props) {\n if (props.poll.allow_revotes) {\n return _react2.default.createElement(\n 'li',\n { className: 'poll-help-allow-revotes' },\n gettext(\"You can change your vote later.\")\n );\n }\n\n return _react2.default.createElement(\n 'li',\n { className: 'poll-help-no-revotes' },\n gettext(\"Votes are final.\")\n );\n}\n\n},{\"../../../utils/escape-html\":370,\"react\":\"react\"}],107:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _help = require('./help');\n\nvar _help2 = _interopRequireDefault(_help);\n\nvar _select = require('./select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nvar _utils = require('./utils');\n\nvar _info = require('../info');\n\nvar _info2 = _interopRequireDefault(_info);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _poll = require('../../../reducers/poll');\n\nvar poll = _interopRequireWildcard(_poll);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.toggleChoice = function (hash) {\n var choice = (0, _utils.getChoiceFromHash)(_this.state.choices, hash);\n\n var choices = null;\n if (!choice.selected) {\n choices = _this.selectChoice(choice, hash);\n } else {\n choices = _this.deselectChoice(choice, hash);\n }\n\n _this.setState({\n choices: choices,\n choicesLeft: (0, _utils.getChoicesLeft)(_this.props.poll, choices)\n });\n };\n\n _this.selectChoice = function (choice, hash) {\n var choicesLeft = (0, _utils.getChoicesLeft)(_this.props.poll, _this.state.choices);\n\n if (!choicesLeft) {\n for (var i in _this.state.choices.slice()) {\n var item = _this.state.choices[i];\n if (item.selected && item.hash != hash) {\n item.selected = false;\n break;\n }\n }\n }\n\n return _this.state.choices.map(function (choice) {\n return Object.assign({}, choice, {\n selected: choice.hash == hash ? true : choice.selected\n });\n });\n };\n\n _this.deselectChoice = function (choice, hash) {\n return _this.state.choices.map(function (choice) {\n return Object.assign({}, choice, {\n selected: choice.hash == hash ? false : choice.selected\n });\n });\n };\n\n _this.state = {\n isLoading: false,\n\n choices: props.poll.choices,\n choicesLeft: (0, _utils.getChoicesLeft)(props.poll, props.poll.choices)\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n if (this.state.choicesLeft === this.props.poll.allowed_choices) {\n _snackbar2.default.error(gettext(\"You need to select at least one choice\"));\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n var data = [];\n for (var i in this.state.choices.slice()) {\n var item = this.state.choices[i];\n if (item.selected) {\n data.push(item.hash);\n }\n }\n\n return _ajax2.default.post(this.props.poll.api.votes, data);\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(data) {\n _store2.default.dispatch(poll.replace(data));\n _snackbar2.default.success(gettext(\"Your vote has been saved.\"));\n\n this.props.showResults();\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-poll' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'h2',\n null,\n this.props.poll.question\n ),\n _react2.default.createElement(_info2.default, { poll: this.props.poll }),\n _react2.default.createElement(_select2.default, {\n choices: this.state.choices,\n toggleChoice: this.toggleChoice\n }),\n _react2.default.createElement(_help2.default, {\n choicesLeft: this.state.choicesLeft,\n poll: this.props.poll\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-footer' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-6 col-sm-4 col-md-2' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-primary btn-block btn-sm',\n loading: this.state.isLoading\n },\n gettext(\"Save your vote\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-6 col-sm-4 col-md-2' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-sm',\n disabled: this.state.isLoading,\n onClick: this.props.showResults,\n type: 'button'\n },\n gettext(\"See results\")\n )\n )\n )\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../reducers/poll\":339,\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../button\":5,\"../../form\":52,\"../info\":100,\"./help\":106,\"./select\":108,\"./utils\":109,\"react\":\"react\"}],108:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ChoiceSelect = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n return _react2.default.createElement(\n \"ul\",\n { className: \"list-unstyled poll-select-choices\" },\n props.choices.map(function (choice) {\n return _react2.default.createElement(ChoiceSelect, {\n choice: choice,\n key: choice.hash,\n toggleChoice: props.toggleChoice\n });\n })\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar ChoiceSelect = exports.ChoiceSelect = function (_React$Component) {\n _inherits(ChoiceSelect, _React$Component);\n\n function ChoiceSelect() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, ChoiceSelect);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = ChoiceSelect.__proto__ || Object.getPrototypeOf(ChoiceSelect)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _this.props.toggleChoice(_this.props.choice.hash);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(ChoiceSelect, [{\n key: \"render\",\n value: function render() {\n return _react2.default.createElement(\n \"li\",\n { className: \"poll-select-choice\" },\n _react2.default.createElement(\n \"button\",\n {\n className: this.props.choice.selected ? 'btn btn-selected' : 'btn',\n onClick: this.onClick,\n type: \"button\"\n },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n this.props.choice.selected ? 'check_box' : 'check_box_outline_blank'\n ),\n _react2.default.createElement(\n \"strong\",\n null,\n this.props.choice.label\n )\n )\n );\n }\n }]);\n\n return ChoiceSelect;\n}(_react2.default.Component);\n\n},{\"react\":\"react\"}],109:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getChoiceFromHash = getChoiceFromHash;\nexports.getChoicesLeft = getChoicesLeft;\nfunction getChoiceFromHash(choices, hash) {\n for (var i in choices) {\n var choice = choices[i];\n if (choice.hash === hash) {\n return choice;\n }\n }\n\n return null;\n}\n\nfunction getChoicesLeft(poll, choices) {\n var selection = [];\n for (var i in choices) {\n var choice = choices[i];\n if (choice.selected) {\n selection.push(choice);\n }\n }\n\n return poll.allowed_choices - selection.length;\n}\n\n},{}],110:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n \"div\",\n { className: \"modal-body post-changelog-diff\" },\n _react2.default.createElement(\n \"ul\",\n { className: \"list-unstyled\" },\n props.diff.map(function (item, i) {\n return _react2.default.createElement(DiffItem, { item: item, key: i });\n })\n )\n );\n};\n\nexports.DiffItem = DiffItem;\nexports.getItemClassName = getItemClassName;\nexports.cleanItem = cleanItem;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction DiffItem(props) {\n if (props.item[0] === '?') return null;\n\n return _react2.default.createElement(\n \"li\",\n { className: getItemClassName(props.item) },\n cleanItem(props.item)\n );\n}\n\nfunction getItemClassName(item) {\n var className = 'diff-item';\n if (item[0] === '-') {\n className += ' diff-item-sub';\n } else if (item[0] === '+') {\n className += ' diff-item-add';\n }\n return className;\n}\n\nfunction cleanItem(item) {\n return item.substr(2);\n}\n\n},{\"react\":\"react\"}],111:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _this.props.revertEdit(_this.props.edit.id);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n if (!this.props.canRevert) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'modal-footer visible-xs-block' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-sm btn-block',\n disabled: this.props.disabled,\n onClick: this.onClick,\n title: gettext(\"Revert post to state from before this edit.\")\n },\n gettext(\"Revert\")\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../button\":5,\"react\":\"react\"}],112:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ModalDialog = ModalDialog;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _diff = require('./diff');\n\nvar _diff2 = _interopRequireDefault(_diff);\n\nvar _footer = require('./footer');\n\nvar _footer2 = _interopRequireDefault(_footer);\n\nvar _toolbar = require('./toolbar');\n\nvar _toolbar2 = _interopRequireDefault(_toolbar);\n\nvar _utils = require('./utils');\n\nvar _modalMessage = require('../modal-message');\n\nvar _modalMessage2 = _interopRequireDefault(_modalMessage);\n\nvar _modalLoader = require('../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _post = require('../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.goToEdit = function () {\n var edit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n _this.setState({\n isBusy: true\n });\n\n var url = _this.props.post.api.edits;\n if (edit !== null) {\n url += '?edit=' + edit;\n }\n\n _ajax2.default.get(url).then(function (data) {\n _this.setState({\n isReady: true,\n isBusy: false,\n edit: (0, _utils.hydrateEdit)(data)\n });\n }, function (rejection) {\n _this.setState({\n isReady: true,\n isBusy: false,\n error: rejection.detail\n });\n });\n };\n\n _this.revertEdit = function (edit) {\n if (_this.state.isBusy) return;\n\n var confirmation = confirm(gettext(\"Are you sure you with to revert this post to the state from before this edit?\"));\n if (!confirmation) return;\n\n _this.setState({\n isBusy: true\n });\n\n var url = _this.props.post.api.edits + '?edit=' + edit;\n _ajax2.default.post(url).then(function (data) {\n var hydratedPost = post.hydrate(data);\n _store2.default.dispatch(post.patch(data, hydratedPost));\n\n _snackbar2.default.success(gettext(\"Post has been reverted to previous state.\"));\n _modal2.default.hide();\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n\n _this.setState({\n isBusy: false\n });\n });\n };\n\n _this.state = {\n isReady: false,\n isBusy: true,\n\n canRevert: props.post.acl.can_edit,\n\n error: null,\n edit: null\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.goToEdit();\n }\n }, {\n key: 'render',\n value: function render() {\n if (this.state.error) {\n return _react2.default.createElement(\n ModalDialog,\n { className: 'modal-dialog modal-message' },\n _react2.default.createElement(_modalMessage2.default, {\n message: this.state.error\n })\n );\n } else if (this.state.isReady) {\n return _react2.default.createElement(\n ModalDialog,\n null,\n _react2.default.createElement(_toolbar2.default, {\n canRevert: this.state.canRevert,\n disabled: this.state.isBusy,\n edit: this.state.edit,\n goToEdit: this.goToEdit,\n revertEdit: this.revertEdit\n }),\n _react2.default.createElement(_diff2.default, { diff: this.state.edit.diff }),\n _react2.default.createElement(_footer2.default, {\n canRevert: this.state.canRevert,\n disabled: this.state.isBusy,\n edit: this.state.edit,\n revertEdit: this.revertEdit\n })\n );\n }\n\n return _react2.default.createElement(\n ModalDialog,\n null,\n _react2.default.createElement(_modalLoader2.default, null)\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction ModalDialog(props) {\n return _react2.default.createElement(\n 'div',\n {\n className: props.className || \"modal-dialog\",\n role: 'document'\n },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Post edits history\")\n )\n ),\n props.children\n )\n );\n}\n\n},{\"../../reducers/post\":340,\"../../services/ajax\":352,\"../../services/modal\":358,\"../../services/snackbar\":363,\"../../services/store\":364,\"../modal-loader\":57,\"../modal-message\":58,\"./diff\":110,\"./footer\":111,\"./toolbar\":113,\"./utils\":114,\"react\":\"react\"}],113:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.GoBackBtn = GoBackBtn;\nexports.GoForwardBtn = GoForwardBtn;\nexports.GoLastBtn = GoLastBtn;\nexports.RevertBtn = RevertBtn;\nexports.Label = Label;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _escapeHtml = require('../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar DATE_ABBR = '%(relative)s';\nvar USER_SPAN = '%(user)s';\nvar USER_URL = '%(user)s';\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.goLast = function () {\n _this.props.goToEdit();\n }, _this.goForward = function () {\n _this.props.goToEdit(_this.props.edit.next);\n }, _this.goBack = function () {\n _this.props.goToEdit(_this.props.edit.previous);\n }, _this.revertEdit = function () {\n _this.props.revertEdit(_this.props.edit.id);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-toolbar post-changelog-toolbar' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-4' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-4' },\n _react2.default.createElement(GoBackBtn, {\n disabled: this.props.disabled,\n edit: this.props.edit,\n onClick: this.goBack\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-4' },\n _react2.default.createElement(GoForwardBtn, {\n disabled: this.props.disabled,\n edit: this.props.edit,\n onClick: this.goForward\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-4' },\n _react2.default.createElement(GoLastBtn, {\n disabled: this.props.disabled,\n edit: this.props.edit,\n onClick: this.goLast\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-5 xs-margin-top-half post-change-label' },\n _react2.default.createElement(Label, { edit: this.props.edit })\n ),\n _react2.default.createElement(RevertBtn, {\n canRevert: this.props.canRevert,\n disabled: this.props.disabled,\n onClick: this.revertEdit\n })\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction GoBackBtn(props) {\n return _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-block btn-icon btn-sm',\n disabled: props.disabled || !props.edit.previous,\n onClick: props.onClick,\n title: gettext(\"See previous change\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_left'\n )\n );\n}\n\nfunction GoForwardBtn(props) {\n return _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-block btn-icon btn-sm',\n disabled: props.disabled || !props.edit.next,\n onClick: props.onClick,\n title: gettext(\"See previous change\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_right'\n )\n );\n}\n\nfunction GoLastBtn(props) {\n return _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-block btn-icon btn-sm',\n disabled: props.disabled || !props.edit.next,\n onClick: props.onClick,\n title: gettext(\"See previous change\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'last_page'\n )\n );\n}\n\nfunction RevertBtn(props) {\n if (!props.canRevert) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-sm-3 hidden-xs' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-default btn-sm btn-block',\n disabled: props.disabled,\n onClick: props.onClick,\n title: gettext(\"Revert post to state from before this edit.\")\n },\n gettext(\"Revert\")\n )\n );\n}\n\nfunction Label(props) {\n var user = null;\n if (props.edit.url.editor) {\n user = interpolate(USER_URL, {\n url: (0, _escapeHtml2.default)(props.edit.url.editor),\n user: (0, _escapeHtml2.default)(props.edit.editor_name)\n }, true);\n } else {\n user = interpolate(USER_SPAN, {\n user: (0, _escapeHtml2.default)(props.edit.editor_name)\n }, true);\n }\n\n var date = interpolate(DATE_ABBR, {\n absolute: (0, _escapeHtml2.default)(props.edit.edited_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(props.edit.edited_on.fromNow())\n }, true);\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"By %(edited_by)s %(edited_on)s.\")), {\n edited_by: user,\n edited_on: date\n }, true);\n\n return _react2.default.createElement('p', { dangerouslySetInnerHTML: { __html: message } });\n}\n\n},{\"../../utils/escape-html\":370,\"../button\":5,\"react\":\"react\"}],114:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.hydrateEdit = hydrateEdit;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction hydrateEdit(json) {\n return Object.assign({}, json, {\n edited_on: (0, _moment2.default)(json.edited_on)\n });\n}\n\n},{\"moment\":\"moment\"}],115:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var isReady = _ref.isReady,\n posts = _ref.posts,\n poster = _ref.poster;\n\n if (!isReady) {\n return _react2.default.createElement(_preview2.default, null);\n }\n\n return _react2.default.createElement(\n 'ul',\n { className: 'posts-list post-feed ui-ready' },\n posts.map(function (post) {\n return _react2.default.createElement(_post2.default, {\n key: post.id,\n post: post,\n poster: poster\n });\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _post = require('./post');\n\nvar _post2 = _interopRequireDefault(_post);\n\nvar _preview = require('./preview');\n\nvar _preview2 = _interopRequireDefault(_preview);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./post\":118,\"./preview\":124,\"react\":\"react\"}],116:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (props.post.content) {\n return _react2.default.createElement(Default, props);\n } else {\n return _react2.default.createElement(Invalid, props);\n }\n};\n\nexports.Default = Default;\nexports.Invalid = Invalid;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _misagoMarkup = require('../../misago-markup');\n\nvar _misagoMarkup2 = _interopRequireDefault(_misagoMarkup);\n\nvar _escapeHtml = require('../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction Default(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'post-body' },\n _react2.default.createElement(_misagoMarkup2.default, { markup: props.post.content })\n );\n}\n\nfunction Invalid(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'post-body post-body-invalid' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"This post's contents cannot be displayed.\")\n ),\n _react2.default.createElement(\n 'p',\n { className: 'text-muted' },\n gettext(\"This error is caused by invalid post content manipulation.\")\n )\n );\n}\n\n},{\"../../../utils/escape-html\":370,\"../../misago-markup\":56,\"react\":\"react\"}],117:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post;\n var category = post.category,\n thread = post.thread;\n\n\n var tooltip = interpolate(gettext(\"posted %(posted_on)s\"), {\n 'posted_on': post.posted_on.format('LL, LT')\n }, true);\n\n return _react2.default.createElement(\n 'div',\n { className: 'post-heading' },\n _react2.default.createElement(\n 'a',\n {\n className: 'btn btn-link item-title',\n href: thread.url\n },\n thread.title\n ),\n _react2.default.createElement(\n 'a',\n {\n className: 'btn btn-link post-category',\n href: category.url.index\n },\n category.name\n ),\n _react2.default.createElement(\n 'a',\n {\n href: post.url.index,\n className: 'btn btn-link posted-on',\n title: tooltip\n },\n post.posted_on.fromNow()\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],118:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post,\n poster = _ref.poster;\n\n var user = poster || post.poster;\n\n var className = 'post';\n if (user && user.rank.css_class) {\n className += ' post-' + user.rank.css_class;\n }\n\n return _react2.default.createElement(\n 'li',\n {\n className: className,\n id: 'post-' + post.id\n },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-post' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(_postSide2.default, {\n post: post,\n poster: user\n }),\n _react2.default.createElement(_header2.default, { post: post }),\n _react2.default.createElement(_body2.default, { post: post })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _body = require('./body');\n\nvar _body2 = _interopRequireDefault(_body);\n\nvar _header = require('./header');\n\nvar _header2 = _interopRequireDefault(_header);\n\nvar _postSide = require('./post-side');\n\nvar _postSide2 = _interopRequireDefault(_postSide);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./body\":116,\"./header\":117,\"./post-side\":121,\"react\":\"react\"}],119:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post;\n\n return _react2.default.createElement(\n 'div',\n { className: 'post-side post-side-anonymous' },\n _react2.default.createElement(_button2.default, { post: post }),\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'span',\n null,\n _react2.default.createElement(_avatar2.default, {\n className: 'poster-avatar',\n size: 50\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'div',\n { className: 'media-heading' },\n _react2.default.createElement(\n 'span',\n { className: 'item-title' },\n post.poster_name\n )\n ),\n _react2.default.createElement(\n 'span',\n { className: 'user-title user-title-anonymous' },\n gettext(\"Removed user\")\n )\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../avatar\":3,\"./button\":120,\"react\":\"react\"}],120:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post;\n\n return _react2.default.createElement(\n \"a\",\n {\n className: \"btn btn-default btn-icon pull-right\",\n href: post.url.index\n },\n _react2.default.createElement(\n \"span\",\n { className: \"btn-text-left hidden-xs\" },\n gettext(\"See post\")\n ),\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"chevron_right\"\n )\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],121:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post,\n poster = _ref.poster;\n\n if (poster.id) {\n return _react2.default.createElement(_registered2.default, {\n post: post,\n poster: poster\n });\n }\n\n return _react2.default.createElement(_anonymous2.default, { post: post });\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _anonymous = require('./anonymous');\n\nvar _anonymous2 = _interopRequireDefault(_anonymous);\n\nvar _registered = require('./registered');\n\nvar _registered2 = _interopRequireDefault(_registered);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./anonymous\":119,\"./registered\":122,\"react\":\"react\"}],122:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post,\n poster = _ref.poster;\n\n return _react2.default.createElement(\n 'div',\n { className: 'post-side post-side-registered' },\n _react2.default.createElement(_button2.default, { post: post }),\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'a',\n { href: poster.url },\n _react2.default.createElement(_avatar2.default, {\n className: 'poster-avatar',\n size: 50,\n user: poster\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'div',\n { className: 'media-heading' },\n _react2.default.createElement(\n 'a',\n {\n className: 'item-title',\n href: poster.url\n },\n poster.username\n )\n ),\n _react2.default.createElement(_userTitle2.default, {\n title: poster.title,\n rank: poster.rank\n })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _userTitle = require('./user-title');\n\nvar _userTitle2 = _interopRequireDefault(_userTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../avatar\":3,\"./button\":120,\"./user-title\":123,\"react\":\"react\"}],123:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var rank = _ref.rank,\n title = _ref.title;\n\n var userTitle = title || rank.title || rank.name;\n\n var className = 'user-title';\n if (rank.css_class) {\n className += ' user-title-' + rank.css_class;\n }\n\n if (rank.is_tab) {\n return _react2.default.createElement(\n 'a',\n { className: className, href: rank.url },\n userTitle\n );\n }\n\n return _react2.default.createElement(\n 'span',\n { className: className },\n userTitle\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],124:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function () {\n return _react2.default.createElement(\n 'ul',\n { className: 'posts-list post-feed ui-preview' },\n _react2.default.createElement(\n 'li',\n { className: 'post' },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-post' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'div',\n { className: 'post-side post-side-anonymous' },\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'span',\n null,\n _react2.default.createElement(_avatar2.default, {\n className: 'poster-avatar',\n size: 50\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'div',\n { className: 'media-heading' },\n _react2.default.createElement(\n 'span',\n { className: 'item-title' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 200) + \"px\" }\n },\n '\\xA0'\n )\n )\n ),\n _react2.default.createElement(\n 'span',\n { className: 'user-title user-title-anonymous' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 200) + \"px\" }\n },\n '\\xA0'\n )\n )\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'post-heading' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 200) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'post-body' },\n _react2.default.createElement(\n 'article',\n { className: 'misago-markup' },\n _react2.default.createElement(\n 'p',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 200) + \"px\" }\n },\n '\\xA0'\n ),\n '\\xA0',\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 200) + \"px\" }\n },\n '\\xA0'\n ),\n '\\xA0',\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 200) + \"px\" }\n },\n '\\xA0'\n )\n )\n )\n )\n )\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _random = require('../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../utils/random\":375,\"../avatar\":3,\"react\":\"react\"}],125:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.hydrateLike = hydrateLike;\nexports.ModalDialog = ModalDialog;\nexports.LikesList = LikesList;\nexports.LikeDetails = LikeDetails;\nexports.LikeDate = LikeDate;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _avatar = require('./avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _modalMessage = require('./modal-message');\n\nvar _modalMessage2 = _interopRequireDefault(_modalMessage);\n\nvar _modalLoader = require('./modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n isReady: false,\n\n error: null,\n likes: []\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(this.props.post.api.likes).then(function (data) {\n _this2.setState({\n isReady: true,\n likes: data.map(hydrateLike)\n });\n }, function (rejection) {\n _this2.setState({\n isReady: true,\n error: rejection.detail\n });\n });\n }\n }, {\n key: 'render',\n value: function render() {\n if (this.state.error) {\n return _react2.default.createElement(\n ModalDialog,\n { className: 'modal-message' },\n _react2.default.createElement(_modalMessage2.default, {\n message: this.state.error\n })\n );\n } else if (this.state.isReady) {\n if (this.state.likes.length) {\n return _react2.default.createElement(\n ModalDialog,\n {\n className: 'modal-sm',\n likes: this.state.likes\n },\n _react2.default.createElement(LikesList, {\n likes: this.state.likes\n })\n );\n }\n\n return _react2.default.createElement(\n ModalDialog,\n { className: 'modal-message' },\n _react2.default.createElement(_modalMessage2.default, {\n message: gettext(\"No users have liked this post.\")\n })\n );\n }\n\n return _react2.default.createElement(\n ModalDialog,\n { className: 'modal-sm' },\n _react2.default.createElement(_modalLoader2.default, null)\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction hydrateLike(data) {\n return Object.assign({}, data, {\n liked_on: (0, _moment2.default)(data.liked_on)\n });\n}\n\nfunction ModalDialog(_ref) {\n var className = _ref.className,\n children = _ref.children,\n likes = _ref.likes;\n\n var title = gettext(\"Post Likes\");\n if (likes) {\n var likesCount = likes.length;\n var message = ngettext(\"%(likes)s like\", \"%(likes)s likes\", likesCount);\n\n title = interpolate(message, { likes: likesCount }, true);\n }\n\n return _react2.default.createElement(\n 'div',\n {\n className: \"modal-dialog \" + (className || ''),\n role: 'document'\n },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n title\n )\n ),\n children\n )\n );\n}\n\nfunction LikesList(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body modal-post-likers' },\n _react2.default.createElement(\n 'ul',\n { className: 'media-list' },\n props.likes.map(function (like) {\n return _react2.default.createElement(LikeDetails, _extends({\n key: like.id\n }, like));\n })\n )\n );\n}\n\nfunction LikeDetails(props) {\n if (props.url) {\n var user = {\n id: props.liker_id,\n avatars: props.avatars\n };\n\n return _react2.default.createElement(\n 'li',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'a',\n {\n className: 'user-avatar',\n href: props.url\n },\n _react2.default.createElement(_avatar2.default, { size: '50', user: user })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'a',\n {\n className: 'item-title',\n href: props.url\n },\n props.username\n ),\n ' ',\n _react2.default.createElement(LikeDate, { likedOn: props.liked_on })\n )\n );\n }\n\n return _react2.default.createElement(\n 'li',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'span',\n { className: 'user-avatar' },\n _react2.default.createElement(_avatar2.default, { size: '50' })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'strong',\n null,\n props.username\n ),\n ' ',\n _react2.default.createElement(LikeDate, { likedOn: props.liked_on })\n )\n );\n}\n\nfunction LikeDate(props) {\n return _react2.default.createElement(\n 'span',\n {\n className: 'text-muted',\n title: props.likedOn.format('LLL')\n },\n props.likedOn.fromNow()\n );\n}\n\n},{\"../services/ajax\":352,\"./avatar\":3,\"./modal-loader\":57,\"./modal-message\":58,\"moment\":\"moment\",\"react\":\"react\"}],126:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _editor = require('../editor');\n\nvar _editor2 = _interopRequireDefault(_editor);\n\nvar _form = require('../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _container = require('./utils/container');\n\nvar _container2 = _interopRequireDefault(_container);\n\nvar _loader = require('./utils/loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nvar _message = require('./utils/message');\n\nvar _message2 = _interopRequireDefault(_message);\n\nvar _attachments = require('./utils/attachments');\n\nvar attachments = _interopRequireWildcard(_attachments);\n\nvar _validators = require('./utils/validators');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } //jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.loadSuccess = function (data) {\n _this.setState({\n isReady: true,\n\n post: data.post,\n attachments: attachments.hydrate(data.attachments),\n protect: data.is_protected,\n\n canProtect: data.can_protect\n });\n };\n\n _this.loadError = function (rejection) {\n _this.setState({\n isErrored: rejection.detail\n });\n };\n\n _this.onCancel = function () {\n var cancel = confirm(gettext(\"Are you sure you want to discard changes?\"));\n if (cancel) {\n _posting2.default.close();\n }\n };\n\n _this.onProtect = function () {\n _this.setState({\n protect: true\n });\n };\n\n _this.onUnprotect = function () {\n _this.setState({\n protect: false\n });\n };\n\n _this.onPostChange = function (event) {\n _this.changeValue('post', event.target.value);\n };\n\n _this.onAttachmentsChange = function (attachments) {\n _this.setState({\n attachments: attachments\n });\n };\n\n _this.state = {\n isReady: false,\n isLoading: false,\n isErrored: false,\n\n post: '',\n attachments: [],\n protect: false,\n\n canProtect: false,\n\n validators: {\n post: (0, _validators.getPostValidators)()\n },\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n _ajax2.default.get(this.props.config).then(this.loadSuccess, this.loadError);\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'clean',\n\n /* jshint ignore:end */\n\n value: function clean() {\n if (!this.state.post.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter a message.\"));\n return false;\n }\n\n var errors = this.validate();\n\n if (errors.post) {\n _snackbar2.default.error(errors.post[0]);\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.put(this.props.submit, {\n post: this.state.post,\n attachments: attachments.clean(this.state.attachments),\n protect: this.state.protect\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n _snackbar2.default.success(gettext(\"Reply has been edited.\"));\n window.location = success.url.index;\n\n // keep form loading\n this.setState({\n 'isLoading': true\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n var errors = [].concat(rejection.non_field_errors || [], rejection.category || [], rejection.title || [], rejection.post || []);\n\n _snackbar2.default.error(errors[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n if (this.state.isReady) {\n return _react2.default.createElement(\n _container2.default,\n { className: 'posting-form' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit, method: 'POST' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-12' },\n _react2.default.createElement(_editor2.default, {\n attachments: this.state.attachments,\n canProtect: this.state.canProtect,\n loading: this.state.isLoading,\n onAttachmentsChange: this.onAttachmentsChange,\n onCancel: this.onCancel,\n onChange: this.onPostChange,\n onProtect: this.onProtect,\n onUnprotect: this.onUnprotect,\n protect: this.state.protect,\n submitLabel: gettext(\"Edit reply\"),\n value: this.state.post\n })\n )\n )\n )\n );\n } else if (this.state.isErrored) {\n return _react2.default.createElement(_message2.default, { message: this.state.isErrored });\n } else {\n return _react2.default.createElement(_loader2.default, null);\n }\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../services/ajax\":352,\"../../services/posting\":362,\"../../services/snackbar\":363,\"../editor\":48,\"../form\":52,\"./utils/attachments\":131,\"./utils/container\":132,\"./utils/loader\":133,\"./utils/message\":134,\"./utils/validators\":137,\"react\":\"react\"}],127:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (props.mode === 'START') {\n return _react2.default.createElement(_start2.default, props);\n } else if (props.mode === 'START_PRIVATE') {\n return _react2.default.createElement(_startPrivate2.default, props);\n } else if (props.mode === 'REPLY') {\n return _react2.default.createElement(_reply2.default, props);\n } else if (props.mode === 'EDIT') {\n return _react2.default.createElement(_edit2.default, props);\n } else {\n return null;\n }\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _start = require('./start');\n\nvar _start2 = _interopRequireDefault(_start);\n\nvar _startPrivate = require('./start-private');\n\nvar _startPrivate2 = _interopRequireDefault(_startPrivate);\n\nvar _reply = require('./reply');\n\nvar _reply2 = _interopRequireDefault(_reply);\n\nvar _edit = require('./edit');\n\nvar _edit2 = _interopRequireDefault(_edit);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./edit\":126,\"./reply\":128,\"./start\":130,\"./start-private\":129,\"react\":\"react\"}],128:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _editor = require('../editor');\n\nvar _editor2 = _interopRequireDefault(_editor);\n\nvar _form = require('../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _container = require('./utils/container');\n\nvar _container2 = _interopRequireDefault(_container);\n\nvar _loader = require('./utils/loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nvar _message = require('./utils/message');\n\nvar _message2 = _interopRequireDefault(_message);\n\nvar _attachments = require('./utils/attachments');\n\nvar attachments = _interopRequireWildcard(_attachments);\n\nvar _validators = require('./utils/validators');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } //jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.loadSuccess = function (data) {\n _this.setState({\n isReady: true,\n\n post: data.post ? '[quote=\"@' + data.poster + '\"]\\n' + data.post + '\\n[/quote]' : ''\n });\n };\n\n _this.loadError = function (rejection) {\n _this.setState({\n isErrored: rejection.detail\n });\n };\n\n _this.appendData = function (data) {\n var newPost = data.post ? '[quote=\"@' + data.poster + '\"]\\n' + data.post + '\\n[/quote]\\n\\n' : '';\n\n _this.setState(function (prevState, props) {\n if (prevState.post.length > 0) {\n return {\n post: prevState.post + '\\n\\n' + newPost\n };\n }\n\n return {\n post: newPost\n };\n });\n };\n\n _this.onCancel = function () {\n var cancel = confirm(gettext(\"Are you sure you want to discard your reply?\"));\n if (cancel) {\n _posting2.default.close();\n }\n };\n\n _this.onPostChange = function (event) {\n _this.changeValue('post', event.target.value);\n };\n\n _this.onAttachmentsChange = function (attachments) {\n _this.setState({\n attachments: attachments\n });\n };\n\n _this.state = {\n isReady: false,\n isLoading: false,\n isErrored: false,\n\n post: '',\n attachments: [],\n\n validators: {\n post: (0, _validators.getPostValidators)()\n },\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n _ajax2.default.get(this.props.config, this.props.context || null).then(this.loadSuccess, this.loadError);\n }\n }, {\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n var context = this.props.context;\n var newContext = nextProps.context;\n\n if (context && newContext && context.reply === newContext.reply) return;\n\n _ajax2.default.get(nextProps.config, nextProps.context || null).then(this.appendData, _snackbar2.default.apiError);\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'clean',\n\n /* jshint ignore:end */\n\n value: function clean() {\n if (!this.state.post.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter a message.\"));\n return false;\n }\n\n var errors = this.validate();\n\n if (errors.post) {\n _snackbar2.default.error(errors.post[0]);\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.submit, {\n post: this.state.post,\n attachments: attachments.clean(this.state.attachments)\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n _snackbar2.default.success(gettext(\"Your reply has been posted.\"));\n window.location = success.url.index;\n\n // keep form loading\n this.setState({\n 'isLoading': true\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n var errors = [].concat(rejection.non_field_errors || [], rejection.post || []);\n\n _snackbar2.default.error(errors[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n if (this.state.isReady) {\n return _react2.default.createElement(\n _container2.default,\n { className: 'posting-form' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit, method: 'POST' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-12' },\n _react2.default.createElement(_editor2.default, {\n attachments: this.state.attachments,\n loading: this.state.isLoading,\n onAttachmentsChange: this.onAttachmentsChange,\n onCancel: this.onCancel,\n onChange: this.onPostChange,\n submitLabel: gettext(\"Post reply\"),\n value: this.state.post\n })\n )\n )\n )\n );\n } else if (this.state.isErrored) {\n return _react2.default.createElement(_message2.default, { message: this.state.isErrored });\n } else {\n return _react2.default.createElement(_loader2.default, null);\n }\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../services/ajax\":352,\"../../services/posting\":362,\"../../services/snackbar\":363,\"../editor\":48,\"../form\":52,\"./utils/attachments\":131,\"./utils/container\":132,\"./utils/loader\":133,\"./utils/message\":134,\"./utils/validators\":137,\"react\":\"react\"}],129:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _editor = require('../editor');\n\nvar _editor2 = _interopRequireDefault(_editor);\n\nvar _form = require('../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _container = require('./utils/container');\n\nvar _container2 = _interopRequireDefault(_container);\n\nvar _message = require('./utils/message');\n\nvar _message2 = _interopRequireDefault(_message);\n\nvar _attachments = require('./utils/attachments');\n\nvar attachments = _interopRequireWildcard(_attachments);\n\nvar _usernames = require('./utils/usernames');\n\nvar _usernames2 = _interopRequireDefault(_usernames);\n\nvar _validators = require('./utils/validators');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } //jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onCancel = function () {\n var cancel = confirm(gettext(\"Are you sure you want to discard private thread?\"));\n if (cancel) {\n _posting2.default.close();\n }\n };\n\n _this.onToChange = function (event) {\n _this.changeValue('to', event.target.value);\n };\n\n _this.onTitleChange = function (event) {\n _this.changeValue('title', event.target.value);\n };\n\n _this.onPostChange = function (event) {\n _this.changeValue('post', event.target.value);\n };\n\n _this.onAttachmentsChange = function (attachments) {\n _this.setState({\n attachments: attachments\n });\n };\n\n var to = (props.to || []).map(function (user) {\n return user.username;\n }).join(', ');\n\n _this.state = {\n isLoading: false,\n\n to: to,\n title: '',\n post: '',\n attachments: [],\n\n validators: {\n title: (0, _validators.getTitleValidators)(),\n post: (0, _validators.getPostValidators)()\n },\n errors: {}\n };\n return _this;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'clean',\n\n /* jshint ignore:end */\n\n value: function clean() {\n if (!(0, _usernames2.default)(this.state.to).length) {\n _snackbar2.default.error(gettext(\"You have to enter at least one recipient.\"));\n return false;\n }\n\n if (!this.state.title.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter thread title.\"));\n return false;\n }\n\n if (!this.state.post.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter a message.\"));\n return false;\n }\n\n var errors = this.validate();\n\n if (errors.title) {\n _snackbar2.default.error(errors.title[0]);\n return false;\n }\n\n if (errors.post) {\n _snackbar2.default.error(errors.post[0]);\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.submit, {\n to: (0, _usernames2.default)(this.state.to),\n title: this.state.title,\n post: this.state.post,\n attachments: attachments.clean(this.state.attachments)\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n _snackbar2.default.success(gettext(\"Your thread has been posted.\"));\n window.location = success.url;\n\n // keep form loading\n this.setState({\n 'isLoading': true\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n var errors = [].concat(rejection.non_field_errors || [], rejection.to || [], rejection.title || [], rejection.post || []);\n\n _snackbar2.default.error(errors[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n _container2.default,\n { className: 'posting-form', withFirstRow: true },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'row first-row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12' },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.onToChange,\n placeholder: gettext(\"Comma separated list of user names, eg.: Danny, Lisa\"),\n type: 'text',\n value: this.state.to\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'row first-row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12' },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.onTitleChange,\n placeholder: gettext(\"Thread title\"),\n type: 'text',\n value: this.state.title\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12' },\n _react2.default.createElement(_editor2.default, {\n attachments: this.state.attachments,\n loading: this.state.isLoading,\n onAttachmentsChange: this.onAttachmentsChange,\n onCancel: this.onCancel,\n onChange: this.onPostChange,\n submitLabel: gettext(\"Post thread\"),\n value: this.state.post\n })\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../services/ajax\":352,\"../../services/posting\":362,\"../../services/snackbar\":363,\"../editor\":48,\"../form\":52,\"./utils/attachments\":131,\"./utils/container\":132,\"./utils/message\":134,\"./utils/usernames\":136,\"./utils/validators\":137,\"react\":\"react\"}],130:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _categorySelect = require('../category-select');\n\nvar _categorySelect2 = _interopRequireDefault(_categorySelect);\n\nvar _editor = require('../editor');\n\nvar _editor2 = _interopRequireDefault(_editor);\n\nvar _form = require('../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _container = require('./utils/container');\n\nvar _container2 = _interopRequireDefault(_container);\n\nvar _loader = require('./utils/loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nvar _message = require('./utils/message');\n\nvar _message2 = _interopRequireDefault(_message);\n\nvar _options = require('./utils/options');\n\nvar _options2 = _interopRequireDefault(_options);\n\nvar _attachments = require('./utils/attachments');\n\nvar attachments = _interopRequireWildcard(_attachments);\n\nvar _validators = require('./utils/validators');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } //jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n//jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.loadSuccess = function (data) {\n var category = null;\n var showOptions = false;\n var categoryOptions = null;\n\n // hydrate categories, extract posting options\n var categories = data.map(function (item) {\n // pick first category that allows posting and if it may, override it with initial one\n if (item.post !== false && (!category || item.id == _this.state.category)) {\n category = item.id;\n categoryOptions = item.post;\n }\n\n if (item.post && (item.post.close || item.post.hide || item.post.pin)) {\n showOptions = true;\n }\n\n return Object.assign(item, {\n disabled: item.post === false,\n label: item.name,\n value: item.id\n });\n });\n\n _this.setState({\n isReady: true,\n showOptions: showOptions,\n\n categories: categories,\n category: category,\n categoryOptions: categoryOptions\n });\n };\n\n _this.loadError = function (rejection) {\n _this.setState({\n isErrored: rejection.detail\n });\n };\n\n _this.onCancel = function () {\n var cancel = confirm(gettext(\"Are you sure you want to discard thread?\"));\n if (cancel) {\n _posting2.default.close();\n }\n };\n\n _this.onTitleChange = function (event) {\n _this.changeValue('title', event.target.value);\n };\n\n _this.onCategoryChange = function (event) {\n var category = _this.state.categories.find(function (item) {\n return event.target.value == item.value;\n });\n\n // if selected pin is greater than allowed, reduce it\n var pin = _this.state.pin;\n if (category.post.pin && category.post.pin < pin) {\n pin = category.post.pin;\n }\n\n _this.setState({\n category: category.id,\n categoryOptions: category.post,\n\n pin: pin\n });\n };\n\n _this.onPostChange = function (event) {\n _this.changeValue('post', event.target.value);\n };\n\n _this.onAttachmentsChange = function (attachments) {\n _this.setState({\n attachments: attachments\n });\n };\n\n _this.onClose = function () {\n _this.changeValue('close', true);\n };\n\n _this.onOpen = function () {\n _this.changeValue('close', false);\n };\n\n _this.onPinGlobally = function () {\n _this.changeValue('pin', 2);\n };\n\n _this.onPinLocally = function () {\n _this.changeValue('pin', 1);\n };\n\n _this.onUnpin = function () {\n _this.changeValue('pin', 0);\n };\n\n _this.onHide = function () {\n _this.changeValue('hide', true);\n };\n\n _this.onUnhide = function () {\n _this.changeValue('hide', false);\n };\n\n _this.state = {\n isReady: false,\n isLoading: false,\n isErrored: false,\n\n showOptions: false,\n categoryOptions: null,\n\n title: '',\n category: props.category || null,\n categories: [],\n post: '',\n attachments: [],\n close: false,\n hide: false,\n pin: 0,\n\n validators: {\n title: (0, _validators.getTitleValidators)(),\n post: (0, _validators.getPostValidators)()\n },\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n _ajax2.default.get(this.props.config).then(this.loadSuccess, this.loadError);\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'clean',\n\n /* jshint ignore:end */\n\n value: function clean() {\n if (!this.state.title.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter thread title.\"));\n return false;\n }\n\n if (!this.state.post.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter a message.\"));\n return false;\n }\n\n var errors = this.validate();\n\n if (errors.title) {\n _snackbar2.default.error(errors.title[0]);\n return false;\n }\n\n if (errors.post) {\n _snackbar2.default.error(errors.post[0]);\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.submit, {\n title: this.state.title,\n category: this.state.category,\n post: this.state.post,\n attachments: attachments.clean(this.state.attachments),\n close: this.state.close,\n hide: this.state.hide,\n pin: this.state.pin\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n _snackbar2.default.success(gettext(\"Your thread has been posted.\"));\n window.location = success.url;\n\n // keep form loading\n this.setState({\n 'isLoading': true\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n var errors = [].concat(rejection.non_field_errors || [], rejection.category || [], rejection.title || [], rejection.post || []);\n\n _snackbar2.default.error(errors[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n if (this.state.isErrored) {\n return _react2.default.createElement(_message2.default, { message: this.state.isErrored });\n }\n\n if (!this.state.isReady) {\n return _react2.default.createElement(_loader2.default, null);\n }\n\n var columns = 0;\n if (this.state.categoryOptions.close) columns += 1;\n if (this.state.categoryOptions.hide) columns += 1;\n if (this.state.categoryOptions.pin) columns += 1;\n\n var titleStyle = null;\n\n if (columns === 1) {\n titleStyle = 'col-sm-6';\n } else {\n titleStyle = 'col-sm-8';\n }\n\n if (columns === 3) {\n titleStyle += ' col-md-6';\n } else if (columns) {\n titleStyle += ' col-md-7';\n } else {\n titleStyle += ' col-md-9';\n }\n\n return _react2.default.createElement(\n _container2.default,\n { className: 'posting-form', withFirstRow: true },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'row first-row' },\n _react2.default.createElement(\n 'div',\n { className: titleStyle },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.onTitleChange,\n placeholder: gettext(\"Thread title\"),\n type: 'text',\n value: this.state.title\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-4 col-md-3 xs-margin-top' },\n _react2.default.createElement(_categorySelect2.default, {\n choices: this.state.categories,\n disabled: this.state.isLoading,\n onChange: this.onCategoryChange,\n value: this.state.category\n })\n ),\n _react2.default.createElement(_options2.default, {\n close: this.state.close,\n columns: columns,\n disabled: this.state.isLoading,\n hide: this.state.hide,\n onClose: this.onClose,\n onHide: this.onHide,\n onOpen: this.onOpen,\n onPinGlobally: this.onPinGlobally,\n onPinLocally: this.onPinLocally,\n onUnhide: this.onUnhide,\n onUnpin: this.onUnpin,\n options: this.state.categoryOptions,\n pin: this.state.pin,\n showOptions: this.state.showOptions\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-12' },\n _react2.default.createElement(_editor2.default, {\n attachments: this.state.attachments,\n loading: this.state.isLoading,\n onAttachmentsChange: this.onAttachmentsChange,\n onCancel: this.onCancel,\n onChange: this.onPostChange,\n submitLabel: gettext(\"Post thread\"),\n value: this.state.post\n })\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../services/ajax\":352,\"../../services/posting\":362,\"../../services/snackbar\":363,\"../category-select\":18,\"../editor\":48,\"../form\":52,\"./utils/attachments\":131,\"./utils/container\":132,\"./utils/loader\":133,\"./utils/message\":134,\"./utils/options\":135,\"./utils/validators\":137,\"react\":\"react\"}],131:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.clean = clean;\nexports.hydrate = hydrate;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction clean(attachments) {\n var completedAttachments = attachments.filter(function (attachment) {\n return attachment.id && !attachment.isRemoved;\n });\n\n return completedAttachments.map(function (a) {\n return a.id;\n });\n}\n\nfunction hydrate(attachments) {\n return attachments.map(function (attachment) {\n return Object.assign({}, attachment, {\n uploaded_on: (0, _moment2.default)(attachment.uploaded_on)\n });\n });\n}\n\n},{\"moment\":\"moment\"}],132:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n \"div\",\n { className: props.className },\n _react2.default.createElement(\n \"div\",\n { className: \"container\" },\n props.children\n )\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],133:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _container2.default,\n { className: 'posting-loader' },\n _react2.default.createElement(_loader2.default, null)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _container = require('./container');\n\nvar _container2 = _interopRequireDefault(_container);\n\nvar _loader = require('../../loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../loader\":54,\"./container\":132,\"react\":\"react\"}],134:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _container2.default,\n { className: 'posting-message' },\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n null,\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'error_outline'\n ),\n props.message\n ),\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-default', onClick: _posting2.default.close },\n gettext(\"Dismiss\")\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _container = require('./container');\n\nvar _container2 = _interopRequireDefault(_container);\n\nvar _posting = require('../../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../services/posting\":362,\"./container\":132,\"react\":\"react\"}],135:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (!props.showOptions) return null;\n\n var columns = props.columns;\n\n\n var className = 'col-xs-12 xs-margin-top';\n\n if (columns === 1) {\n className += ' col-sm-2';\n } else {\n className += ' sm-margin-top';\n }\n\n if (columns === 3) {\n className += ' col-md-3';\n } else {\n className += ' col-md-2';\n }\n className += ' posting-options';\n\n var columnClassName = 'col-xs-' + 12 / columns;\n\n var textClassName = 'btn-text';\n if (columns === 3) {\n textClassName += ' visible-sm-inline-block';\n } else if (columns === 2) {\n textClassName += ' hidden-md hidden-lg';\n } else {\n textClassName += ' hidden-sm';\n }\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(PinOptions, {\n className: columnClassName,\n disabled: props.disabled,\n onPinGlobally: props.onPinGlobally,\n onPinLocally: props.onPinLocally,\n onUnpin: props.onUnpin,\n pin: props.pin,\n show: props.options.pin,\n textClassName: textClassName\n }),\n _react2.default.createElement(HideOptions, {\n className: columnClassName,\n disabled: props.disabled,\n hide: props.hide,\n onHide: props.onHide,\n onUnhide: props.onUnhide,\n show: props.options.hide,\n textClassName: textClassName\n }),\n _react2.default.createElement(CloseOptions, {\n className: columnClassName,\n close: props.close,\n disabled: props.disabled,\n onClose: props.onClose,\n onOpen: props.onOpen,\n show: props.options.close,\n textClassName: textClassName\n })\n )\n );\n};\n\nexports.CloseOptions = CloseOptions;\nexports.HideOptions = HideOptions;\nexports.PinOptions = PinOptions;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction CloseOptions(props) {\n if (!props.show) return null;\n\n var label = props.close ? gettext('Closed') : gettext('Open');\n\n return _react2.default.createElement(\n 'div',\n { className: props.className },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block',\n disabled: props.disabled,\n onClick: props.close ? props.onOpen : props.onClose,\n title: label,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n props.close ? 'lock' : 'lock_outline'\n ),\n _react2.default.createElement(\n 'span',\n { className: props.textClassName },\n label\n )\n )\n );\n}\n\nfunction HideOptions(props) {\n if (!props.show) return null;\n\n var label = props.hide ? gettext('Hidden') : gettext('Not hidden');\n\n return _react2.default.createElement(\n 'div',\n { className: props.className },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block',\n disabled: props.disabled,\n onClick: props.hide ? props.onUnhide : props.onHide,\n title: label,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n props.hide ? 'visibility_off' : 'visibility'\n ),\n _react2.default.createElement(\n 'span',\n { className: props.textClassName },\n label\n )\n )\n );\n}\n\nfunction PinOptions(props) {\n if (!props.show) return null;\n\n var icon = null;\n var onClick = null;\n var label = null;\n\n switch (props.pin) {\n case 0:\n icon = 'radio_button_unchecked';\n onClick = props.onPinLocally;\n label = gettext(\"Unpinned\");\n break;\n\n case 1:\n icon = 'bookmark_outline';\n onClick = props.onPinGlobally;\n label = gettext(\"Pinned locally\");\n\n if (props.show == 2) {\n onClick = props.onPinGlobally;\n } else {\n onClick = props.onUnpin;\n }\n\n break;\n\n case 2:\n icon = 'bookmark';\n onClick = props.onUnpin;\n label = gettext(\"Pinned globally\");\n break;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: props.className },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block',\n disabled: props.disabled,\n onClick: onClick,\n title: label,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n icon\n ),\n _react2.default.createElement(\n 'span',\n { className: props.textClassName },\n label\n )\n )\n );\n}\n\n},{\"react\":\"react\"}],136:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (usernames) {\n var normalisedNames = usernames.split(',').map(function (i) {\n return i.trim().toLowerCase();\n });\n var removedBlanks = normalisedNames.filter(function (i) {\n return i.length > 0;\n });\n var removedDuplicates = removedBlanks.filter(function (name, pos) {\n return removedBlanks.indexOf(name) == pos;\n });\n\n return removedDuplicates;\n};\n\n},{}],137:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getTitleValidators = getTitleValidators;\nexports.getPostValidators = getPostValidators;\nexports.getTitleLengthMin = getTitleLengthMin;\nexports.getTitleLengthMax = getTitleLengthMax;\nexports.validatePostLengthMin = validatePostLengthMin;\nexports.validatePostLengthMax = validatePostLengthMax;\n\nvar _validators = require('../../../utils/validators');\n\nvar _ = require('../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getTitleValidators() {\n return [getTitleLengthMin(), getTitleLengthMax()];\n}\n\nfunction getPostValidators() {\n if (_2.default.get('SETTINGS').post_length_max) {\n return [validatePostLengthMin(), validatePostLengthMax()];\n } else {\n return [validatePostLengthMin()];\n }\n}\n\nfunction getTitleLengthMin() {\n return (0, _validators.minLength)(_2.default.get('SETTINGS').thread_title_length_min, function (limitValue, length) {\n var message = ngettext(\"Thread title should be at least %(limit_value)s character long (it has %(show_value)s).\", \"Thread title should be at least %(limit_value)s characters long (it has %(show_value)s).\", limitValue);\n\n return interpolate(message, {\n limit_value: limitValue,\n show_value: length\n }, true);\n });\n}\n\nfunction getTitleLengthMax() {\n return (0, _validators.maxLength)(_2.default.get('SETTINGS').thread_title_length_max, function (limitValue, length) {\n var message = ngettext(\"Thread title cannot be longer than %(limit_value)s character (it has %(show_value)s).\", \"Thread title cannot be longer than %(limit_value)s characters (it has %(show_value)s).\", limitValue);\n\n return interpolate(message, {\n limit_value: limitValue,\n show_value: length\n }, true);\n });\n}\n\nfunction validatePostLengthMin() {\n return (0, _validators.minLength)(_2.default.get('SETTINGS').post_length_min, function (limitValue, length) {\n var message = ngettext(\"Posted message should be at least %(limit_value)s character long (it has %(show_value)s).\", \"Posted message should be at least %(limit_value)s characters long (it has %(show_value)s).\", limitValue);\n\n return interpolate(message, {\n limit_value: limitValue,\n show_value: length\n }, true);\n });\n}\n\nfunction validatePostLengthMax() {\n return (0, _validators.maxLength)(_2.default.get('SETTINGS').post_length_max || 1000000, function (limitValue, length) {\n var message = ngettext(\"Posted message cannot be longer than %(limit_value)s character (it has %(show_value)s).\", \"Posted message cannot be longer than %(limit_value)s characters (it has %(show_value)s).\", limitValue);\n\n return interpolate(message, {\n limit_value: limitValue,\n show_value: length\n }, true);\n });\n}\n\n},{\"../../..\":291,\"../../../utils/validators\":380}],138:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Delete = exports.Unhide = exports.Hide = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n if (isVisible(props.post.acl)) {\n return _react2.default.createElement(\n 'li',\n { className: 'event-controls' },\n _react2.default.createElement(Hide, props),\n _react2.default.createElement(Unhide, props),\n _react2.default.createElement(Delete, props)\n );\n } else {\n return null;\n }\n};\n\nexports.isVisible = isVisible;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _post = require('../../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nfunction isVisible(acl) {\n return acl.can_hide;\n}\n\nvar Hide = exports.Hide = function (_React$Component) {\n _inherits(Hide, _React$Component);\n\n function Hide() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Hide);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Hide.__proto__ || Object.getPrototypeOf(Hide)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _store2.default.dispatch(post.patch(_this.props.post, {\n is_hidden: true,\n hidden_on: (0, _moment2.default)(),\n hidden_by_name: _this.props.user.username,\n url: Object.assign(_this.props.post.url, {\n hidden_by: _this.props.user.url\n })\n }));\n\n var op = { 'op': 'replace', 'path': 'is-hidden', 'value': true };\n\n _ajax2.default.patch(_this.props.post.api.index, [op]).then(function (patch) {\n _store2.default.dispatch(post.patch(_this.props.post, patch));\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n _store2.default.dispatch(post.patch(_this.props.post, {\n is_hidden: false\n }));\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Hide, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.is_hidden) {\n return _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n gettext(\"Hide\")\n );\n } else {\n return null;\n }\n }\n }]);\n\n return Hide;\n}(_react2.default.Component);\n\nvar Unhide = exports.Unhide = function (_React$Component2) {\n _inherits(Unhide, _React$Component2);\n\n function Unhide() {\n var _ref2;\n\n var _temp2, _this2, _ret2;\n\n _classCallCheck(this, Unhide);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, (_ref2 = Unhide.__proto__ || Object.getPrototypeOf(Unhide)).call.apply(_ref2, [this].concat(args))), _this2), _this2.onClick = function () {\n _store2.default.dispatch(post.patch(_this2.props.post, {\n is_hidden: false\n }));\n\n var op = { 'op': 'replace', 'path': 'is-hidden', 'value': false };\n\n _ajax2.default.patch(_this2.props.post.api.index, [op]).then(function (patch) {\n _store2.default.dispatch(post.patch(_this2.props.post, patch));\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n _store2.default.dispatch(post.patch(_this2.props.post, {\n is_hidden: true\n }));\n });\n }, _temp2), _possibleConstructorReturn(_this2, _ret2);\n }\n\n _createClass(Unhide, [{\n key: 'render',\n value: function render() {\n if (this.props.post.is_hidden) {\n return _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n gettext(\"Unhide\")\n );\n } else {\n return null;\n }\n }\n }]);\n\n return Unhide;\n}(_react2.default.Component);\n\nvar Delete = exports.Delete = function (_React$Component3) {\n _inherits(Delete, _React$Component3);\n\n function Delete() {\n var _ref3;\n\n var _temp3, _this3, _ret3;\n\n _classCallCheck(this, Delete);\n\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _ret3 = (_temp3 = (_this3 = _possibleConstructorReturn(this, (_ref3 = Delete.__proto__ || Object.getPrototypeOf(Delete)).call.apply(_ref3, [this].concat(args))), _this3), _this3.onClick = function () {\n var decision = confirm(gettext(\"Are you sure you wish to delete this event? This action is not reversible!\"));\n if (decision) {\n _this3.delete();\n }\n }, _this3.delete = function () {\n _store2.default.dispatch(post.patch(_this3.props.post, {\n isDeleted: true\n }));\n\n _ajax2.default.delete(_this3.props.post.api.index).then(function () {\n _snackbar2.default.success(gettext(\"Event has been deleted.\"));\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n _store2.default.dispatch(post.patch(_this3.props.post, {\n isDeleted: false\n }));\n });\n }, _temp3), _possibleConstructorReturn(_this3, _ret3);\n }\n\n _createClass(Delete, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n gettext(\"Delete\")\n );\n }\n }]);\n\n return Delete;\n}(_react2.default.Component);\n\n},{\"../../../reducers/post\":340,\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"moment\":\"moment\",\"react\":\"react\"}],139:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'post-avatar' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n ICON[props.post.event_type]\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar ICON = {\n changed_title: 'edit',\n\n pinned_globally: 'bookmark',\n pinned_locally: 'bookmark_border',\n unpinned: 'panorama_fish_eye',\n\n moved: 'arrow_forward',\n merged: 'call_merge',\n\n approved: 'done',\n\n opened: 'lock_open',\n closed: 'lock_outline',\n\n unhid: 'visibility',\n hid: 'visibility_off',\n\n changed_owner: 'grade',\n tookover: 'grade',\n\n added_participant: 'person_add',\n\n owner_left: 'person_outline',\n participant_left: 'person_outline',\n removed_participant: 'remove_circle_outline'\n}; /* jshint ignore:start */\n\n},{\"react\":\"react\"}],140:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n var className = 'event';\n if (props.post.isDeleted) {\n className = 'hide';\n } else if (props.post.is_hidden) {\n className = 'event post-hidden';\n }\n\n return _react2.default.createElement(\n 'li',\n { id: 'post-' + props.post.id, className: className },\n _react2.default.createElement(_unreadLabel2.default, { post: props.post }),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-2 col-sm-3 text-right' },\n _react2.default.createElement(_icon2.default, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-10 col-sm-9 text-left' },\n _react2.default.createElement(\n _waypoint2.default,\n { post: props.post },\n _react2.default.createElement(_message2.default, props),\n _react2.default.createElement(_info2.default, props)\n )\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _icon = require('./icon');\n\nvar _icon2 = _interopRequireDefault(_icon);\n\nvar _info = require('./info');\n\nvar _info2 = _interopRequireDefault(_info);\n\nvar _message = require('./message');\n\nvar _message2 = _interopRequireDefault(_message);\n\nvar _unreadLabel = require('./unread-label');\n\nvar _unreadLabel2 = _interopRequireDefault(_unreadLabel);\n\nvar _waypoint = require('../waypoint');\n\nvar _waypoint2 = _interopRequireDefault(_waypoint);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../waypoint\":166,\"./icon\":139,\"./info\":141,\"./message\":142,\"./unread-label\":143,\"react\":\"react\"}],141:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'ul',\n { className: 'list-inline event-info' },\n _react2.default.createElement(Hidden, props),\n _react2.default.createElement(Poster, props),\n _react2.default.createElement(Ip, props),\n _react2.default.createElement(_controls2.default, props)\n );\n};\n\nexports.Hidden = Hidden;\nexports.Poster = Poster;\nexports.Ip = Ip;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _escapeHtml = require('../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nvar _controls = require('./controls');\n\nvar _controls2 = _interopRequireDefault(_controls);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar DATE_ABBR = '%(relative)s'; /* jshint ignore:start */\n\nvar DATE_URL = '%(relative)s';\nvar USER_SPAN = '%(user)s';\nvar USER_URL = '%(user)s';\n\nfunction Hidden(props) {\n if (props.post.is_hidden) {\n var user = null;\n if (props.post.url.hidden_by) {\n user = interpolate(USER_URL, {\n url: (0, _escapeHtml2.default)(props.post.url.hidden_by),\n user: (0, _escapeHtml2.default)(props.post.hidden_by_name)\n }, true);\n } else {\n user = interpolate(USER_SPAN, {\n user: (0, _escapeHtml2.default)(props.post.hidden_by_name)\n }, true);\n }\n\n var date = interpolate(DATE_ABBR, {\n absolute: (0, _escapeHtml2.default)(props.post.hidden_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(props.post.hidden_on.fromNow())\n }, true);\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"Hidden by %(event_by)s %(event_on)s.\")), {\n event_by: user,\n event_on: date\n }, true);\n\n return _react2.default.createElement('li', {\n className: 'event-hidden-message',\n dangerouslySetInnerHTML: { __html: message }\n });\n } else {\n return null;\n }\n}\n\nfunction Poster(props) {\n var user = null;\n if (props.post.poster) {\n user = interpolate(USER_URL, {\n url: (0, _escapeHtml2.default)(props.post.poster.url),\n user: (0, _escapeHtml2.default)(props.post.poster_name)\n }, true);\n } else {\n user = interpolate(USER_SPAN, {\n user: (0, _escapeHtml2.default)(props.post.poster_name)\n }, true);\n }\n\n var date = interpolate(DATE_URL, {\n url: (0, _escapeHtml2.default)(props.post.url.index),\n absolute: (0, _escapeHtml2.default)(props.post.posted_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(props.post.posted_on.fromNow())\n }, true);\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"By %(event_by)s %(event_on)s.\")), {\n event_by: user,\n event_on: date\n }, true);\n\n return _react2.default.createElement('li', { className: 'event-posters', dangerouslySetInnerHTML: { __html: message } });\n}\n\nfunction Ip(props) {\n if (props.user.acl.can_see_users_ips) {\n return _react2.default.createElement(\n 'li',\n { className: 'event-ip' },\n _react2.default.createElement(\n 'abbr',\n { title: props.post.poster_ip },\n gettext(\"IP recorded\")\n )\n );\n } else {\n return null;\n }\n}\n\n},{\"../../../utils/escape-html\":370,\"./controls\":138,\"react\":\"react\"}],142:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (MESSAGE[props.post.event_type]) {\n return _react2.default.createElement(\n 'p',\n { className: 'event-message' },\n MESSAGE[props.post.event_type]\n );\n } else if (props.post.event_type === 'changed_title') {\n return _react2.default.createElement(ChangedTitle, props);\n } else if (props.post.event_type === 'moved') {\n return _react2.default.createElement(Moved, props);\n } else if (props.post.event_type === 'merged') {\n return _react2.default.createElement(Merged, props);\n } else if (props.post.event_type === 'changed_owner') {\n return _react2.default.createElement(ChangedOwner, props);\n } else if (props.post.event_type === 'added_participant') {\n return _react2.default.createElement(AddedParticipant, props);\n } else if (props.post.event_type === 'removed_participant') {\n return _react2.default.createElement(RemovedParticipant, props);\n } else {\n return null;\n }\n};\n\nexports.ChangedTitle = ChangedTitle;\nexports.Moved = Moved;\nexports.Merged = Merged;\nexports.ChangedOwner = ChangedOwner;\nexports.AddedParticipant = AddedParticipant;\nexports.RemovedParticipant = RemovedParticipant;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _escapeHtml = require('../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nvar MESSAGE = {\n pinned_globally: gettext(\"Thread has been pinned globally.\"),\n pinned_locally: gettext(\"Thread has been pinned locally.\"),\n unpinned: gettext(\"Thread has been unpinned.\"),\n\n approved: gettext(\"Thread has been approved.\"),\n\n opened: gettext(\"Thread has been opened.\"),\n closed: gettext(\"Thread has been closed.\"),\n\n unhid: gettext(\"Thread has been revealed.\"),\n hid: gettext(\"Thread has been made hidden.\"),\n\n tookover: gettext(\"Took thread over.\"),\n\n owner_left: gettext(\"Owner has left thread. This thread is now closed.\"),\n participant_left: gettext(\"Participant has left thread.\")\n};\n\nvar ITEM_LINK = '%(name)s';\nvar ITEM_SPAN = '%(name)s';\n\nfunction ChangedTitle(props) {\n var msgstring = (0, _escapeHtml2.default)(gettext(\"Thread title has been changed from %(old_title)s.\"));\n var oldTitle = interpolate(ITEM_SPAN, {\n name: (0, _escapeHtml2.default)(props.post.event_context.old_title)\n }, true);\n var message = interpolate(msgstring, {\n old_title: oldTitle\n }, true);\n\n return _react2.default.createElement('p', { className: 'event-message', dangerouslySetInnerHTML: { __html: message } });\n}\n\nfunction Moved(props) {\n var msgstring = (0, _escapeHtml2.default)(gettext(\"Thread has been moved from %(from_category)s.\"));\n var fromCategory = interpolate(ITEM_LINK, {\n url: (0, _escapeHtml2.default)(props.post.event_context.from_category.url),\n name: (0, _escapeHtml2.default)(props.post.event_context.from_category.name)\n }, true);\n\n var message = interpolate(msgstring, {\n from_category: fromCategory\n }, true);\n\n return _react2.default.createElement('p', { className: 'event-message', dangerouslySetInnerHTML: { __html: message } });\n}\n\nfunction Merged(props) {\n var msgstring = (0, _escapeHtml2.default)(gettext(\"The %(merged_thread)s thread has been merged into this thread.\"));\n var mergedThread = interpolate(ITEM_SPAN, {\n name: (0, _escapeHtml2.default)(props.post.event_context.merged_thread)\n }, true);\n\n var message = interpolate(msgstring, {\n merged_thread: mergedThread\n }, true);\n\n return _react2.default.createElement('p', { className: 'event-message', dangerouslySetInnerHTML: { __html: message } });\n}\n\nfunction ChangedOwner(props) {\n var msgstring = (0, _escapeHtml2.default)(gettext(\"Changed thread owner to %(user)s.\"));\n var newOwner = interpolate(ITEM_LINK, {\n url: (0, _escapeHtml2.default)(props.post.event_context.user.url),\n name: (0, _escapeHtml2.default)(props.post.event_context.user.username)\n }, true);\n\n var message = interpolate(msgstring, {\n user: newOwner\n }, true);\n\n return _react2.default.createElement('p', { className: 'event-message', dangerouslySetInnerHTML: { __html: message } });\n}\n\nfunction AddedParticipant(props) {\n var msgstring = (0, _escapeHtml2.default)(gettext(\"Added %(user)s to thread.\"));\n var newOwner = interpolate(ITEM_LINK, {\n url: (0, _escapeHtml2.default)(props.post.event_context.user.url),\n name: (0, _escapeHtml2.default)(props.post.event_context.user.username)\n }, true);\n\n var message = interpolate(msgstring, {\n user: newOwner\n }, true);\n\n return _react2.default.createElement('p', { className: 'event-message', dangerouslySetInnerHTML: { __html: message } });\n}\n\nfunction RemovedParticipant(props) {\n var msgstring = (0, _escapeHtml2.default)(gettext(\"Removed %(user)s from thread.\"));\n var newOwner = interpolate(ITEM_LINK, {\n url: (0, _escapeHtml2.default)(props.post.event_context.user.url),\n name: (0, _escapeHtml2.default)(props.post.event_context.user.username)\n }, true);\n\n var message = interpolate(msgstring, {\n user: newOwner\n }, true);\n\n return _react2.default.createElement('p', { className: 'event-message', dangerouslySetInnerHTML: { __html: message } });\n}\n\n},{\"../../../utils/escape-html\":370,\"react\":\"react\"}],143:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post;\n\n if (post.is_read) return null;\n\n return _react2.default.createElement(\n \"div\",\n { className: \"row\" },\n _react2.default.createElement(\n \"div\",\n { className: \"col-xs-10 col-xs-offset-2 col-sm-9 col-sm-offset-3 text-left\" },\n _react2.default.createElement(\n \"div\",\n { className: \"event-label\" },\n _react2.default.createElement(\n \"span\",\n { className: \"label label-unread\" },\n gettext(\"New event\")\n )\n )\n )\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],144:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; /* jshint ignore:start */\n\n\nexports.default = function (props) {\n if (!props.posts.isLoaded) {\n return _react2.default.createElement(\n 'ul',\n { className: 'posts-list ui-preview' },\n _react2.default.createElement(_preview2.default, null)\n );\n }\n\n return _react2.default.createElement(\n 'ul',\n { className: 'posts-list ui-ready' },\n props.posts.results.map(function (post) {\n return _react2.default.createElement(ListItem, _extends({\n key: post.id,\n post: post\n }, props));\n })\n );\n};\n\nexports.ListItem = ListItem;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _event = require('./event');\n\nvar _event2 = _interopRequireDefault(_event);\n\nvar _post = require('./post');\n\nvar _post2 = _interopRequireDefault(_post);\n\nvar _preview = require('./post/preview');\n\nvar _preview2 = _interopRequireDefault(_preview);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ListItem(props) {\n if (props.post.is_event) {\n return _react2.default.createElement(_event2.default, props);\n }\n\n return _react2.default.createElement(_post2.default, props);\n}\n\n},{\"./event\":140,\"./post\":156,\"./post/preview\":164,\"react\":\"react\"}],145:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-md-6' },\n _react2.default.createElement(AttachmentPreview, props),\n _react2.default.createElement(\n 'div',\n { className: 'post-attachment' },\n _react2.default.createElement(\n 'a',\n { href: props.attachment.url.index, className: 'attachment-name item-title' },\n props.attachment.filename\n ),\n _react2.default.createElement(AttachmentDetails, props)\n )\n );\n};\n\nexports.AttachmentPreview = AttachmentPreview;\nexports.AttachmentIcon = AttachmentIcon;\nexports.AttachmentThumbnail = AttachmentThumbnail;\nexports.AttachmentDetails = AttachmentDetails;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _ = require('../../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _escapeHtml = require('../../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nvar _fileSize = require('../../../../utils/file-size');\n\nvar _fileSize2 = _interopRequireDefault(_fileSize);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nvar DATE_ABBR = '%(relative)s';\nvar USER_SPAN = '%(user)s';\nvar USER_URL = '%(user)s';\n\nfunction AttachmentPreview(props) {\n if (props.attachment.is_image) {\n return _react2.default.createElement(\n 'div',\n { className: 'post-attachment-preview' },\n _react2.default.createElement(AttachmentThumbnail, props)\n );\n } else {\n return _react2.default.createElement(\n 'div',\n { className: 'post-attachment-preview' },\n _react2.default.createElement(AttachmentIcon, props)\n );\n }\n}\n\nfunction AttachmentIcon(props) {\n return _react2.default.createElement(\n 'a',\n { href: props.attachment.url.index, className: 'material-icon' },\n 'insert_drive_file'\n );\n}\n\nfunction AttachmentThumbnail(props) {\n var url = props.attachment.url.thumb || props.attachment.url.index;\n return _react2.default.createElement('a', {\n className: 'post-thumbnail',\n href: props.attachment.url.index,\n style: { backgroundImage: 'url(\"' + (0, _escapeHtml2.default)(url) + '\")' }\n });\n}\n\nfunction AttachmentDetails(props) {\n var user = null;\n if (props.attachment.url.uploader) {\n user = interpolate(USER_URL, {\n url: (0, _escapeHtml2.default)(props.attachment.url.uploader),\n user: (0, _escapeHtml2.default)(props.attachment.uploader_name)\n }, true);\n } else {\n user = interpolate(USER_SPAN, {\n user: (0, _escapeHtml2.default)(props.attachment.uploader_name)\n }, true);\n }\n\n var date = interpolate(DATE_ABBR, {\n absolute: (0, _escapeHtml2.default)(props.attachment.uploaded_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(props.attachment.uploaded_on.fromNow())\n }, true);\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s.\")), {\n filetype: props.attachment.filetype,\n size: (0, _fileSize2.default)(props.attachment.size),\n uploader: user,\n uploaded_on: date\n }, true);\n\n return _react2.default.createElement('p', {\n className: 'post-attachment-description',\n dangerouslySetInnerHTML: { __html: message }\n });\n}\n\n},{\"../../../..\":291,\"../../../../utils/escape-html\":370,\"../../../../utils/file-size\":371,\"react\":\"react\"}],146:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (!isVisible(props.post)) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'post-attachments' },\n (0, _batch2.default)(props.post.attachments, 2).map(function (row) {\n var key = row.map(function (a) {\n return a ? a.id : 0;\n }).join('_');\n return _react2.default.createElement(Row, { key: key, row: row });\n })\n );\n};\n\nexports.isVisible = isVisible;\nexports.Row = Row;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _batch = require('../../../../utils/batch');\n\nvar _batch2 = _interopRequireDefault(_batch);\n\nvar _attachment = require('./attachment');\n\nvar _attachment2 = _interopRequireDefault(_attachment);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction isVisible(post) {\n return (!post.is_hidden || post.acl.can_see_hidden) && post.attachments;\n}\n\nfunction Row(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'row' },\n props.row.map(function (attachment) {\n return _react2.default.createElement(_attachment2.default, {\n attachment: attachment,\n key: attachment ? attachment.id : 0\n });\n })\n );\n}\n\n},{\"../../../../utils/batch\":367,\"./attachment\":145,\"react\":\"react\"}],147:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (props.post.is_hidden && !props.post.acl.can_see_hidden) {\n return _react2.default.createElement(Hidden, props);\n } else if (props.post.content) {\n return _react2.default.createElement(Default, props);\n } else {\n return _react2.default.createElement(Invalid, props);\n }\n};\n\nexports.Default = Default;\nexports.Hidden = Hidden;\nexports.Invalid = Invalid;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _waypoint = require('../waypoint');\n\nvar _waypoint2 = _interopRequireDefault(_waypoint);\n\nvar _misagoMarkup = require('../../misago-markup');\n\nvar _misagoMarkup2 = _interopRequireDefault(_misagoMarkup);\n\nvar _escapeHtml = require('../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nvar HIDDEN_BY_URL = '%(user)s';\nvar HIDDEN_BY_SPAN = '%(user)s';\nvar HIDDEN_ON = '%(relative)s';\n\nfunction Default(props) {\n return _react2.default.createElement(\n _waypoint2.default,\n { className: 'post-body', post: props.post },\n _react2.default.createElement(_misagoMarkup2.default, { markup: props.post.content })\n );\n}\n\nfunction Hidden(props) {\n var user = null;\n if (props.post.hidden_by) {\n user = interpolate(HIDDEN_BY_URL, {\n url: (0, _escapeHtml2.default)(props.post.url.hidden_by),\n user: (0, _escapeHtml2.default)(props.post.hidden_by_name)\n }, true);\n } else {\n user = interpolate(HIDDEN_BY_SPAN, {\n user: (0, _escapeHtml2.default)(props.post.hidden_by_name)\n }, true);\n }\n\n var date = interpolate(HIDDEN_ON, {\n absolute: (0, _escapeHtml2.default)(props.post.hidden_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(props.post.hidden_on.fromNow())\n }, true);\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"Hidden by %(hidden_by)s %(hidden_on)s.\")), {\n hidden_by: user,\n hidden_on: date\n }, true);\n\n return _react2.default.createElement(\n _waypoint2.default,\n { className: 'post-body post-body-hidden', post: props.post },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"This post is hidden. You cannot see its contents.\")\n ),\n _react2.default.createElement('p', { className: 'text-muted', dangerouslySetInnerHTML: { __html: message } })\n );\n}\n\nfunction Invalid(props) {\n return _react2.default.createElement(\n _waypoint2.default,\n { className: 'post-body post-body-invalid', post: props.post },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"This post's contents cannot be displayed.\")\n ),\n _react2.default.createElement(\n 'p',\n { className: 'text-muted' },\n gettext(\"This error is caused by invalid post content manipulation.\")\n )\n );\n}\n\n},{\"../../../utils/escape-html\":370,\"../../misago-markup\":56,\"../waypoint\":166,\"react\":\"react\"}],148:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.approve = approve;\nexports.protect = protect;\nexports.unprotect = unprotect;\nexports.hide = hide;\nexports.unhide = unhide;\nexports.like = like;\nexports.unlike = unlike;\nexports.patch = patch;\nexports.remove = remove;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _post = require('../../../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction approve(props) {\n _store2.default.dispatch(post.patch(props.post, {\n is_unapproved: false\n }));\n\n var ops = [{ 'op': 'replace', 'path': 'is-unapproved', 'value': false }];\n\n var previousState = {\n is_unapproved: props.post.is_unapproved\n };\n\n patch(props, ops, previousState);\n}\n\nfunction protect(props) {\n _store2.default.dispatch(post.patch(props.post, {\n is_protected: true\n }));\n\n var ops = [{ 'op': 'replace', 'path': 'is-protected', 'value': true }];\n\n var previousState = {\n is_protected: props.post.is_protected\n };\n\n patch(props, ops, previousState);\n}\n\nfunction unprotect(props) {\n _store2.default.dispatch(post.patch(props.post, {\n is_protected: false\n }));\n\n var ops = [{ 'op': 'replace', 'path': 'is-protected', 'value': false }];\n\n var previousState = {\n is_protected: props.post.is_protected\n };\n\n patch(props, ops, previousState);\n}\n\nfunction hide(props) {\n _store2.default.dispatch(post.patch(props.post, {\n is_hidden: true,\n hidden_on: (0, _moment2.default)(),\n hidden_by_name: props.user.username,\n url: Object.assign(props.post.url, {\n hidden_by: props.user.url\n })\n }));\n\n var ops = [{ 'op': 'replace', 'path': 'is-hidden', 'value': true }];\n\n var previousState = {\n is_hidden: props.post.is_hidden,\n hidden_on: props.post.hidden_on,\n hidden_by_name: props.post.hidden_by_name,\n url: props.post.url\n };\n\n patch(props, ops, previousState);\n}\n\nfunction unhide(props) {\n _store2.default.dispatch(post.patch(props.post, {\n is_hidden: false\n }));\n\n var ops = [{ 'op': 'replace', 'path': 'is-hidden', 'value': false }];\n\n var previousState = {\n is_hidden: props.post.is_hidden\n };\n\n patch(props, ops, previousState);\n}\n\nfunction like(props) {\n var lastLikes = props.post.last_likes || [];\n var concatedLikes = [props.user].concat(lastLikes);\n var finalLikes = concatedLikes.length > 3 ? concatedLikes.slice(0, -1) : concatedLikes;\n\n _store2.default.dispatch(post.patch(props.post, {\n is_liked: true,\n likes: props.post.likes + 1,\n last_likes: finalLikes\n }));\n\n var ops = [{ 'op': 'replace', 'path': 'is-liked', 'value': true }];\n\n var previousState = {\n is_liked: props.post.is_liked,\n likes: props.post.likes,\n last_likes: props.post.last_likes\n };\n\n patch(props, ops, previousState);\n}\n\nfunction unlike(props) {\n _store2.default.dispatch(post.patch(props.post, {\n is_liked: false,\n likes: props.post.likes - 1,\n last_likes: props.post.last_likes.filter(function (user) {\n return !user.id || user.id !== props.user.id;\n })\n }));\n\n var ops = [{ 'op': 'replace', 'path': 'is-liked', 'value': false }];\n\n var previousState = {\n is_liked: props.post.is_liked,\n likes: props.post.likes,\n last_likes: props.post.last_likes\n };\n\n patch(props, ops, previousState);\n}\n\nfunction patch(props, ops, previousState) {\n _ajax2.default.patch(props.post.api.index, ops).then(function (newState) {\n _store2.default.dispatch(post.patch(props.post, newState));\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n _store2.default.dispatch(post.patch(props.post, previousState));\n });\n}\n\nfunction remove(props) {\n var confirmed = confirm(gettext(\"Are you sure you want to delete this post? This action is not reversible!\"));\n if (!confirmed) {\n return;\n }\n\n _store2.default.dispatch(post.patch(props.post, {\n isDeleted: true\n }));\n\n _ajax2.default.delete(props.post.api.index).then(function () {\n _snackbar2.default.success(gettext(\"Post has been deleted.\"));\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n _store2.default.dispatch(post.patch(props.post, {\n isDeleted: false\n }));\n });\n}\n\n},{\"../../../../reducers/post\":340,\"../../../../services/ajax\":352,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"moment\":\"moment\"}],149:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Delete = exports.Unhide = exports.Hide = exports.Unprotect = exports.Protect = exports.Split = exports.Move = exports.Approve = exports.PostEdits = exports.Permalink = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'ul',\n { className: 'dropdown-menu dropdown-menu-right stick-to-bottom' },\n _react2.default.createElement(Permalink, props),\n _react2.default.createElement(PostEdits, props),\n _react2.default.createElement(Approve, props),\n _react2.default.createElement(Move, props),\n _react2.default.createElement(Split, props),\n _react2.default.createElement(Protect, props),\n _react2.default.createElement(Unprotect, props),\n _react2.default.createElement(Hide, props),\n _react2.default.createElement(Unhide, props),\n _react2.default.createElement(Delete, props)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _actions = require('./actions');\n\nvar moderation = _interopRequireWildcard(_actions);\n\nvar _move = require('./move');\n\nvar _move2 = _interopRequireDefault(_move);\n\nvar _postChangelog = require('../../../post-changelog');\n\nvar _postChangelog2 = _interopRequireDefault(_postChangelog);\n\nvar _split = require('./split');\n\nvar _split2 = _interopRequireDefault(_split);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar Permalink = exports.Permalink = function (_React$Component) {\n _inherits(Permalink, _React$Component);\n\n function Permalink() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Permalink);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Permalink.__proto__ || Object.getPrototypeOf(Permalink)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n var permaUrl = window.location.protocol + '//';\n permaUrl += window.location.host;\n permaUrl += _this.props.post.url.index;\n\n prompt(gettext(\"Permament link to this post:\"), permaUrl);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Permalink, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'link'\n ),\n gettext(\"Permament link\")\n )\n );\n }\n }]);\n\n return Permalink;\n}(_react2.default.Component);\n\nvar PostEdits = exports.PostEdits = function (_React$Component2) {\n _inherits(PostEdits, _React$Component2);\n\n function PostEdits() {\n var _ref2;\n\n var _temp2, _this2, _ret2;\n\n _classCallCheck(this, PostEdits);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, (_ref2 = PostEdits.__proto__ || Object.getPrototypeOf(PostEdits)).call.apply(_ref2, [this].concat(args))), _this2), _this2.onClick = function () {\n _modal2.default.show(_react2.default.createElement(_postChangelog2.default, { post: _this2.props.post }));\n }, _temp2), _possibleConstructorReturn(_this2, _ret2);\n }\n\n _createClass(PostEdits, [{\n key: 'render',\n value: function render() {\n var isHidden = this.props.post.is_hidden && !this.props.post.acl.can_see_hidden;\n var isUnedited = this.props.post.edits === 0;\n if (isHidden || isUnedited) return null;\n\n var message = ngettext(\"This post was edited %(edits)s time.\", \"This post was edited %(edits)s times.\", this.props.post.edits);\n\n var title = interpolate(message, {\n 'edits': this.props.post.edits\n }, true);\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'edit'\n ),\n gettext(\"Changes history\")\n )\n );\n }\n }]);\n\n return PostEdits;\n}(_react2.default.Component);\n\nvar Approve = exports.Approve = function (_React$Component3) {\n _inherits(Approve, _React$Component3);\n\n function Approve() {\n var _ref3;\n\n var _temp3, _this3, _ret3;\n\n _classCallCheck(this, Approve);\n\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _ret3 = (_temp3 = (_this3 = _possibleConstructorReturn(this, (_ref3 = Approve.__proto__ || Object.getPrototypeOf(Approve)).call.apply(_ref3, [this].concat(args))), _this3), _this3.onClick = function () {\n moderation.approve(_this3.props);\n }, _temp3), _possibleConstructorReturn(_this3, _ret3);\n }\n\n _createClass(Approve, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_approve) return null;\n if (!this.props.post.is_unapproved) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'done'\n ),\n gettext(\"Approve\")\n )\n );\n }\n }]);\n\n return Approve;\n}(_react2.default.Component);\n\nvar Move = exports.Move = function (_React$Component4) {\n _inherits(Move, _React$Component4);\n\n function Move() {\n var _ref4;\n\n var _temp4, _this4, _ret4;\n\n _classCallCheck(this, Move);\n\n for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return _ret4 = (_temp4 = (_this4 = _possibleConstructorReturn(this, (_ref4 = Move.__proto__ || Object.getPrototypeOf(Move)).call.apply(_ref4, [this].concat(args))), _this4), _this4.onClick = function () {\n _modal2.default.show(_react2.default.createElement(_move2.default, _this4.props));\n }, _temp4), _possibleConstructorReturn(_this4, _ret4);\n }\n\n _createClass(Move, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_move) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'arrow_forward'\n ),\n gettext(\"Move\")\n )\n );\n }\n }]);\n\n return Move;\n}(_react2.default.Component);\n\nvar Split = exports.Split = function (_React$Component5) {\n _inherits(Split, _React$Component5);\n\n function Split() {\n var _ref5;\n\n var _temp5, _this5, _ret5;\n\n _classCallCheck(this, Split);\n\n for (var _len5 = arguments.length, args = Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {\n args[_key5] = arguments[_key5];\n }\n\n return _ret5 = (_temp5 = (_this5 = _possibleConstructorReturn(this, (_ref5 = Split.__proto__ || Object.getPrototypeOf(Split)).call.apply(_ref5, [this].concat(args))), _this5), _this5.onClick = function () {\n _modal2.default.show(_react2.default.createElement(_split2.default, _this5.props));\n }, _temp5), _possibleConstructorReturn(_this5, _ret5);\n }\n\n _createClass(Split, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_move) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'call_split'\n ),\n gettext(\"Split\")\n )\n );\n }\n }]);\n\n return Split;\n}(_react2.default.Component);\n\nvar Protect = exports.Protect = function (_React$Component6) {\n _inherits(Protect, _React$Component6);\n\n function Protect() {\n var _ref6;\n\n var _temp6, _this6, _ret6;\n\n _classCallCheck(this, Protect);\n\n for (var _len6 = arguments.length, args = Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n args[_key6] = arguments[_key6];\n }\n\n return _ret6 = (_temp6 = (_this6 = _possibleConstructorReturn(this, (_ref6 = Protect.__proto__ || Object.getPrototypeOf(Protect)).call.apply(_ref6, [this].concat(args))), _this6), _this6.onClick = function () {\n moderation.protect(_this6.props);\n }, _temp6), _possibleConstructorReturn(_this6, _ret6);\n }\n\n _createClass(Protect, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_protect) return null;\n if (this.props.post.is_protected) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_outline'\n ),\n gettext(\"Protect\")\n )\n );\n }\n }]);\n\n return Protect;\n}(_react2.default.Component);\n\nvar Unprotect = exports.Unprotect = function (_React$Component7) {\n _inherits(Unprotect, _React$Component7);\n\n function Unprotect() {\n var _ref7;\n\n var _temp7, _this7, _ret7;\n\n _classCallCheck(this, Unprotect);\n\n for (var _len7 = arguments.length, args = Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {\n args[_key7] = arguments[_key7];\n }\n\n return _ret7 = (_temp7 = (_this7 = _possibleConstructorReturn(this, (_ref7 = Unprotect.__proto__ || Object.getPrototypeOf(Unprotect)).call.apply(_ref7, [this].concat(args))), _this7), _this7.onClick = function () {\n moderation.unprotect(_this7.props);\n }, _temp7), _possibleConstructorReturn(_this7, _ret7);\n }\n\n _createClass(Unprotect, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_protect) return null;\n if (!this.props.post.is_protected) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_open'\n ),\n gettext(\"Remove protection\")\n )\n );\n }\n }]);\n\n return Unprotect;\n}(_react2.default.Component);\n\nvar Hide = exports.Hide = function (_React$Component8) {\n _inherits(Hide, _React$Component8);\n\n function Hide() {\n var _ref8;\n\n var _temp8, _this8, _ret8;\n\n _classCallCheck(this, Hide);\n\n for (var _len8 = arguments.length, args = Array(_len8), _key8 = 0; _key8 < _len8; _key8++) {\n args[_key8] = arguments[_key8];\n }\n\n return _ret8 = (_temp8 = (_this8 = _possibleConstructorReturn(this, (_ref8 = Hide.__proto__ || Object.getPrototypeOf(Hide)).call.apply(_ref8, [this].concat(args))), _this8), _this8.onClick = function () {\n moderation.hide(_this8.props);\n }, _temp8), _possibleConstructorReturn(_this8, _ret8);\n }\n\n _createClass(Hide, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_hide) return null;\n if (this.props.post.is_hidden) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility_off'\n ),\n gettext(\"Hide\")\n )\n );\n }\n }]);\n\n return Hide;\n}(_react2.default.Component);\n\nvar Unhide = exports.Unhide = function (_React$Component9) {\n _inherits(Unhide, _React$Component9);\n\n function Unhide() {\n var _ref9;\n\n var _temp9, _this9, _ret9;\n\n _classCallCheck(this, Unhide);\n\n for (var _len9 = arguments.length, args = Array(_len9), _key9 = 0; _key9 < _len9; _key9++) {\n args[_key9] = arguments[_key9];\n }\n\n return _ret9 = (_temp9 = (_this9 = _possibleConstructorReturn(this, (_ref9 = Unhide.__proto__ || Object.getPrototypeOf(Unhide)).call.apply(_ref9, [this].concat(args))), _this9), _this9.onClick = function () {\n moderation.unhide(_this9.props);\n }, _temp9), _possibleConstructorReturn(_this9, _ret9);\n }\n\n _createClass(Unhide, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_unhide) return null;\n if (!this.props.post.is_hidden) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility'\n ),\n gettext(\"Unhide\")\n )\n );\n }\n }]);\n\n return Unhide;\n}(_react2.default.Component);\n\nvar Delete = exports.Delete = function (_React$Component10) {\n _inherits(Delete, _React$Component10);\n\n function Delete() {\n var _ref10;\n\n var _temp10, _this10, _ret10;\n\n _classCallCheck(this, Delete);\n\n for (var _len10 = arguments.length, args = Array(_len10), _key10 = 0; _key10 < _len10; _key10++) {\n args[_key10] = arguments[_key10];\n }\n\n return _ret10 = (_temp10 = (_this10 = _possibleConstructorReturn(this, (_ref10 = Delete.__proto__ || Object.getPrototypeOf(Delete)).call.apply(_ref10, [this].concat(args))), _this10), _this10.onClick = function () {\n moderation.remove(_this10.props);\n }, _temp10), _possibleConstructorReturn(_this10, _ret10);\n }\n\n _createClass(Delete, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_delete) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'clear'\n ),\n gettext(\"Delete\")\n )\n );\n }\n }]);\n\n return Delete;\n}(_react2.default.Component);\n\n},{\"../../../../services/modal\":358,\"../../../post-changelog\":112,\"./actions\":148,\"./move\":151,\"./split\":152,\"react\":\"react\"}],150:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'pull-right dropdown' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-expanded': 'true',\n 'aria-haspopup': 'true',\n className: 'btn btn-default btn-icon dropdown-toggle',\n 'data-toggle': 'dropdown',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'expand_more'\n )\n ),\n _react2.default.createElement(_dropdown2.default, props)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _dropdown = require('./dropdown');\n\nvar _dropdown2 = _interopRequireDefault(_dropdown);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./dropdown\":149,\"react\":\"react\"}],151:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ModalHeader = ModalHeader;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _post = require('../../../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onUrlChange = function (event) {\n _this.changeValue('url', event.target.value);\n };\n\n _this.state = {\n isLoading: false,\n\n url: '',\n\n validators: {\n url: []\n },\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n if (!this.state.url.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter link to the other thread.\"));\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.thread.api.posts.move, {\n new_thread: this.state.url,\n posts: [this.props.post.id]\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n _store2.default.dispatch(post.patch(this.props.post, {\n isDeleted: true\n }));\n\n _modal2.default.hide();\n\n _snackbar2.default.success(gettext(\"Selected post was moved to the other thread.\"));\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog', role: 'document' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(ModalHeader, null),\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n {\n 'for': 'id_url',\n label: gettext(\"Link to thread you want to move post to\")\n },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n id: 'id_url',\n onChange: this.onUrlChange,\n value: this.state.url\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-primary', loading: this.state.isLoading },\n gettext(\"Move post\")\n )\n )\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\nfunction ModalHeader(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Move post\")\n )\n );\n}\n\n},{\"../../../../reducers/post\":340,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"../../../button\":5,\"../../../form\":52,\"../../../form-group\":51,\"react\":\"react\"}],152:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ModerationForm = exports.PostingConfig = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _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; }; /* jshint ignore:start */\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nexports.default = function (props) {\n return _react2.default.createElement(PostingConfig, _extends({}, props, { Form: ModerationForm }));\n};\n\nexports.Loader = Loader;\nexports.Error = Error;\nexports.Modal = Modal;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _categorySelect = require('../../../category-select');\n\nvar _categorySelect2 = _interopRequireDefault(_categorySelect);\n\nvar _modalLoader = require('../../../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _select = require('../../../select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nvar _post = require('../../../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _validators = require('../../../../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar PostingConfig = exports.PostingConfig = function (_React$Component) {\n _inherits(PostingConfig, _React$Component);\n\n function PostingConfig(props) {\n _classCallCheck(this, PostingConfig);\n\n var _this = _possibleConstructorReturn(this, (PostingConfig.__proto__ || Object.getPrototypeOf(PostingConfig)).call(this, props));\n\n _this.state = {\n isLoaded: false,\n isError: false,\n\n categories: []\n };\n return _this;\n }\n\n _createClass(PostingConfig, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(misago.get('THREAD_EDITOR_API')).then(function (data) {\n // hydrate categories, extract posting options\n var categories = data.map(function (item) {\n return Object.assign(item, {\n disabled: item.post === false,\n label: item.name,\n value: item.id,\n post: item.post\n });\n });\n\n _this2.setState({\n isLoaded: true,\n categories: categories\n });\n }, function (rejection) {\n _this2.setState({\n isError: rejection.detail\n });\n });\n }\n }, {\n key: 'render',\n value: function render() {\n if (this.state.isError) {\n return _react2.default.createElement(Error, { message: this.state.isError });\n } else if (this.state.isLoaded) {\n return _react2.default.createElement(ModerationForm, _extends({}, this.props, { categories: this.state.categories }));\n } else {\n return _react2.default.createElement(Loader, null);\n }\n }\n }]);\n\n return PostingConfig;\n}(_react2.default.Component);\n\nvar ModerationForm = exports.ModerationForm = function (_Form) {\n _inherits(ModerationForm, _Form);\n\n function ModerationForm(props) {\n _classCallCheck(this, ModerationForm);\n\n var _this3 = _possibleConstructorReturn(this, (ModerationForm.__proto__ || Object.getPrototypeOf(ModerationForm)).call(this, props));\n\n _this3.onCategoryChange = function (ev) {\n var categoryId = ev.target.value;\n var newState = {\n category: categoryId\n };\n\n if (_this3.acl[categoryId].can_pin_threads < newState.weight) {\n newState.weight = 0;\n }\n\n if (!_this3.acl[categoryId].can_hide_threads) {\n newState.is_hidden = 0;\n }\n\n if (!_this3.acl[categoryId].can_close_threads) {\n newState.is_closed = false;\n }\n\n _this3.setState(newState);\n };\n\n _this3.state = {\n isLoading: false,\n\n title: '',\n category: null,\n categories: props.categories,\n weight: 0,\n is_hidden: 0,\n is_closed: false,\n\n validators: {\n title: [validators.required()]\n },\n\n errors: {}\n };\n\n _this3.isHiddenChoices = [{\n 'value': 0,\n 'icon': 'visibility',\n 'label': gettext(\"No\")\n }, {\n 'value': 1,\n 'icon': 'visibility_off',\n 'label': gettext(\"Yes\")\n }];\n\n _this3.isClosedChoices = [{\n 'value': false,\n 'icon': 'lock_outline',\n 'label': gettext(\"No\")\n }, {\n 'value': true,\n 'icon': 'lock',\n 'label': gettext(\"Yes\")\n }];\n\n _this3.acl = {};\n _this3.props.categories.forEach(function (category) {\n if (category.post) {\n if (!_this3.state.category) {\n _this3.state.category = category.id;\n }\n\n _this3.acl[category.id] = {\n can_pin_threads: category.post.pin,\n can_close_threads: category.post.close,\n can_hide_threads: category.post.hide\n };\n }\n });\n return _this3;\n }\n\n _createClass(ModerationForm, [{\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n this.setState({\n errors: this.validate()\n });\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.thread.api.posts.split, {\n title: this.state.title,\n category: this.state.category,\n weight: this.state.weight,\n is_hidden: this.state.is_hidden,\n is_closed: this.state.is_closed,\n posts: [this.props.post.id]\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n _store2.default.dispatch(post.patch(this.props.post, {\n isDeleted: true\n }));\n\n _modal2.default.hide();\n\n _snackbar2.default.success(gettext(\"Selected post was split into new thread.\"));\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n this.setState({\n 'errors': Object.assign({}, this.state.errors, rejection)\n });\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n } else if (rejection.status === 403 && Array.isArray(rejection)) {\n _modal2.default.show(_react2.default.createElement(ErrorsModal, { errors: rejection }));\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'getWeightChoices',\n value: function getWeightChoices() {\n var choices = [{\n 'value': 0,\n 'icon': 'remove',\n 'label': gettext(\"Not pinned\")\n }, {\n 'value': 1,\n 'icon': 'bookmark_border',\n 'label': gettext(\"Pinned locally\")\n }];\n\n if (this.acl[this.state.category].can_pin_threads == 2) {\n choices.push({\n 'value': 2,\n 'icon': 'bookmark',\n 'label': gettext(\"Pinned globally\")\n });\n }\n\n return choices;\n }\n }, {\n key: 'renderWeightField',\n value: function renderWeightField() {\n if (this.acl[this.state.category].can_pin_threads) {\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Thread weight\"),\n 'for': 'id_weight',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8' },\n _react2.default.createElement(_select2.default, { id: 'id_weight',\n onChange: this.bindInput('weight'),\n value: this.state.weight,\n choices: this.getWeightChoices() })\n );\n } else {\n return null;\n }\n }\n }, {\n key: 'renderHiddenField',\n value: function renderHiddenField() {\n if (this.acl[this.state.category].can_hide_threads) {\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Hide thread\"),\n 'for': 'id_is_hidden',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8' },\n _react2.default.createElement(_select2.default, { id: 'id_is_closed',\n onChange: this.bindInput('is_hidden'),\n value: this.state.is_hidden,\n choices: this.isHiddenChoices })\n );\n } else {\n return null;\n }\n }\n }, {\n key: 'renderClosedField',\n value: function renderClosedField() {\n if (this.acl[this.state.category].can_close_threads) {\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Close thread\"),\n 'for': 'id_is_closed',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8' },\n _react2.default.createElement(_select2.default, { id: 'id_is_closed',\n onChange: this.bindInput('is_closed'),\n value: this.state.is_closed,\n choices: this.isClosedChoices })\n );\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n Modal,\n { className: 'modal-dialog' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Thread title\"),\n 'for': 'id_title',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8',\n validation: this.state.errors.title },\n _react2.default.createElement('input', { id: 'id_title',\n className: 'form-control',\n type: 'text',\n onChange: this.bindInput('title'),\n value: this.state.title })\n ),\n _react2.default.createElement('div', { className: 'clearfix' }),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Category\"),\n 'for': 'id_category',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8',\n validation: this.state.errors.category },\n _react2.default.createElement(_categorySelect2.default, { id: 'id_category',\n onChange: this.onCategoryChange,\n value: this.state.category,\n choices: this.state.categories })\n ),\n _react2.default.createElement('div', { className: 'clearfix' }),\n this.renderWeightField(),\n this.renderHiddenField(),\n this.renderClosedField()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Split post\")\n )\n )\n )\n );\n }\n }]);\n\n return ModerationForm;\n}(_form2.default);\n\nfunction Loader() {\n return _react2.default.createElement(\n Modal,\n { className: 'modal-dialog' },\n _react2.default.createElement(_modalLoader2.default, null)\n );\n}\n\nfunction Error(props) {\n return _react2.default.createElement(\n Modal,\n { className: 'modal-dialog modal-message' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"You can't move this post at the moment.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n props.message\n )\n )\n );\n}\n\nfunction Modal(props) {\n return _react2.default.createElement(\n 'div',\n { className: props.className, role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Split post into new thread\")\n )\n ),\n props.children\n )\n );\n}\n\n},{\"../../../../reducers/post\":340,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"../../../../utils/validators\":380,\"../../../button\":5,\"../../../category-select\":18,\"../../../form\":52,\"../../../form-group\":51,\"../../../modal-loader\":57,\"../../../select\":203,\"react\":\"react\"}],153:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.FlagHidden = FlagHidden;\nexports.FlagUnapproved = FlagUnapproved;\nexports.FlagProtected = FlagProtected;\nexports.isVisible = isVisible;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction FlagHidden(props) {\n if (!(isVisible(props.post) && props.post.is_hidden)) {\n return null;\n }\n\n return _react2.default.createElement(\n \"div\",\n { className: \"post-status-message post-status-hidden\" },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"visibility_off\"\n ),\n _react2.default.createElement(\n \"p\",\n null,\n gettext(\"This post is hidden. Only users with permission may see its contents.\")\n )\n );\n} /* jshint ignore:start */\nfunction FlagUnapproved(props) {\n if (!(isVisible(props.post) && props.post.is_unapproved)) {\n return null;\n }\n\n return _react2.default.createElement(\n \"div\",\n { className: \"post-status-message post-status-unapproved\" },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"remove_circle_outline\"\n ),\n _react2.default.createElement(\n \"p\",\n null,\n gettext(\"This post is unapproved. Only users with permission to approve posts and its author may see its contents.\")\n )\n );\n}\n\nfunction FlagProtected(props) {\n if (!(isVisible(props.post) && props.post.is_protected)) {\n return null;\n }\n\n return _react2.default.createElement(\n \"div\",\n { className: \"post-status-message post-status-protected visible-xs-block\" },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"lock_outline\"\n ),\n _react2.default.createElement(\n \"p\",\n null,\n gettext(\"This post is protected. Only moderators may change it.\")\n )\n );\n}\n\nfunction isVisible(post) {\n return !post.is_hidden || post.acl.can_see_hidden;\n}\n\n},{\"react\":\"react\"}],154:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Edit = exports.Reply = exports.LikesCompact = exports.Likes = exports.Like = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _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; }; /* jshint ignore:start */\n\n\nexports.default = function (props) {\n if (!isVisible(props.post)) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'post-footer' },\n _react2.default.createElement(Like, props),\n _react2.default.createElement(Likes, _extends({\n lastLikes: props.post.last_likes,\n likes: props.post.likes\n }, props)),\n _react2.default.createElement(LikesCompact, _extends({\n likes: props.post.likes\n }, props)),\n _react2.default.createElement(Reply, props),\n _react2.default.createElement(Edit, props)\n );\n};\n\nexports.isVisible = isVisible;\nexports.getLikesMessage = getLikesMessage;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _actions = require('./controls/actions');\n\nvar actions = _interopRequireWildcard(_actions);\n\nvar _postLikes = require('../../post-likes');\n\nvar _postLikes2 = _interopRequireDefault(_postLikes);\n\nvar _modal = require('../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _posting = require('../../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nfunction isVisible(post) {\n return (!post.is_hidden || post.acl.can_see_hidden) && (post.acl.can_reply || post.acl.can_edit || post.acl.can_see_likes && (post.last_likes || []).length || post.acl.can_like);\n}\n\nvar Like = exports.Like = function (_React$Component) {\n _inherits(Like, _React$Component);\n\n function Like() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Like);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Like.__proto__ || Object.getPrototypeOf(Like)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n if (_this.props.post.is_liked) {\n actions.unlike(_this.props);\n } else {\n actions.like(_this.props);\n }\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Like, [{\n key: 'render',\n value: function render() {\n if (!this.props.post.acl.can_like) return null;\n\n var className = 'btn btn-default btn-sm pull-left';\n if (this.props.post.is_liked) {\n className = 'btn btn-success btn-sm pull-left';\n }\n\n return _react2.default.createElement(\n 'button',\n {\n className: className,\n disabled: this.props.post.isBusy,\n onClick: this.onClick,\n type: 'button'\n },\n this.props.post.is_liked ? gettext(\"Liked\") : gettext(\"Like\")\n );\n }\n }]);\n\n return Like;\n}(_react2.default.Component);\n\nvar Likes = exports.Likes = function (_React$Component2) {\n _inherits(Likes, _React$Component2);\n\n function Likes() {\n var _ref2;\n\n var _temp2, _this2, _ret2;\n\n _classCallCheck(this, Likes);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, (_ref2 = Likes.__proto__ || Object.getPrototypeOf(Likes)).call.apply(_ref2, [this].concat(args))), _this2), _this2.onClick = function () {\n _modal2.default.show(_react2.default.createElement(_postLikes2.default, {\n post: _this2.props.post\n }));\n }, _temp2), _possibleConstructorReturn(_this2, _ret2);\n }\n\n _createClass(Likes, [{\n key: 'render',\n value: function render() {\n var hasLikes = (this.props.post.last_likes || []).length > 0;\n if (!this.props.post.acl.can_see_likes || !hasLikes) return null;\n\n if (this.props.post.acl.can_see_likes === 2) {\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link btn-sm pull-left hidden-xs',\n onClick: this.onClick,\n type: 'button'\n },\n getLikesMessage(this.props.likes, this.props.lastLikes)\n );\n }\n\n return _react2.default.createElement(\n 'p',\n { className: 'pull-left hidden-xs' },\n getLikesMessage(this.props.likes, this.props.lastLikes)\n );\n }\n }]);\n\n return Likes;\n}(_react2.default.Component);\n\nvar LikesCompact = exports.LikesCompact = function (_Likes) {\n _inherits(LikesCompact, _Likes);\n\n function LikesCompact() {\n _classCallCheck(this, LikesCompact);\n\n return _possibleConstructorReturn(this, (LikesCompact.__proto__ || Object.getPrototypeOf(LikesCompact)).apply(this, arguments));\n }\n\n _createClass(LikesCompact, [{\n key: 'render',\n value: function render() {\n var hasLikes = (this.props.post.last_likes || []).length > 0;\n if (!this.props.post.acl.can_see_likes || !hasLikes) return null;\n\n if (this.props.post.acl.can_see_likes === 2) {\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link btn-sm likes-compact pull-left visible-xs-block',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'favorite'\n ),\n this.props.likes\n );\n }\n\n return _react2.default.createElement(\n 'p',\n { className: 'likes-compact pull-left visible-xs-block' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'favorite'\n ),\n this.props.likes\n );\n }\n }]);\n\n return LikesCompact;\n}(Likes);\n\nfunction getLikesMessage(likes, users) {\n var usernames = users.slice(0, 3).map(function (u) {\n return u.username;\n });\n\n if (usernames.length == 1) {\n return interpolate(gettext(\"%(user)s likes this.\"), {\n user: usernames[0]\n }, true);\n }\n\n var hiddenLikes = likes - usernames.length;\n\n var otherUsers = usernames.slice(0, -1).join(', ');\n var lastUser = usernames.slice(-1)[0];\n\n var usernamesList = interpolate(gettext(\"%(users)s and %(last_user)s\"), {\n users: otherUsers,\n last_user: lastUser\n }, true);\n\n if (hiddenLikes === 0) {\n return interpolate(gettext(\"%(users)s like this.\"), {\n users: usernamesList\n }, true);\n }\n\n var message = ngettext(\"%(users)s and %(likes)s other user like this.\", \"%(users)s and %(likes)s other users like this.\", hiddenLikes);\n\n return interpolate(message, {\n users: usernames.join(', '),\n likes: hiddenLikes\n }, true);\n}\n\nvar Reply = exports.Reply = function (_React$Component3) {\n _inherits(Reply, _React$Component3);\n\n function Reply() {\n var _ref3;\n\n var _temp3, _this4, _ret3;\n\n _classCallCheck(this, Reply);\n\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _ret3 = (_temp3 = (_this4 = _possibleConstructorReturn(this, (_ref3 = Reply.__proto__ || Object.getPrototypeOf(Reply)).call.apply(_ref3, [this].concat(args))), _this4), _this4.onClick = function () {\n _posting2.default.open({\n mode: 'REPLY',\n\n config: _this4.props.thread.api.editor,\n submit: _this4.props.thread.api.posts.index,\n\n context: {\n reply: _this4.props.post.id\n }\n });\n }, _temp3), _possibleConstructorReturn(_this4, _ret3);\n }\n\n _createClass(Reply, [{\n key: 'render',\n value: function render() {\n if (this.props.post.acl.can_reply) {\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-primary btn-sm pull-right',\n type: 'button',\n onClick: this.onClick\n },\n gettext(\"Reply\")\n );\n } else {\n return null;\n }\n }\n }]);\n\n return Reply;\n}(_react2.default.Component);\n\nvar Edit = exports.Edit = function (_React$Component4) {\n _inherits(Edit, _React$Component4);\n\n function Edit() {\n var _ref4;\n\n var _temp4, _this5, _ret4;\n\n _classCallCheck(this, Edit);\n\n for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return _ret4 = (_temp4 = (_this5 = _possibleConstructorReturn(this, (_ref4 = Edit.__proto__ || Object.getPrototypeOf(Edit)).call.apply(_ref4, [this].concat(args))), _this5), _this5.onClick = function () {\n _posting2.default.open({\n mode: 'EDIT',\n\n config: _this5.props.post.api.editor,\n submit: _this5.props.post.api.index\n });\n }, _temp4), _possibleConstructorReturn(_this5, _ret4);\n }\n\n _createClass(Edit, [{\n key: 'render',\n value: function render() {\n if (this.props.post.acl.can_edit) {\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sm pull-right',\n type: 'button',\n onClick: this.onClick\n },\n gettext(\"Edit\")\n );\n } else {\n return null;\n }\n }\n }]);\n\n return Edit;\n}(_react2.default.Component);\n\n},{\"../../../services/modal\":358,\"../../../services/posting\":362,\"../../post-likes\":125,\"./controls/actions\":148,\"react\":\"react\"}],155:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.PostEditsCompacts = exports.PostEdits = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'post-heading' },\n _react2.default.createElement(UnreadLabel, props),\n _react2.default.createElement(UnreadCompact, props),\n _react2.default.createElement(PostedOn, props),\n _react2.default.createElement(PostedOnCompact, props),\n _react2.default.createElement(PostEdits, props),\n _react2.default.createElement(PostEditsCompacts, props),\n _react2.default.createElement(ProtectedLabel, props),\n _react2.default.createElement(_select2.default, props),\n _react2.default.createElement(_controls2.default, props)\n );\n};\n\nexports.UnreadLabel = UnreadLabel;\nexports.UnreadCompact = UnreadCompact;\nexports.PostedOn = PostedOn;\nexports.PostedOnCompact = PostedOnCompact;\nexports.ProtectedLabel = ProtectedLabel;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _controls = require('./controls');\n\nvar _controls2 = _interopRequireDefault(_controls);\n\nvar _select = require('./select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nvar _userStatus = require('../../user-status');\n\nvar _postChangelog = require('../../post-changelog');\n\nvar _postChangelog2 = _interopRequireDefault(_postChangelog);\n\nvar _modal = require('../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nfunction UnreadLabel(props) {\n if (props.post.is_read) return null;\n\n return _react2.default.createElement(\n 'span',\n { className: 'label label-unread hidden-xs' },\n gettext(\"New post\")\n );\n}\n\nfunction UnreadCompact(props) {\n if (props.post.is_read) return null;\n\n return _react2.default.createElement(\n 'span',\n { className: 'label label-unread visible-xs-inline-block' },\n gettext(\"New\")\n );\n}\n\nfunction PostedOn(props) {\n var tooltip = interpolate(gettext(\"posted %(posted_on)s\"), {\n 'posted_on': props.post.posted_on.format('LL, LT')\n }, true);\n\n return _react2.default.createElement(\n 'a',\n {\n href: props.post.url.index,\n className: 'btn btn-link posted-on hidden-xs',\n title: tooltip\n },\n props.post.posted_on.fromNow()\n );\n}\n\nfunction PostedOnCompact(props) {\n return _react2.default.createElement(\n 'a',\n {\n href: props.post.url.index,\n className: 'btn btn-link posted-on visible-xs-inline-block'\n },\n props.post.posted_on.fromNow(true)\n );\n}\n\nvar PostEdits = exports.PostEdits = function (_React$Component) {\n _inherits(PostEdits, _React$Component);\n\n function PostEdits() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, PostEdits);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = PostEdits.__proto__ || Object.getPrototypeOf(PostEdits)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _modal2.default.show(_react2.default.createElement(_postChangelog2.default, { post: _this.props.post }));\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(PostEdits, [{\n key: 'render',\n value: function render() {\n var isHidden = this.props.post.is_hidden && !this.props.post.acl.can_see_hidden;\n var isUnedited = this.props.post.edits === 0;\n if (isHidden || isUnedited) return null;\n\n var tooltip = ngettext(\"This post was edited %(edits)s time.\", \"This post was edited %(edits)s times.\", this.props.post.edits);\n\n var title = interpolate(tooltip, {\n 'edits': this.props.post.edits\n }, true);\n\n var label = ngettext(\"edited %(edits)s time\", \"edited %(edits)s times\", this.props.post.edits);\n\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link btn-see-edits hidden-xs',\n onClick: this.onClick,\n title: title,\n type: 'button'\n },\n interpolate(label, {\n 'edits': this.props.post.edits\n }, true)\n );\n }\n }]);\n\n return PostEdits;\n}(_react2.default.Component);\n\nvar PostEditsCompacts = exports.PostEditsCompacts = function (_PostEdits) {\n _inherits(PostEditsCompacts, _PostEdits);\n\n function PostEditsCompacts() {\n _classCallCheck(this, PostEditsCompacts);\n\n return _possibleConstructorReturn(this, (PostEditsCompacts.__proto__ || Object.getPrototypeOf(PostEditsCompacts)).apply(this, arguments));\n }\n\n _createClass(PostEditsCompacts, [{\n key: 'render',\n value: function render() {\n var isHidden = this.props.post.is_hidden && !this.props.post.acl.can_see_hidden;\n var isUnedited = this.props.post.edits === 0;\n if (isHidden || isUnedited) return null;\n\n var label = ngettext(\"%(edits)s edit\", \"%(edits)s edits\", this.props.post.edits);\n\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link btn-see-edits visible-xs-inline-block',\n onClick: this.onClick,\n type: 'button'\n },\n interpolate(label, {\n 'edits': this.props.post.edits\n }, true)\n );\n }\n }]);\n\n return PostEditsCompacts;\n}(PostEdits);\n\nfunction ProtectedLabel(props) {\n var postAuthor = props.post.poster && props.post.poster.id === props.user.id;\n var hasAcl = props.post.acl.can_protect;\n var isVisible = props.user.id && props.post.is_protected && (postAuthor || hasAcl);\n\n if (!isVisible) {\n return null;\n }\n\n return _react2.default.createElement(\n 'span',\n {\n className: 'label label-protected hidden-xs',\n title: gettext(\"This post is protected and may not be edited.\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_outline'\n ),\n gettext(\"protected\")\n );\n}\n\n},{\"../../../services/modal\":358,\"../../post-changelog\":112,\"../../user-status\":263,\"./controls\":150,\"./select\":165,\"react\":\"react\"}],156:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n var className = 'post';\n if (props.post.isDeleted) {\n className = 'hide';\n } else if (props.post.is_hidden && !props.post.acl.can_see_hidden) {\n className = 'post post-hidden';\n }\n\n if (props.post.poster && props.post.poster.rank.css_class) {\n className += ' post-' + props.post.poster.rank.css_class;\n }\n\n if (!props.post.is_read) {\n className += ' post-new';\n }\n\n return _react2.default.createElement(\n 'li',\n { id: 'post-' + props.post.id, className: className },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-post' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(_postSide2.default, props),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-md-9' },\n _react2.default.createElement(_header2.default, props),\n _react2.default.createElement(_flags.FlagUnapproved, props),\n _react2.default.createElement(_flags.FlagProtected, props),\n _react2.default.createElement(_flags.FlagHidden, props),\n _react2.default.createElement(_body2.default, props),\n _react2.default.createElement(_attachments2.default, props),\n _react2.default.createElement(_footer2.default, props)\n )\n )\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _attachments = require('./attachments');\n\nvar _attachments2 = _interopRequireDefault(_attachments);\n\nvar _body = require('./body');\n\nvar _body2 = _interopRequireDefault(_body);\n\nvar _flags = require('./flags');\n\nvar _footer = require('./footer');\n\nvar _footer2 = _interopRequireDefault(_footer);\n\nvar _header = require('./header');\n\nvar _header2 = _interopRequireDefault(_header);\n\nvar _postSide = require('./post-side');\n\nvar _postSide2 = _interopRequireDefault(_postSide);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./attachments\":146,\"./body\":147,\"./flags\":153,\"./footer\":154,\"./header\":155,\"./post-side\":159,\"react\":\"react\"}],157:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-md-3 post-side post-side-anonymous' },\n _react2.default.createElement(Select, {\n post: post,\n thread: thread\n }),\n _react2.default.createElement(Controls, {\n post: post,\n thread: thread\n }),\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'span',\n null,\n _react2.default.createElement(_avatar2.default, {\n className: 'poster-avatar',\n size: 100\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'span',\n { className: 'media-heading item-title' },\n post.poster_name\n ),\n _react2.default.createElement(\n 'span',\n { className: 'user-title user-title-anonymous' },\n gettext(\"Removed user\")\n )\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _userStatus = require('../../../user-status');\n\nvar _userStatus2 = _interopRequireDefault(_userStatus);\n\nvar _userPostcount = require('./user-postcount');\n\nvar _userPostcount2 = _interopRequireDefault(_userPostcount);\n\nvar _userTitle = require('./user-title');\n\nvar _userTitle2 = _interopRequireDefault(_userTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../avatar\":3,\"../../../user-status\":263,\"./user-postcount\":161,\"./user-title\":163,\"react\":\"react\"}],158:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var title = _ref.title,\n rank = _ref.rank;\n\n return rank.is_tab || !!title || !!rank.title;\n};\n\n},{}],159:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (props.post.poster) {\n return _react2.default.createElement(_registered2.default, props);\n }\n\n return _react2.default.createElement(_anonymous2.default, props);\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _anonymous = require('./anonymous');\n\nvar _anonymous2 = _interopRequireDefault(_anonymous);\n\nvar _registered = require('./registered');\n\nvar _registered2 = _interopRequireDefault(_registered);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./anonymous\":157,\"./registered\":160,\"react\":\"react\"}],160:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var post = _ref.post,\n thread = _ref.thread;\n var poster = post.poster;\n\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-md-3 post-side post-side-registered' },\n _react2.default.createElement(_select2.default, {\n post: post,\n thread: thread\n }),\n _react2.default.createElement(_controls2.default, {\n post: post,\n thread: thread\n }),\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n 'a',\n { href: poster.url },\n _react2.default.createElement(_avatar2.default, {\n className: 'poster-avatar',\n size: 100,\n user: poster\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'div',\n { className: 'media-heading' },\n _react2.default.createElement(\n 'a',\n {\n className: 'item-title',\n href: poster.url\n },\n poster.username\n ),\n _react2.default.createElement(\n _userStatus2.default,\n { status: poster.status },\n _react2.default.createElement(_userStatus.StatusIcon, { status: poster.status })\n )\n ),\n _react2.default.createElement(_userTitle2.default, {\n rank: poster.rank,\n title: poster.title\n }),\n _react2.default.createElement(_userStatus4.default, { poster: poster }),\n _react2.default.createElement(_userPostcount2.default, { poster: poster })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _controls = require('../controls');\n\nvar _controls2 = _interopRequireDefault(_controls);\n\nvar _select = require('../select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nvar _userStatus = require('../../../user-status');\n\nvar _userStatus2 = _interopRequireDefault(_userStatus);\n\nvar _userPostcount = require('./user-postcount');\n\nvar _userPostcount2 = _interopRequireDefault(_userPostcount);\n\nvar _userStatus3 = require('./user-status');\n\nvar _userStatus4 = _interopRequireDefault(_userStatus3);\n\nvar _userTitle = require('./user-title');\n\nvar _userTitle2 = _interopRequireDefault(_userTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../avatar\":3,\"../../../user-status\":263,\"../controls\":150,\"../select\":165,\"./user-postcount\":161,\"./user-status\":162,\"./user-title\":163,\"react\":\"react\"}],161:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var poster = _ref.poster;\n\n var message = ngettext(\"%(posts)s post\", \"%(posts)s posts\", poster.posts);\n\n var className = 'user-postcount';\n if ((0, _hasVisibleTitle2.default)(poster)) {\n className += ' hidden-xs hidden-sm';\n }\n\n return _react2.default.createElement(\n 'span',\n { className: className },\n interpolate(message, {\n 'posts': poster.posts\n }, true)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _hasVisibleTitle = require('./has-visible-title');\n\nvar _hasVisibleTitle2 = _interopRequireDefault(_hasVisibleTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./has-visible-title\":158,\"react\":\"react\"}],162:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var poster = _ref.poster;\n\n var className = 'hidden-xs';\n if ((0, _hasVisibleTitle2.default)(poster)) {\n className += ' hidden-sm';\n }\n\n return _react2.default.createElement(\n 'span',\n { className: className },\n _react2.default.createElement(\n _userStatus2.default,\n { status: poster.status },\n _react2.default.createElement(_userStatus.StatusLabel, {\n status: poster.status,\n user: poster\n })\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _userStatus = require('../../../user-status');\n\nvar _userStatus2 = _interopRequireDefault(_userStatus);\n\nvar _hasVisibleTitle = require('./has-visible-title');\n\nvar _hasVisibleTitle2 = _interopRequireDefault(_hasVisibleTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../user-status\":263,\"./has-visible-title\":158,\"react\":\"react\"}],163:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var rank = _ref.rank,\n title = _ref.title;\n\n var userTitle = title || rank.title;\n if (!userTitle && rank.is_tab) {\n userTitle = rank.name;\n }\n\n if (!userTitle) return null;\n\n var className = 'user-title';\n if (rank.css_class) {\n className += ' user-title-' + rank.css_class;\n }\n\n if (rank.is_tab) {\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'a',\n { href: rank.url },\n userTitle\n )\n );\n }\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n userTitle\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],164:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'li',\n { className: 'post' },\n _react2.default.createElement(\n 'div',\n { className: 'post-border' },\n _react2.default.createElement(\n 'div',\n { className: 'post-avatar' },\n _react2.default.createElement(_avatar2.default, { size: '100' })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'post-body' },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-post' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading post-heading' },\n _react2.default.createElement(\n 'span',\n { className: 'ui-preview-text', style: { width: random.int(30, 100) + \"px\" } },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'ui-preview-text', style: { width: random.int(30, 100) + \"px\" } },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'article',\n { className: 'misago-markup' },\n _react2.default.createElement(\n 'p',\n { className: 'ui-preview-text', style: { width: random.int(50, 100) + \"%\" } },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'p',\n { className: 'ui-preview-text', style: { width: random.int(50, 100) + \"%\" } },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'p',\n { className: 'ui-preview-text', style: { width: random.int(50, 100) + \"%\" } },\n '\\xA0'\n )\n )\n )\n )\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _random = require('../../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../../utils/random\":375,\"../../avatar\":3,\"react\":\"react\"}],165:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.isVisible = isVisible;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _posts = require('../../../reducers/posts');\n\nvar posts = _interopRequireWildcard(_posts);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n if (_this.props.post.isSelected) {\n _store2.default.dispatch(posts.deselect(_this.props.post));\n } else {\n _store2.default.dispatch(posts.select(_this.props.post));\n }\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n if (!(this.props.thread.acl.can_merge_posts || isVisible(this.props.post.acl))) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'pull-right hidden-xs' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-icon',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n this.props.post.isSelected ? 'check_box' : 'check_box_outline_blank'\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction isVisible(acl) {\n return acl.can_approve || acl.can_hide || acl.can_protect || acl.can_unhide || acl.can_delete || acl.can_move;\n}\n\n},{\"../../../reducers/posts\":341,\"../../../services/store\":364,\"react\":\"react\"}],166:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _post = require('../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _thread = require('../../reducers/thread');\n\nvar thread = _interopRequireWildcard(_thread);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n\n /*\n Super naive and de-facto placeholder implementation for reading posts on scroll\n */\n value: function componentDidMount() {\n var _this2 = this;\n\n if (this.props.post.is_read) return; // don't register read tracker\n\n $(this.documentNode).waypoint({\n handler: function handler(direction) {\n if (direction !== 'down' || _this2.props.post.is_read) return;\n\n // after 1500ms run flag post as read logic\n window.setTimeout(function () {\n // check if post's bottom edge is still in viewport\n var boundingClientRect = _this2.documentNode.getBoundingClientRect();\n var offsetBottom = boundingClientRect.height + boundingClientRect.top;\n var clientHeight = document.documentElement.clientHeight;\n\n if (offsetBottom < 5) return; // scrolled past the post\n if (offsetBottom > clientHeight) return; // scrolled back up\n\n // mark post as read\n _store2.default.dispatch(post.patch(_this2.props.post, {\n is_read: true\n }));\n\n // call API to let it know we have unread post\n _ajax2.default.post(_this2.props.post.api.read).then(function (data) {\n _store2.default.dispatch(thread.update(_this2.props.thread, {\n is_read: data.thread_is_read\n }));\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n });\n }, 1000);\n },\n offset: 'bottom-in-view'\n });\n }\n }, {\n key: 'render',\n value: function render() {\n var _this3 = this;\n\n return _react2.default.createElement(\n 'div',\n { className: this.props.className, ref: function ref(node) {\n _this3.documentNode = node;\n } },\n this.props.children\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../reducers/post\":340,\"../../reducers/thread\":347,\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../../services/store\":364,\"react\":\"react\"}],167:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _panelLoader = require('../panel-loader');\n\nvar _panelLoader2 = _interopRequireDefault(_panelLoader);\n\nvar _panelMessage = require('../panel-message');\n\nvar _panelMessage2 = _interopRequireDefault(_panelMessage);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _polls = require('../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nvar _pageTitle = require('../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.update = function (ban) {\n if (ban.expires_on) {\n ban.expires_on = (0, _moment2.default)(ban.expires_on);\n }\n\n _this.setState({\n isLoaded: true,\n error: null,\n\n ban: ban\n });\n };\n\n _this.error = function (error) {\n _this.setState({\n isLoaded: true,\n error: error.detail,\n ban: null\n });\n };\n\n if (_index2.default.has('PROFILE_BAN')) {\n _this.initWithPreloadedData(_index2.default.pop('PROFILE_BAN'));\n } else {\n _this.initWithoutPreloadedData();\n }\n\n _this.startPolling(props.profile.api.ban);\n return _this;\n }\n\n _createClass(_class, [{\n key: 'initWithPreloadedData',\n value: function initWithPreloadedData(ban) {\n if (ban.expires_on) {\n ban.expires_on = (0, _moment2.default)(ban.expires_on);\n }\n\n this.state = {\n isLoaded: true,\n ban: ban\n };\n }\n }, {\n key: 'initWithoutPreloadedData',\n value: function initWithoutPreloadedData() {\n this.state = {\n isLoaded: false\n };\n }\n }, {\n key: 'startPolling',\n value: function startPolling(api) {\n _polls2.default.start({\n poll: 'ban-details',\n url: api,\n frequency: 90 * 1000,\n update: this.update,\n error: this.error\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'componentDidMount',\n\n /* jshint ignore:end */\n\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: gettext(\"Ban details\"),\n parent: this.props.profile.username\n });\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n _polls2.default.stop('ban-details');\n }\n }, {\n key: 'getUserMessage',\n value: function getUserMessage() {\n if (this.state.ban.user_message) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'panel-body ban-message ban-user-message' },\n _react2.default.createElement(\n 'h4',\n null,\n gettext(\"User-shown ban message\")\n ),\n _react2.default.createElement('div', { className: 'lead', dangerouslySetInnerHTML: {\n __html: this.state.ban.user_message.html\n } })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getStaffMessage',\n value: function getStaffMessage() {\n if (this.state.ban.staff_message) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'panel-body ban-message ban-staff-message' },\n _react2.default.createElement(\n 'h4',\n null,\n gettext(\"Team-shown ban message\")\n ),\n _react2.default.createElement('div', { className: 'lead', dangerouslySetInnerHTML: {\n __html: this.state.ban.staff_message.html\n } })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getExpirationMessage',\n value: function getExpirationMessage() {\n if (this.state.ban.expires_on) {\n if (this.state.ban.expires_on.isAfter((0, _moment2.default)())) {\n /* jshint ignore:start */\n var _title = interpolate(gettext(\"This ban expires on %(expires_on)s.\"), {\n 'expires_on': this.state.ban.expires_on.format('LL, LT')\n }, true);\n\n var message = interpolate(gettext(\"This ban expires %(expires_on)s.\"), {\n 'expires_on': this.state.ban.expires_on.fromNow()\n }, true);\n\n return _react2.default.createElement(\n 'abbr',\n { title: _title },\n message\n );\n /* jshint ignore:end */\n } else {\n return gettext(\"This ban has expired.\");\n }\n } else {\n return interpolate(gettext(\"%(username)s's ban is permanent.\"), {\n 'username': this.props.profile.username\n }, true);\n }\n }\n }, {\n key: 'getPanelBody',\n value: function getPanelBody() {\n if (this.state.ban) {\n if (Object.keys(this.state.ban).length) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n this.getUserMessage(),\n this.getStaffMessage(),\n _react2.default.createElement(\n 'div',\n { className: 'panel-body ban-expires' },\n _react2.default.createElement(\n 'h4',\n null,\n gettext(\"Ban expiration\")\n ),\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.getExpirationMessage()\n )\n )\n );\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_panelMessage2.default, { message: gettext(\"No ban is active at the moment.\") })\n );\n /* jshint ignore:end */\n }\n } else if (this.state.error) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_panelMessage2.default, { icon: 'error_outline',\n message: this.state.error })\n );\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_panelLoader2.default, null)\n );\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'profile-ban-details' },\n _react2.default.createElement(\n 'div',\n { className: 'panel panel-default' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n gettext(\"Ban details\")\n )\n ),\n this.getPanelBody()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../index\":291,\"../../services/page-title\":360,\"../../services/polls\":361,\"../panel-loader\":86,\"../panel-message\":87,\"moment\":\"moment\",\"react\":\"react\"}],168:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var isAuthenticated = _ref.isAuthenticated,\n profile = _ref.profile;\n\n var message = null;\n if (isAuthenticated) {\n message = gettext(\"You are not sharing any details with others.\");\n } else {\n message = interpolate(gettext(\"%(username)s is not sharing any details with others.\"), {\n 'username': profile.username\n }, true);\n }\n\n return _react2.default.createElement(\n \"div\",\n { className: \"panel panel-default\" },\n _react2.default.createElement(\n \"div\",\n { className: \"panel-body text-center lead\" },\n message\n )\n );\n};\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],169:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var html = _ref.html,\n text = _ref.text,\n url = _ref.url;\n\n if (html) {\n return _react2.default.createElement(\"div\", {\n className: \"form-control-static col-md-9\",\n dangerouslySetInnerHTML: { __html: html }\n });\n }\n\n return _react2.default.createElement(\n \"div\",\n { className: \"form-control-static col-md-9\" },\n _react2.default.createElement(SafeValue, {\n text: text,\n url: url\n })\n );\n};\n\nexports.SafeValue = SafeValue;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction SafeValue(_ref2) {\n var text = _ref2.text,\n url = _ref2.url;\n\n if (url) {\n return _react2.default.createElement(\n \"p\",\n null,\n _react2.default.createElement(\n \"a\",\n { href: url, target: \"_blank\", rel: \"nofollow\" },\n text || url\n )\n );\n }\n\n if (text) {\n return _react2.default.createElement(\n \"p\",\n null,\n text\n );\n }\n\n return null;\n}\n\n},{\"react\":\"react\"}],170:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'form-group' },\n _react2.default.createElement(\n 'strong',\n { className: 'control-label col-md-3' },\n props.name,\n ':'\n ),\n _react2.default.createElement(_fieldValue2.default, props)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _fieldValue = require('./field-value');\n\nvar _fieldValue2 = _interopRequireDefault(_fieldValue);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./field-value\":169,\"react\":\"react\"}],171:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var api = _ref.api,\n display = _ref.display,\n onCancel = _ref.onCancel,\n onSuccess = _ref.onSuccess;\n\n if (!display) return null;\n\n return _react2.default.createElement(_editDetails2.default, {\n api: api,\n onCancel: onCancel,\n onSuccess: onSuccess\n });\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _editDetails = require('../../edit-details');\n\nvar _editDetails2 = _interopRequireDefault(_editDetails);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../edit-details\":29,\"react\":\"react\"}],172:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var fields = _ref.fields,\n name = _ref.name;\n\n return _react2.default.createElement(\n 'div',\n { className: 'panel panel-default panel-profile-details-group' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-heading' },\n _react2.default.createElement(\n 'h3',\n { className: 'panel-title' },\n name\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'div',\n { className: 'form-horizontal' },\n fields.map(function (_ref2) {\n var fieldname = _ref2.fieldname,\n html = _ref2.html,\n name = _ref2.name,\n text = _ref2.text,\n url = _ref2.url;\n\n return _react2.default.createElement(_field2.default, {\n key: fieldname,\n name: name,\n html: html,\n text: text,\n url: url\n });\n })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _field = require('./field');\n\nvar _field2 = _interopRequireDefault(_field);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./field\":170,\"react\":\"react\"}],173:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var display = _ref.display,\n groups = _ref.groups,\n isAuthenticated = _ref.isAuthenticated,\n loading = _ref.loading,\n profile = _ref.profile;\n\n if (!display) return null;\n\n if (loading) {\n return _react2.default.createElement(_loader2.default, null);\n }\n\n if (!groups.length) {\n return _react2.default.createElement(_emptyMessage2.default, {\n isAuthenticated: isAuthenticated,\n profile: profile\n });\n }\n\n return _react2.default.createElement(\n 'div',\n null,\n groups.map(function (group, i) {\n return _react2.default.createElement(_group2.default, {\n fields: group.fields,\n key: i,\n name: group.name\n });\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _emptyMessage = require('./empty-message');\n\nvar _emptyMessage2 = _interopRequireDefault(_emptyMessage);\n\nvar _group = require('./group');\n\nvar _group2 = _interopRequireDefault(_group);\n\nvar _loader = require('../../loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../loader\":54,\"./empty-message\":168,\"./group\":172,\"react\":\"react\"}],174:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var onEdit = _ref.onEdit,\n showEditButton = _ref.showEditButton;\n\n return _react2.default.createElement(\n \"div\",\n null,\n _react2.default.createElement(\n \"nav\",\n { className: \"toolbar\" },\n _react2.default.createElement(\n \"div\",\n { className: \"row\" },\n _react2.default.createElement(\n \"div\",\n { className: \"col-sm-8 col-md-10\" },\n _react2.default.createElement(\n \"h3\",\n { className: \"md-margin-top-no\" },\n gettext(\"Details\")\n )\n ),\n _react2.default.createElement(EditButton, {\n onEdit: onEdit,\n showEditButton: showEditButton\n })\n )\n )\n );\n};\n\nexports.EditButton = EditButton;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction EditButton(_ref2) {\n var onEdit = _ref2.onEdit,\n showEditButton = _ref2.showEditButton;\n\n if (!showEditButton) return null;\n\n return _react2.default.createElement(\n \"div\",\n { className: \"col-sm-4 col-md-2\" },\n _react2.default.createElement(\n \"button\",\n {\n className: \"btn btn-default btn-outline btn-block\",\n onClick: onEdit,\n type: \"button\"\n },\n gettext(\"Edit\")\n )\n );\n}\n\n},{\"react\":\"react\"}],175:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _groupsList = require('./groups-list');\n\nvar _groupsList2 = _interopRequireDefault(_groupsList);\n\nvar _header = require('./header');\n\nvar _header2 = _interopRequireDefault(_header);\n\nvar _profileDetails = require('../../../data/profile-details');\n\nvar _profileDetails2 = _interopRequireDefault(_profileDetails);\n\nvar _profileDetails3 = require('../../../reducers/profile-details');\n\nvar _pageTitle = require('../../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onCancel = function () {\n _this.setState({ editing: false });\n };\n\n _this.onEdit = function () {\n _this.setState({ editing: true });\n };\n\n _this.onSuccess = function (newDetails) {\n var _this$props = _this.props,\n dispatch = _this$props.dispatch,\n isAuthenticated = _this$props.isAuthenticated,\n profile = _this$props.profile;\n\n\n var message = null;\n if (isAuthenticated) {\n message = gettext(\"Your details have been updated.\");\n } else {\n message = interpolate(gettext(\"%(username)s's details have been updated.\"), {\n 'username': profile.username\n }, true);\n }\n\n _snackbar2.default.info(message);\n dispatch((0, _profileDetails3.load)(newDetails));\n _this.setState({ editing: false });\n };\n\n _this.state = {\n editing: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: gettext(\"Details\"),\n parent: this.props.profile.username\n });\n }\n }, {\n key: 'render',\n value: function render() {\n var _props = this.props,\n dispatch = _props.dispatch,\n isAuthenticated = _props.isAuthenticated,\n profile = _props.profile,\n profileDetails = _props.profileDetails;\n\n var loading = profileDetails.id !== profile.id;\n\n return _react2.default.createElement(\n _profileDetails2.default,\n {\n data: profileDetails,\n dispatch: dispatch,\n user: profile\n },\n _react2.default.createElement(\n 'div',\n { className: 'profile-details' },\n _react2.default.createElement(_header2.default, {\n onEdit: this.onEdit,\n showEditButton: !!profileDetails.edit && !this.state.editing\n }),\n _react2.default.createElement(_groupsList2.default, {\n display: !this.state.editing,\n groups: profileDetails.groups,\n isAuthenticated: isAuthenticated,\n loading: loading,\n profile: profile\n }),\n _react2.default.createElement(_form2.default, {\n api: profile.api.edit_details,\n dispatch: dispatch,\n display: this.state.editing,\n onCancel: this.onCancel,\n onSuccess: this.onSuccess\n })\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../data/profile-details\":290,\"../../../reducers/profile-details\":342,\"../../../services/page-title\":360,\"../../../services/snackbar\":363,\"./form\":171,\"./groups-list\":173,\"./header\":174,\"react\":\"react\"}],176:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.Threads = Threads;\nexports.Posts = Posts;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _route = require('./route');\n\nvar _route2 = _interopRequireDefault(_route);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction Threads(props) {\n var emptyMessage = null;\n if (props.user.id === props.profile.id) {\n emptyMessage = gettext(\"You have no started threads.\");\n } else {\n emptyMessage = interpolate(gettext(\"%(username)s started no threads.\"), {\n 'username': props.profile.username\n }, true);\n }\n\n var header = null;\n if (!props.posts.isLoaded) {\n header = gettext('Loading...');\n } else if (props.profile.id === props.user.id) {\n var message = ngettext(\"You have started %(threads)s thread.\", \"You have started %(threads)s threads.\", props.posts.count);\n\n header = interpolate(message, {\n 'threads': props.posts.count\n }, true);\n } else {\n var _message = ngettext(\"%(username)s has started %(threads)s thread.\", \"%(username)s has started %(threads)s threads.\", props.posts.count);\n\n header = interpolate(_message, {\n 'username': props.profile.username,\n 'threads': props.posts.count\n }, true);\n }\n\n return _react2.default.createElement(_route2.default, _extends({\n api: props.profile.api.threads,\n emptyMessage: emptyMessage,\n header: header,\n title: gettext(\"Threads\")\n }, props));\n}\n\nfunction Posts(props) {\n var emptyMessage = null;\n if (props.user.id === props.profile.id) {\n emptyMessage = gettext(\"You have posted no messages.\");\n } else {\n emptyMessage = interpolate(gettext(\"%(username)s posted no messages.\"), {\n 'username': props.profile.username\n }, true);\n }\n\n var header = null;\n if (!props.posts.isLoaded) {\n header = gettext('Loading...');\n } else if (props.profile.id === props.user.id) {\n var message = ngettext(\"You have posted %(posts)s message.\", \"You have posted %(posts)s messages.\", props.posts.count);\n\n header = interpolate(message, {\n 'posts': props.posts.count\n }, true);\n } else {\n var _message2 = ngettext(\"%(username)s has posted %(posts)s message.\", \"%(username)s has posted %(posts)s messages.\", props.posts.count);\n\n header = interpolate(_message2, {\n 'username': props.profile.username,\n 'posts': props.posts.count\n }, true);\n }\n\n return _react2.default.createElement(_route2.default, _extends({\n api: props.profile.api.posts,\n emptyMessage: emptyMessage,\n header: header,\n title: gettext(\"Posts\")\n }, props));\n}\n\n},{\"./route\":177,\"react\":\"react\"}],177:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.Feed = Feed;\nexports.LoadMoreButton = LoadMoreButton;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _postFeed = require('../../post-feed');\n\nvar _postFeed2 = _interopRequireDefault(_postFeed);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _posts = require('../../../reducers/posts');\n\nvar posts = _interopRequireWildcard(_posts);\n\nvar _pageTitle = require('../../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.loadMore = function () {\n _this.setState({\n isLoading: true\n });\n\n _this.loadItems(_this.props.posts.page + 1);\n };\n\n _this.state = {\n isLoading: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'loadItems',\n value: function loadItems() {\n var _this2 = this;\n\n var page = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n\n _ajax2.default.get(this.props.api, {\n page: page || 1\n }).then(function (data) {\n if (page === 1) {\n _store2.default.dispatch(posts.load(data));\n } else {\n _store2.default.dispatch(posts.append(data));\n }\n\n _this2.setState({\n isLoading: false\n });\n }, function (rejection) {\n _this2.setState({\n isLoading: false\n });\n\n _snackbar2.default.apiError(rejection);\n });\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: this.props.title,\n parent: this.props.profile.username\n });\n\n this.loadItems();\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'profile-feed' },\n _react2.default.createElement(\n 'nav',\n { className: 'toolbar' },\n _react2.default.createElement(\n 'h3',\n { className: 'toolbar-left' },\n this.props.header\n )\n ),\n _react2.default.createElement(Feed, _extends({\n isLoading: this.state.isLoading,\n loadMore: this.loadMore\n }, this.props))\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction Feed(props) {\n if (!props.posts.count) {\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n props.emptyMessage\n );\n }\n\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_postFeed2.default, {\n isReady: props.posts.isLoaded,\n posts: props.posts.results,\n poster: props.profile\n }),\n _react2.default.createElement(LoadMoreButton, {\n isLoading: props.isLoading,\n loadMore: props.loadMore,\n more: props.posts.more\n })\n );\n}\n\nfunction LoadMoreButton(props) {\n if (!props.more) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'pager-more' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn btn-default btn-outline',\n loading: props.isLoading,\n onClick: props.loadMore\n },\n interpolate(gettext(\"Show more (%(more)s)\"), {\n 'more': props.more\n }, true)\n )\n );\n}\n\n},{\"../../../reducers/posts\":341,\"../../../services/ajax\":352,\"../../../services/page-title\":360,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../button\":5,\"../../post-feed\":115,\"react\":\"react\"}],178:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _profile = require('../../reducers/profile');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.action = function () {\n _this.setState({\n isLoading: true\n });\n\n if (_this.props.profile.is_followed) {\n _store2.default.dispatch((0, _profile.patch)({\n is_followed: false,\n followers: _this.props.profile.followers - 1\n }));\n } else {\n _store2.default.dispatch((0, _profile.patch)({\n is_followed: true,\n followers: _this.props.profile.followers + 1\n }));\n }\n\n _ajax2.default.post(_this.props.profile.api.follow).then(function (data) {\n _this.setState({\n isLoading: false\n });\n\n _store2.default.dispatch((0, _profile.patch)(data));\n }, function (rejection) {\n _this.setState({\n isLoading: false\n });\n _snackbar2.default.apiError(rejection);\n });\n };\n\n _this.state = {\n isLoading: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'getClassName',\n value: function getClassName() {\n if (this.props.profile.is_followed) {\n return this.props.className + ' btn-default btn-following';\n } else {\n return this.props.className + ' btn-default btn-follow';\n }\n }\n }, {\n key: 'getIcon',\n value: function getIcon() {\n if (this.props.profile.is_followed) {\n return 'favorite';\n } else {\n return 'favorite_border';\n }\n }\n }, {\n key: 'getLabel',\n value: function getLabel() {\n if (this.props.profile.is_followed) {\n return gettext(\"Following\");\n } else {\n return gettext(\"Follow\");\n }\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n _button2.default,\n { className: this.getClassName(),\n disabled: this.state.isLoading,\n onClick: this.action },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n this.getIcon()\n ),\n this.getLabel()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../reducers/profile\":343,\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../../services/store\":364,\"../button\":5,\"react\":\"react\"}],179:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _quickSearch = require('../quick-search');\n\nvar _quickSearch2 = _interopRequireDefault(_quickSearch);\n\nvar _usersList = require('../users-list');\n\nvar _usersList2 = _interopRequireDefault(_usersList);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _users = require('../../reducers/users');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _pageTitle = require('../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.loadMore = function () {\n _this.setState({\n isBusy: true\n });\n\n _this.loadUsers(_this.state.page + 1, _this.state.search);\n };\n\n _this.search = function (ev) {\n _this.setState({\n isLoaded: false,\n isBusy: true,\n\n search: ev.target.value,\n\n count: 0,\n more: 0,\n\n page: 1,\n pages: 1\n });\n\n _this.loadUsers(1, ev.target.value);\n };\n\n _this.setSpecialProps();\n\n if (_index2.default.has(_this.PRELOADED_DATA_KEY)) {\n _this.initWithPreloadedData(_index2.default.pop(_this.PRELOADED_DATA_KEY));\n } else {\n _this.initWithoutPreloadedData();\n }\n return _this;\n }\n\n _createClass(_class, [{\n key: 'setSpecialProps',\n value: function setSpecialProps() {\n this.PRELOADED_DATA_KEY = 'PROFILE_FOLLOWERS';\n this.TITLE = gettext('Followers');\n this.API_FILTER = 'followers';\n }\n }, {\n key: 'initWithPreloadedData',\n value: function initWithPreloadedData(data) {\n this.state = {\n isLoaded: true,\n isBusy: false,\n\n search: '',\n\n count: data.count,\n more: data.more,\n\n page: data.page,\n pages: data.pages\n };\n\n _store2.default.dispatch((0, _users.hydrate)(data.results));\n }\n }, {\n key: 'initWithoutPreloadedData',\n value: function initWithoutPreloadedData() {\n this.state = {\n isLoaded: false,\n isBusy: false,\n\n search: '',\n\n count: 0,\n more: 0,\n\n page: 1,\n pages: 1\n };\n\n this.loadUsers();\n }\n }, {\n key: 'loadUsers',\n value: function loadUsers() {\n var _this2 = this;\n\n var page = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n var search = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n var apiUrl = this.props.profile.api[this.API_FILTER];\n\n _ajax2.default.get(apiUrl, {\n search: search,\n page: page || 1\n }, 'user-' + this.API_FILTER).then(function (data) {\n if (page === 1) {\n _store2.default.dispatch((0, _users.hydrate)(data.results));\n } else {\n _store2.default.dispatch((0, _users.append)(data.results));\n }\n\n _this2.setState({\n isLoaded: true,\n isBusy: false,\n\n count: data.count,\n more: data.more,\n\n page: data.page,\n pages: data.pages\n });\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n });\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: this.TITLE,\n parent: this.props.profile.username\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getLabel',\n\n /* jshint ignore:end */\n\n value: function getLabel() {\n if (!this.state.isLoaded) {\n return gettext('Loading...');\n } else if (this.state.search) {\n var message = ngettext(\"Found %(users)s user.\", \"Found %(users)s users.\", this.state.count);\n\n return interpolate(message, {\n 'users': this.state.count\n }, true);\n } else if (this.props.profile.id === this.props.user.id) {\n var _message = ngettext(\"You have %(users)s follower.\", \"You have %(users)s followers.\", this.state.count);\n\n return interpolate(_message, {\n 'users': this.state.count\n }, true);\n } else {\n var _message2 = ngettext(\"%(username)s has %(users)s follower.\", \"%(username)s has %(users)s followers.\", this.state.count);\n\n return interpolate(_message2, {\n 'username': this.props.profile.username,\n 'users': this.state.count\n }, true);\n }\n }\n }, {\n key: 'getEmptyMessage',\n value: function getEmptyMessage() {\n if (this.state.search) {\n return gettext(\"Search returned no users matching specified criteria.\");\n } else if (this.props.user.id === this.props.profile.id) {\n return gettext(\"You have no followers.\");\n } else {\n return interpolate(gettext(\"%(username)s has no followers.\"), {\n 'username': this.props.profile.username\n }, true);\n }\n }\n }, {\n key: 'getMoreButton',\n value: function getMoreButton() {\n if (!this.state.more) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'pager-more' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn btn-default btn-outline',\n loading: this.state.isBusy,\n onClick: this.loadMore\n },\n interpolate(gettext(\"Show more (%(more)s)\"), {\n 'more': this.state.more\n }, true)\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getListBody',\n value: function getListBody() {\n if (this.state.isLoaded && this.state.count === 0) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.getEmptyMessage()\n );\n /* jshint ignore:end */\n }\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_usersList2.default, {\n cols: 3,\n isReady: this.state.isLoaded,\n users: this.props.users\n }),\n this.getMoreButton()\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n return 'profile-' + this.API_FILTER;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName() },\n _react2.default.createElement(\n 'nav',\n { className: 'toolbar' },\n _react2.default.createElement(\n 'h3',\n { className: 'toolbar-left' },\n this.getLabel()\n ),\n _react2.default.createElement(_quickSearch2.default, { className: 'toolbar-right',\n value: this.state.search,\n onChange: this.search,\n placeholder: gettext(\"Search users...\") })\n ),\n this.getListBody()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../index\":291,\"../../reducers/users\":351,\"../../services/ajax\":352,\"../../services/page-title\":360,\"../../services/snackbar\":363,\"../../services/store\":364,\"../button\":5,\"../quick-search\":190,\"../users-list\":273,\"react\":\"react\"}],180:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _followers = require('./followers');\n\nvar _followers2 = _interopRequireDefault(_followers);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\nvar _class = function (_Followers) {\n _inherits(_class, _Followers);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'setSpecialProps',\n value: function setSpecialProps() {\n this.PRELOADED_DATA_KEY = 'PROFILE_FOLLOWS';\n this.TITLE = gettext('Follows');\n this.API_FILTER = 'follows';\n }\n }, {\n key: 'getLabel',\n value: function getLabel() {\n if (!this.state.isLoaded) {\n return gettext('Loading...');\n } else if (this.state.search) {\n var message = ngettext(\"Found %(users)s user.\", \"Found %(users)s users.\", this.state.count);\n\n return interpolate(message, {\n 'users': this.state.count\n }, true);\n } else if (this.props.profile.id === this.props.user.id) {\n var _message = ngettext(\"You are following %(users)s user.\", \"You are following %(users)s users.\", this.state.count);\n\n return interpolate(_message, {\n 'users': this.state.count\n }, true);\n } else {\n var _message2 = ngettext(\"%(username)s is following %(users)s user.\", \"%(username)s is following %(users)s users.\", this.state.count);\n\n return interpolate(_message2, {\n 'username': this.props.profile.username,\n 'users': this.state.count\n }, true);\n }\n }\n }, {\n key: 'getEmptyMessage',\n value: function getEmptyMessage() {\n if (this.state.search) {\n return gettext(\"Search returned no users matching specified criteria.\");\n } else if (this.props.user.id === this.props.profile.id) {\n return gettext(\"You are not following any users.\");\n } else {\n return interpolate(gettext(\"%(username)s is not following any users.\"), {\n 'username': this.props.profile.username\n }, true);\n }\n }\n }]);\n\n return _class;\n}(_followers2.default);\n\nexports.default = _class;\n\n},{\"./followers\":179,\"react\":\"react\"}],181:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.IsDisabledMessage = IsDisabledMessage;\nexports.getColStyle = getColStyle;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _dropdownToggle = require('../dropdown-toggle');\n\nvar _dropdownToggle2 = _interopRequireDefault(_dropdownToggle);\n\nvar _followButton = require('./follow-button');\n\nvar _followButton2 = _interopRequireDefault(_followButton);\n\nvar _messageButton = require('./message-button');\n\nvar _messageButton2 = _interopRequireDefault(_messageButton);\n\nvar _nav = require('./moderation/nav');\n\nvar _nav2 = _interopRequireDefault(_nav);\n\nvar _navs = require('./navs');\n\nvar _userStatus = require('../user-status');\n\nvar _userStatus2 = _interopRequireDefault(_userStatus);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getUserStatus',\n value: function getUserStatus() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'user-status-display' },\n _react2.default.createElement(\n _userStatus2.default,\n {\n user: this.props.profile,\n status: this.props.profile.status\n },\n _react2.default.createElement(_userStatus.StatusIcon, {\n user: this.props.profile,\n status: this.props.profile.status\n }),\n _react2.default.createElement(_userStatus.StatusLabel, {\n user: this.props.profile,\n status: this.props.profile.status,\n className: 'status-label'\n })\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getUserRank',\n value: function getUserRank() {\n if (this.props.profile.rank.is_tab) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'user-rank' },\n _react2.default.createElement(\n 'a',\n { href: this.props.profile.rank.url, className: 'item-title' },\n this.props.profile.rank.name\n )\n );\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'user-rank' },\n _react2.default.createElement(\n 'span',\n { className: 'item-title' },\n this.props.profile.rank.name\n )\n );\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'getUserTitle',\n value: function getUserTitle() {\n if (this.props.profile.title) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'user-title' },\n this.props.profile.title\n );\n /* jshint ignore:end */\n } else if (this.props.profile.rank.title) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'user-title' },\n this.props.profile.rank.title\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getJoinedOn',\n value: function getJoinedOn() {\n /* jshint ignore:start */\n var title = interpolate(gettext(\"Joined on %(joined_on)s\"), {\n 'joined_on': this.props.profile.joined_on.format('LL, LT')\n }, true);\n\n var age = interpolate(gettext(\"Joined %(joined_on)s\"), {\n 'joined_on': this.props.profile.joined_on.fromNow()\n }, true);\n\n return _react2.default.createElement(\n 'li',\n { className: 'user-joined-on' },\n _react2.default.createElement(\n 'abbr',\n { title: title },\n age\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getEmail',\n value: function getEmail() {\n if (this.props.profile.email) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'user-email' },\n _react2.default.createElement(\n 'a',\n { href: 'mailto:' + this.props.profile.email, className: 'item-title' },\n this.props.profile.email\n )\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getFollowButton',\n value: function getFollowButton() {\n if (this.props.profile.acl.can_follow) {\n /* jshint ignore:start */\n return _react2.default.createElement(_followButton2.default, {\n className: 'btn btn-block btn-outline',\n profile: this.props.profile\n });\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getModerationButton',\n value: function getModerationButton() {\n if (this.props.profile.acl.can_moderate) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'btn-group btn-group-justified' },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-moderate btn-outline dropdown-toggle',\n type: 'button',\n 'data-toggle': 'dropdown',\n 'aria-haspopup': 'true',\n 'aria-expanded': 'false'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'tonality'\n ),\n gettext(\"Moderation\")\n ),\n _react2.default.createElement(_nav2.default, { profile: this.props.profile })\n )\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n var canFollow = this.props.profile.acl.can_follow;\n var canModerate = this.props.profile.acl.can_moderate;\n\n var isProfileOwner = this.props.user.id === this.props.profile.id;\n var canMessage = !isProfileOwner && this.props.user.acl.can_start_private_threads;\n\n var cols = 0;\n if (canFollow) cols += 1;\n if (canModerate) cols += 1;\n if (canMessage) cols += 1;\n\n var colsWidth = cols ? 2 * cols + 1 : 0;\n\n var headerClassName = 'page-header';\n if (this.props.profile.rank.css_class) {\n headerClassName += ' page-header-rank-' + this.props.profile.rank.css_class;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'page-header-bg' },\n _react2.default.createElement(\n 'div',\n { className: headerClassName },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(IsDisabledMessage, {\n isActive: this.props.profile.is_active\n }),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-9 col-md-offset-3' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: \"col-sm-\" + (12 - colsWidth) },\n _react2.default.createElement(_avatar2.default, {\n className: 'user-avatar user-avatar-sm',\n user: this.props.profile,\n size: '100',\n size2x: '200'\n }),\n _react2.default.createElement(\n 'h1',\n null,\n this.props.profile.username\n )\n ),\n !!cols && _react2.default.createElement(\n 'div',\n { className: \"col-sm-\" + colsWidth },\n _react2.default.createElement(\n 'div',\n { className: 'row xs-margin-top sm-margin-top' },\n !!canMessage && _react2.default.createElement(\n 'div',\n { className: getColStyle(cols, 0) },\n _react2.default.createElement(_messageButton2.default, {\n className: 'btn btn-default btn-block btn-outline',\n profile: this.props.profile,\n user: this.props.user\n })\n ),\n !!canFollow && _react2.default.createElement(\n 'div',\n { className: getColStyle(cols, 1) },\n this.getFollowButton()\n ),\n !!canModerate && _react2.default.createElement(\n 'div',\n { className: getColStyle(cols, 2) },\n this.getModerationButton()\n )\n )\n )\n )\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'header-stats' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-9 col-md-offset-3' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-inline' },\n this.getUserStatus(),\n this.getUserRank(),\n this.getUserTitle(),\n this.getJoinedOn(),\n this.getEmail()\n )\n )\n )\n )\n ),\n _react2.default.createElement(_navs.CompactNav, {\n baseUrl: this.props.baseUrl,\n pages: this.props.pages,\n profile: this.props.profile\n })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\n/* jshint ignore:start */\n\n\nexports.default = _class;\nfunction IsDisabledMessage(props) {\n if (props.isActive !== false) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'alert alert-danger' },\n _react2.default.createElement(\n 'p',\n null,\n gettext(\"This user's account has been disabled by administrator.\")\n )\n );\n}\n\nfunction getColStyle(cols, col) {\n var colStyle = \"\";\n\n if (cols == 1) {\n colStyle = \"col-xs-12\";\n }\n\n if (cols == 2) {\n colStyle = \"col-xs-6 col-sm-6\";\n }\n\n if (cols == 3) {\n if (col == 2) {\n colStyle = \"col-xs-12 col-sm-4 xs-margin-top\";\n } else {\n colStyle += \"col-xs-6 col-sm-4\";\n }\n }\n\n return colStyle;\n}\n/* jshint ignore:end */\n\n},{\"../avatar\":3,\"../dropdown-toggle\":24,\"../user-status\":263,\"./follow-button\":178,\"./message-button\":182,\"./moderation/nav\":186,\"./navs\":187,\"react\":\"react\"}],182:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _posting2.default.open({\n mode: 'START_PRIVATE',\n submit: _2.default.get('PRIVATE_THREADS_API'),\n\n to: [_this.props.profile]\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n var canMessage = this.props.user.acl.can_start_private_threads;\n var isProfileOwner = this.props.user.id === this.props.profile.id;\n\n if (!canMessage || isProfileOwner) return null;\n\n return _react2.default.createElement(\n 'button',\n {\n className: this.props.className,\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'comment'\n ),\n gettext(\"Message\")\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../..\":291,\"../../services/posting\":362,\"react\":\"react\"}],183:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _modalLoader = require('../../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _yesNoSwitch = require('../../yes-no-switch');\n\nvar _yesNoSwitch2 = _interopRequireDefault(_yesNoSwitch);\n\nvar _modalMessage = require('../../modal-message');\n\nvar _modalMessage2 = _interopRequireDefault(_modalMessage);\n\nvar _users = require('../../../reducers/users');\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n isLoaded: false,\n isLoading: false,\n error: null,\n\n is_avatar_locked: '',\n avatar_lock_user_message: '',\n avatar_lock_staff_message: ''\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(this.props.profile.api.moderate_avatar).then(function (options) {\n _this2.setState({\n isLoaded: true,\n\n is_avatar_locked: options.is_avatar_locked,\n avatar_lock_user_message: options.avatar_lock_user_message || '',\n avatar_lock_staff_message: options.avatar_lock_staff_message || ''\n });\n }, function (rejection) {\n _this2.setState({\n isLoaded: true,\n error: rejection.detail\n });\n });\n }\n }, {\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(this.validate().username[0]);\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.profile.api.moderate_avatar, {\n is_avatar_locked: this.state.is_avatar_locked,\n avatar_lock_user_message: this.state.avatar_lock_user_message,\n avatar_lock_staff_message: this.state.avatar_lock_staff_message\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n _store2.default.dispatch((0, _users.updateAvatar)(this.props.profile, apiResponse.avatar_hash));\n _snackbar2.default.success(gettext(\"Avatar controls have been changed.\"));\n }\n }, {\n key: 'getFormBody',\n value: function getFormBody() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Lock avatar\"),\n helpText: gettext(\"Locking user avatar will prohibit user from changing his avatar and will reset his/her avatar to default one.\"),\n 'for': 'id_is_avatar_locked' },\n _react2.default.createElement(_yesNoSwitch2.default, { id: 'id_is_avatar_locked',\n disabled: this.state.isLoading,\n iconOn: 'lock_outline',\n iconOff: 'lock_open',\n labelOn: gettext(\"Disallow user from changing avatar\"),\n labelOff: gettext(\"Allow user to change avatar\"),\n onChange: this.bindInput('is_avatar_locked'),\n value: this.state.is_avatar_locked })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"User message\"),\n helpText: gettext(\"Optional message for user explaining why he/she is prohibited form changing avatar.\"),\n 'for': 'id_avatar_lock_user_message' },\n _react2.default.createElement('textarea', { id: 'id_avatar_lock_user_message',\n className: 'form-control',\n rows: '4',\n disabled: this.state.isLoading,\n onChange: this.bindInput('avatar_lock_user_message'),\n value: this.state.avatar_lock_user_message })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Staff message\"),\n helpText: gettext(\"Optional message for forum team members explaining why user is prohibited form changing avatar.\"),\n 'for': 'id_avatar_lock_staff_message' },\n _react2.default.createElement('textarea', { id: 'id_avatar_lock_staff_message',\n className: 'form-control',\n rows: '4',\n disabled: this.state.isLoading,\n onChange: this.bindInput('avatar_lock_staff_message'),\n value: this.state.avatar_lock_staff_message })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-default', 'data-dismiss': 'modal' },\n gettext(\"Close\")\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Save changes\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getModalBody',\n value: function getModalBody() {\n if (this.state.error) {\n /* jshint ignore:start */\n return _react2.default.createElement(_modalMessage2.default, { icon: 'remove_circle_outline',\n message: this.state.error });\n /* jshint ignore:end */\n } else if (this.state.isLoaded) {\n return this.getFormBody();\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_modalLoader2.default, null);\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.state.error) {\n return \"modal-dialog modal-message modal-avatar-controls\";\n } else {\n return \"modal-dialog modal-avatar-controls\";\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName(),\n role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Avatar controls\")\n )\n ),\n this.getModalBody()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../reducers/users\":351,\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../button\":5,\"../../form\":52,\"../../form-group\":51,\"../../modal-loader\":57,\"../../modal-message\":58,\"../../yes-no-switch\":289,\"react\":\"react\"}],184:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _modalLoader = require('../../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _modalMessage = require('../../modal-message');\n\nvar _modalMessage2 = _interopRequireDefault(_modalMessage);\n\nvar _usernameHistory = require('../../../reducers/username-history');\n\nvar _users = require('../../../reducers/users');\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _validators = require('../../../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n isLoaded: false,\n isLoading: false,\n error: null,\n\n username: '',\n validators: {\n username: [validators.usernameContent()]\n }\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(this.props.profile.api.moderate_username).then(function () {\n _this2.setState({\n isLoaded: true\n });\n }, function (rejection) {\n _this2.setState({\n isLoaded: true,\n error: rejection.detail\n });\n });\n }\n }, {\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(this.validate().username[0]);\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.profile.api.moderate_username, {\n username: this.state.username\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n this.setState({\n username: ''\n });\n\n _store2.default.dispatch((0, _usernameHistory.addNameChange)(apiResponse, this.props.profile, this.props.user));\n _store2.default.dispatch((0, _users.updateUsername)(this.props.profile, apiResponse.username, apiResponse.slug));\n\n _snackbar2.default.success(gettext(\"Username has been changed.\"));\n }\n }, {\n key: 'getFormBody',\n value: function getFormBody() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"New username\"), 'for': 'id_username' },\n _react2.default.createElement('input', { type: 'text', id: 'id_username', className: 'form-control',\n disabled: this.state.isLoading,\n onChange: this.bindInput('username'),\n value: this.state.username })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Change username\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getModalBody',\n value: function getModalBody() {\n if (this.state.error) {\n /* jshint ignore:start */\n return _react2.default.createElement(_modalMessage2.default, { icon: 'remove_circle_outline',\n message: this.state.error });\n /* jshint ignore:end */\n } else if (this.state.isLoaded) {\n return this.getFormBody();\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_modalLoader2.default, null);\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.state.error) {\n return \"modal-dialog modal-message modal-rename-user\";\n } else {\n return \"modal-dialog modal-rename-user\";\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName(),\n role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Change username\")\n )\n ),\n this.getModalBody()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../reducers/username-history\":350,\"../../../reducers/users\":351,\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../../utils/validators\":380,\"../../button\":5,\"../../form\":52,\"../../form-group\":51,\"../../modal-loader\":57,\"../../modal-message\":58,\"react\":\"react\"}],185:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _modalLoader = require('../../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _modalMessage = require('../../modal-message');\n\nvar _modalMessage2 = _interopRequireDefault(_modalMessage);\n\nvar _yesNoSwitch = require('../../yes-no-switch');\n\nvar _yesNoSwitch2 = _interopRequireDefault(_yesNoSwitch);\n\nvar _index = require('../../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _polls = require('../../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.countdown = function () {\n window.setTimeout(function () {\n if (_this.state.countdown > 1) {\n _this.setState({\n countdown: _this.state.countdown - 1\n });\n _this.countdown();\n } else if (!_this.state.confirm) {\n _this.setState({\n confirm: true\n });\n }\n }, 1000);\n };\n\n _this.state = {\n isLoaded: false,\n isLoading: false,\n isDeleted: false,\n error: null,\n\n countdown: 5,\n confirm: false,\n\n with_content: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(this.props.profile.api.delete).then(function () {\n _this2.setState({\n isLoaded: true\n });\n\n _this2.countdown();\n }, function (rejection) {\n _this2.setState({\n isLoaded: true,\n error: rejection.detail\n });\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'send',\n\n /* jshint ignore:end */\n\n value: function send() {\n return _ajax2.default.post(this.props.profile.api.delete, {\n with_content: this.state.with_content\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess() {\n _polls2.default.stop('user-profile');\n\n if (this.state.with_content) {\n this.setState({\n isDeleted: interpolate(gettext(\"%(username)s's account, threads, posts and other content has been deleted.\"), {\n 'username': this.props.profile.username\n }, true)\n });\n } else {\n this.setState({\n isDeleted: interpolate(gettext(\"%(username)s's account has been deleted and other content has been hidden.\"), {\n 'username': this.props.profile.username\n }, true)\n });\n }\n }\n }, {\n key: 'getButtonLabel',\n value: function getButtonLabel() {\n if (this.state.confirm) {\n return interpolate(gettext(\"Delete %(username)s\"), {\n 'username': this.props.profile.username\n }, true);\n } else {\n return interpolate(gettext(\"Please wait... (%(countdown)ss)\"), {\n 'countdown': this.state.countdown\n }, true);\n }\n }\n }, {\n key: 'getForm',\n value: function getForm() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"User content\"),\n 'for': 'id_with_content' },\n _react2.default.createElement(_yesNoSwitch2.default, { id: 'id_with_content',\n disabled: this.state.isLoading,\n labelOn: gettext(\"Delete together with user's account\"),\n labelOff: gettext(\"Hide after deleting user's account\"),\n onChange: this.bindInput('with_content'),\n value: this.state.with_content })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n { type: 'button',\n className: 'btn btn-default',\n 'data-dismiss': 'modal' },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-danger',\n loading: this.state.isLoading,\n disabled: !this.state.confirm },\n this.getButtonLabel()\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getDeletedBody',\n value: function getDeletedBody() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.state.isDeleted\n ),\n _react2.default.createElement(\n 'p',\n null,\n _react2.default.createElement(\n 'a',\n { href: _index2.default.get('USERS_LIST_URL') },\n gettext(\"Return to users list\")\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getModalBody',\n value: function getModalBody() {\n if (this.state.error) {\n /* jshint ignore:start */\n return _react2.default.createElement(_modalMessage2.default, { icon: 'remove_circle_outline',\n message: this.state.error });\n /* jshint ignore:end */\n } else if (this.state.isLoaded) {\n if (this.state.isDeleted) {\n return this.getDeletedBody();\n } else {\n return this.getForm();\n }\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_modalLoader2.default, null);\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.state.error || this.state.isDeleted) {\n return \"modal-dialog modal-message modal-delete-account\";\n } else {\n return \"modal-dialog modal-delete-account\";\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName(),\n role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Delete user account\")\n )\n ),\n this.getModalBody()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../index\":291,\"../../../services/ajax\":352,\"../../../services/polls\":361,\"../../button\":5,\"../../form\":52,\"../../form-group\":51,\"../../modal-loader\":57,\"../../modal-message\":58,\"../../yes-no-switch\":289,\"react\":\"react\"}],186:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRedux = require('react-redux');\n\nvar _avatarControls = require('./avatar-controls');\n\nvar _avatarControls2 = _interopRequireDefault(_avatarControls);\n\nvar _changeUsername = require('./change-username');\n\nvar _changeUsername2 = _interopRequireDefault(_changeUsername);\n\nvar _deleteAccount = require('./delete-account');\n\nvar _deleteAccount2 = _interopRequireDefault(_deleteAccount);\n\nvar _modal = require('../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\n/* jshint ignore:start */\nvar select = function select(store) {\n return {\n tick: store.tick,\n user: store.auth,\n profile: store.profile\n };\n};\n/* jshint ignore:end */\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.showAvatarDialog = function () {\n _modal2.default.show((0, _reactRedux.connect)(select)(_avatarControls2.default));\n }, _this.showRenameDialog = function () {\n _modal2.default.show((0, _reactRedux.connect)(select)(_changeUsername2.default));\n }, _this.showDeleteDialog = function () {\n _modal2.default.show((0, _reactRedux.connect)(select)(_deleteAccount2.default));\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'getAvatarButton',\n\n /* jshint ignore:end */\n\n value: function getAvatarButton() {\n if (this.props.profile.acl.can_moderate_avatar) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: 'btn btn-link',\n onClick: this.showAvatarDialog\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'portrait'\n ),\n gettext(\"Avatar controls\")\n )\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getRenameButton',\n\n /* jshint ignore:end */\n\n value: function getRenameButton() {\n if (this.props.profile.acl.can_rename) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: 'btn btn-link',\n onClick: this.showRenameDialog\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'credit_card'\n ),\n gettext(\"Change username\")\n )\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getDeleteButton',\n\n /* jshint ignore:end */\n\n value: function getDeleteButton() {\n if (this.props.profile.acl.can_delete) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: 'btn btn-link',\n onClick: this.showDeleteDialog\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'clear'\n ),\n gettext(\"Delete account\")\n )\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'ul',\n {\n className: 'dropdown-menu dropdown-menu-right stick-to-bottom',\n role: 'menu'\n },\n this.getAvatarButton(),\n this.getRenameButton(),\n this.getDeleteButton()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../services/modal\":358,\"./avatar-controls\":183,\"./change-username\":184,\"./delete-account\":185,\"react\":\"react\",\"react-redux\":\"react-redux\"}],187:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SideNav = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.CompactNav = CompactNav;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nvar _li = require('../li');\n\nvar _li2 = _interopRequireDefault(_li);\n\nvar _followButton = require('./follow-button');\n\nvar _followButton2 = _interopRequireDefault(_followButton);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n//jshint ignore:line\n// jshint ignore:line\n\n\n//jshint ignore:line\n\nvar SideNav = exports.SideNav = function (_React$Component) {\n _inherits(SideNav, _React$Component);\n\n function SideNav() {\n _classCallCheck(this, SideNav);\n\n return _possibleConstructorReturn(this, (SideNav.__proto__ || Object.getPrototypeOf(SideNav)).apply(this, arguments));\n }\n\n _createClass(SideNav, [{\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n // jshint ignore:start\n return _react2.default.createElement(\n 'div',\n { className: 'list-group nav-side' },\n this.props.pages.map(function (page) {\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n to: _this2.props.baseUrl + page.component + '/',\n className: 'list-group-item',\n activeClassName: 'active',\n key: page.component\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n page.icon\n ),\n page.name\n );\n })\n );\n // jshint ignore:end\n }\n }]);\n\n return SideNav;\n}(_react2.default.Component);\n\n// jshint ignore:start\n\n\nfunction CompactNav(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'page-tabs hidden-md hidden-lg' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'ul',\n { className: 'nav nav-pills', role: 'menu' },\n props.pages.map(function (page) {\n return _react2.default.createElement(\n _li2.default,\n {\n path: props.baseUrl + page.component + '/',\n key: page.component\n },\n _react2.default.createElement(\n _reactRouter.Link,\n {\n to: props.baseUrl + page.component + '/',\n onClick: props.hideNav\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n page.icon\n ),\n page.name\n )\n );\n })\n )\n )\n );\n}\n// jshint ignore:end\n\n},{\"../../index\":291,\"../li\":53,\"./follow-button\":178,\"react\":\"react\",\"react-router\":\"react-router\"}],188:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.select = select;\nexports.paths = paths;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRedux = require('react-redux');\n\nvar _banDetails = require('./ban-details');\n\nvar _banDetails2 = _interopRequireDefault(_banDetails);\n\nvar _details = require('./details');\n\nvar _details2 = _interopRequireDefault(_details);\n\nvar _feed = require('./feed');\n\nvar _followers = require('./followers');\n\nvar _followers2 = _interopRequireDefault(_followers);\n\nvar _follows = require('./follows');\n\nvar _follows2 = _interopRequireDefault(_follows);\n\nvar _usernameHistory = require('./username-history');\n\nvar _usernameHistory2 = _interopRequireDefault(_usernameHistory);\n\nvar _header = require('./header');\n\nvar _header2 = _interopRequireDefault(_header);\n\nvar _nav = require('./moderation/nav');\n\nvar _nav2 = _interopRequireDefault(_nav);\n\nvar _navs = require('./navs');\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _withDropdown = require('../with-dropdown');\n\nvar _withDropdown2 = _interopRequireDefault(_withDropdown);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _profile = require('../../reducers/profile');\n\nvar _polls = require('../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_WithDropdown) {\n _inherits(_class, _WithDropdown);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.update = function (data) {\n _store2.default.dispatch((0, _profile.hydrate)(data));\n };\n\n _this.startPolling(props.profile.api.index);\n return _this;\n }\n\n _createClass(_class, [{\n key: 'startPolling',\n value: function startPolling(api) {\n _polls2.default.start({\n poll: 'user-profile',\n url: api,\n frequency: 90 * 1000,\n update: this.update\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n var baseUrl = _2.default.get('PROFILE').url;\n var pages = _2.default.get('PROFILE_PAGES');\n\n return _react2.default.createElement(\n 'div',\n { className: 'page page-user-profile' },\n _react2.default.createElement(_header2.default, {\n baseUrl: baseUrl,\n pages: pages,\n profile: this.props.profile,\n toggleNav: this.toggleNav,\n toggleModeration: this.toggleModeration,\n user: this.props.user\n }),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-3 hidden-xs hidden-sm' },\n _react2.default.createElement(\n 'div',\n { className: 'profile-side-avatar' },\n _react2.default.createElement(_avatar2.default, { user: this.props.profile, size: '400' })\n ),\n _react2.default.createElement(_navs.SideNav, {\n baseUrl: baseUrl,\n pages: pages,\n profile: this.props.profile\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-md-9' },\n this.props.children\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_withDropdown2.default);\n\nexports.default = _class;\nfunction select(store) {\n return {\n isAuthenticated: store.auth.user.id === store.profile.id,\n\n tick: store.tick.tick,\n user: store.auth.user,\n users: store.users,\n posts: store.posts,\n profile: store.profile,\n profileDetails: store['profile-details'],\n 'username-history': store['username-history']\n };\n}\n\nvar COMPONENTS = {\n 'posts': _feed.Posts,\n 'threads': _feed.Threads,\n 'followers': _followers2.default,\n 'follows': _follows2.default,\n 'details': _details2.default,\n 'username-history': _usernameHistory2.default,\n 'ban-details': _banDetails2.default\n};\n\nfunction paths() {\n var paths = [];\n _2.default.get('PROFILE_PAGES').forEach(function (item) {\n paths.push(Object.assign({}, item, {\n path: _2.default.get('PROFILE').url + item.component + '/',\n component: (0, _reactRedux.connect)(select)(COMPONENTS[item.component])\n }));\n });\n\n return paths;\n}\n\n},{\"../..\":291,\"../../reducers/profile\":343,\"../../services/polls\":361,\"../../services/store\":364,\"../avatar\":3,\"../with-dropdown\":288,\"./ban-details\":167,\"./details\":175,\"./feed\":176,\"./followers\":179,\"./follows\":180,\"./header\":181,\"./moderation/nav\":186,\"./navs\":187,\"./username-history\":189,\"react\":\"react\",\"react-redux\":\"react-redux\"}],189:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _quickSearch = require('../quick-search');\n\nvar _quickSearch2 = _interopRequireDefault(_quickSearch);\n\nvar _root = require('../username-history/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _usernameHistory = require('../../reducers/username-history');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _pageTitle = require('../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.loadMore = function () {\n _this.setState({\n isBusy: true\n });\n\n _this.loadChanges(_this.state.page + 1, _this.state.search);\n };\n\n _this.search = function (ev) {\n _this.setState({\n isLoaded: false,\n isBusy: true,\n\n search: ev.target.value,\n\n count: 0,\n more: 0,\n\n page: 1,\n pages: 1\n });\n\n _this.loadChanges(1, ev.target.value);\n };\n\n if (_index2.default.has('PROFILE_NAME_HISTORY')) {\n _this.initWithPreloadedData(_index2.default.pop('PROFILE_NAME_HISTORY'));\n } else {\n _this.initWithoutPreloadedData();\n }\n return _this;\n }\n\n _createClass(_class, [{\n key: 'initWithPreloadedData',\n value: function initWithPreloadedData(data) {\n this.state = {\n isLoaded: true,\n isBusy: false,\n\n search: '',\n\n count: data.count,\n more: data.more,\n\n page: data.page,\n pages: data.pages\n };\n\n _store2.default.dispatch((0, _usernameHistory.hydrate)(data.results));\n }\n }, {\n key: 'initWithoutPreloadedData',\n value: function initWithoutPreloadedData() {\n this.state = {\n isLoaded: false,\n isBusy: false,\n\n search: '',\n\n count: 0,\n more: 0,\n\n page: 1,\n pages: 1\n };\n\n this.loadChanges();\n }\n }, {\n key: 'loadChanges',\n value: function loadChanges() {\n var _this2 = this;\n\n var page = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n var search = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n _ajax2.default.get(_index2.default.get('USERNAME_CHANGES_API'), {\n user: this.props.profile.id,\n search: search,\n page: page || 1\n }, 'search-username-history').then(function (data) {\n if (page === 1) {\n _store2.default.dispatch((0, _usernameHistory.hydrate)(data.results));\n } else {\n _store2.default.dispatch((0, _usernameHistory.append)(data.results));\n }\n\n _this2.setState({\n isLoaded: true,\n isBusy: false,\n\n count: data.count,\n more: data.more,\n\n page: data.page,\n pages: data.pages\n });\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n });\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: gettext(\"Username history\"),\n parent: this.props.profile.username\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getLabel',\n\n /* jshint ignore:end */\n\n value: function getLabel() {\n if (!this.state.isLoaded) {\n return gettext('Loading...');\n } else if (this.state.search) {\n var message = ngettext(\"Found %(changes)s username change.\", \"Found %(changes)s username changes.\", this.state.count);\n\n return interpolate(message, {\n 'changes': this.state.count\n }, true);\n } else if (this.props.profile.id === this.props.user.id) {\n var _message = ngettext(\"Your username was changed %(changes)s time.\", \"Your username was changed %(changes)s times.\", this.state.count);\n\n return interpolate(_message, {\n 'changes': this.state.count\n }, true);\n } else {\n var _message2 = ngettext(\"%(username)s's username was changed %(changes)s time.\", \"%(username)s's username was changed %(changes)s times.\", this.state.count);\n\n return interpolate(_message2, {\n 'username': this.props.profile.username,\n 'changes': this.state.count\n }, true);\n }\n }\n }, {\n key: 'getEmptyMessage',\n value: function getEmptyMessage() {\n if (this.state.search) {\n return gettext(\"Search returned no username changes matching specified criteria.\");\n } else if (this.props.user.id === this.props.profile.id) {\n return gettext(\"No name changes have been recorded for your account.\");\n } else {\n return interpolate(gettext(\"%(username)s's username was never changed.\"), {\n 'username': this.props.profile.username\n }, true);\n }\n }\n }, {\n key: 'getMoreButton',\n value: function getMoreButton() {\n if (!this.state.more) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'pager-more' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn btn-default btn-outline',\n loading: this.state.isBusy,\n onClick: this.loadMore\n },\n interpolate(gettext(\"Show older (%(more)s)\"), {\n 'more': this.state.more\n }, true)\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'profile-username-history' },\n _react2.default.createElement(\n 'nav',\n { className: 'toolbar' },\n _react2.default.createElement(\n 'h3',\n { className: 'toolbar-left' },\n this.getLabel()\n ),\n _react2.default.createElement(_quickSearch2.default, { className: 'toolbar-right',\n value: this.state.search,\n onChange: this.search,\n placeholder: gettext(\"Search history...\") })\n ),\n _react2.default.createElement(_root2.default, { isLoaded: this.state.isLoaded,\n emptyMessage: this.getEmptyMessage(),\n changes: this.props['username-history'] }),\n this.getMoreButton()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../index\":291,\"../../reducers/username-history\":350,\"../../services/ajax\":352,\"../../services/page-title\":360,\"../../services/snackbar\":363,\"../../services/store\":364,\"../button\":5,\"../quick-search\":190,\"../username-history/root\":269,\"react\":\"react\"}],190:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: \"getClassName\",\n value: function getClassName() {\n if (this.props.className) {\n return \"form-search \" + this.props.className;\n } else {\n return \"form-search\";\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n \"div\",\n { className: this.getClassName() },\n _react2.default.createElement(\"input\", { type: \"text\",\n className: \"form-control\",\n value: this.props.value,\n onChange: this.props.onChange,\n placeholder: this.props.placeholder || gettext(\"Search...\") }),\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"search\"\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],191:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _loader = require('./loader');\n\nvar _loader2 = _interopRequireDefault(_loader);\n\nvar _register = require('./register.js');\n\nvar _register2 = _interopRequireDefault(_register);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _captcha = require('../services/captcha');\n\nvar _captcha2 = _interopRequireDefault(_captcha);\n\nvar _modal = require('../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.showRegisterForm = function () {\n if (misago.get('SETTINGS').account_activation === 'closed') {\n _snackbar2.default.info(gettext(\"New registrations are currently disabled.\"));\n } else if (_this.state.isLoaded) {\n _modal2.default.show(_react2.default.createElement(_register2.default, {\n criteria: _this.state.criteria\n }));\n } else {\n _this.setState({ isLoading: true });\n\n Promise.all([_captcha2.default.load(), _ajax2.default.get(misago.get('AUTH_CRITERIA_API'))]).then(function (result) {\n _this.setState({\n isLoading: false,\n isLoaded: true,\n criteria: result[1]\n });\n\n _modal2.default.show(_react2.default.createElement(_register2.default, {\n criteria: result[1]\n }));\n }, function () {\n _this.setState({ isLoading: false });\n\n _snackbar2.default.error(gettext(\"Registration is currently unavailable due to an error.\"));\n });\n }\n };\n\n _this.state = {\n isLoading: false,\n isLoaded: false,\n\n criteria: null\n };\n return _this;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'getClassName',\n\n /* jshint ignore:end */\n\n value: function getClassName() {\n return this.props.className + (this.state.isLoading ? ' btn-loading' : '');\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'button',\n {\n className: 'btn ' + this.getClassName(),\n disabled: this.state.isLoading,\n onClick: this.showRegisterForm,\n type: 'button'\n },\n gettext(\"Register\"),\n this.state.isLoading ? _react2.default.createElement(_loader2.default, null) : null\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../services/ajax\":352,\"../services/captcha\":354,\"../services/modal\":358,\"../services/snackbar\":363,\"./loader\":54,\"./register.js\":192,\"react\":\"react\"}],192:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.RegisterComplete = exports.RegisterForm = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('./form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _passwordStrength = require('./password-strength');\n\nvar _passwordStrength2 = _interopRequireDefault(_passwordStrength);\n\nvar _ = require('..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _auth = require('../services/auth');\n\nvar _auth2 = _interopRequireDefault(_auth);\n\nvar _captcha = require('../services/captcha');\n\nvar _captcha2 = _interopRequireDefault(_captcha);\n\nvar _modal = require('../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _bannedPage = require('../utils/banned-page');\n\nvar _bannedPage2 = _interopRequireDefault(_bannedPage);\n\nvar _validators = require('../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar RegisterForm = exports.RegisterForm = function (_Form) {\n _inherits(RegisterForm, _Form);\n\n function RegisterForm(props) {\n _classCallCheck(this, RegisterForm);\n\n var _this = _possibleConstructorReturn(this, (RegisterForm.__proto__ || Object.getPrototypeOf(RegisterForm)).call(this, props));\n\n var _this$props$criteria = _this.props.criteria,\n username = _this$props$criteria.username,\n password = _this$props$criteria.password;\n\n\n var passwordMinLength = 0;\n password.forEach(function (item) {\n if (item.name === 'MinimumLengthValidator') {\n passwordMinLength = item.min_length;\n }\n });\n\n _this.state = {\n isLoading: false,\n\n username: '',\n email: '',\n password: '',\n captcha: '',\n\n validators: {\n username: [validators.usernameContent(), validators.usernameMinLength(username.min_length), validators.usernameMaxLength(username.max_length)],\n email: [validators.email()],\n password: [validators.passwordMinLength(passwordMinLength)],\n captcha: _captcha2.default.validator()\n },\n\n errors: {}\n };\n return _this;\n }\n\n _createClass(RegisterForm, [{\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n this.setState({\n errors: this.validate()\n });\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(_2.default.get('USERS_API'), {\n username: this.state.username,\n email: this.state.email,\n password: this.state.password,\n captcha: this.state.captcha\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n this.props.callback(apiResponse);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n this.setState({\n 'errors': Object.assign({}, this.state.errors, rejection)\n });\n\n if (rejection.__all__ && rejection.__all__.length > 0) {\n _snackbar2.default.error(rejection.__all__[0]);\n } else {\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n }\n } else if (rejection.status === 403 && rejection.ban) {\n (0, _bannedPage2.default)(rejection.ban);\n _modal2.default.hide();\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'getLegalFootNote',\n value: function getLegalFootNote() {\n if (!_2.default.get('TERMS_OF_SERVICE_URL')) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'p',\n { className: 'legal-footnote' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n ),\n _react2.default.createElement(\n 'a',\n {\n href: _2.default.get('TERMS_OF_SERVICE_URL'),\n target: '_blank'\n },\n gettext(\"By registering you agree to site's terms and conditions.\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog modal-register', role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Register\")\n )\n ),\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement('input', { type: 'type', style: { display: 'none' } }),\n _react2.default.createElement('input', { type: 'password', style: { display: 'none' } }),\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Username\"), 'for': 'id_username',\n validation: this.state.errors.username },\n _react2.default.createElement('input', { type: 'text', id: 'id_username', className: 'form-control',\n 'aria-describedby': 'id_username_status',\n disabled: this.state.isLoading,\n onChange: this.bindInput('username'),\n value: this.state.username })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"E-mail\"), 'for': 'id_email',\n validation: this.state.errors.email },\n _react2.default.createElement('input', { type: 'text', id: 'id_email', className: 'form-control',\n 'aria-describedby': 'id_email_status',\n disabled: this.state.isLoading,\n onChange: this.bindInput('email'),\n value: this.state.email })\n ),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Password\"), 'for': 'id_password',\n validation: this.state.errors.password,\n extra: _react2.default.createElement(_passwordStrength2.default, {\n password: this.state.password,\n inputs: [this.state.username, this.state.email]\n }) },\n _react2.default.createElement('input', { type: 'password', id: 'id_password', className: 'form-control',\n 'aria-describedby': 'id_password_status',\n disabled: this.state.isLoading,\n onChange: this.bindInput('password'),\n value: this.state.password })\n ),\n _captcha2.default.component({\n form: this\n }),\n this.getLegalFootNote()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Register account\")\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return RegisterForm;\n}(_form2.default);\n\nvar RegisterComplete = exports.RegisterComplete = function (_React$Component) {\n _inherits(RegisterComplete, _React$Component);\n\n function RegisterComplete() {\n _classCallCheck(this, RegisterComplete);\n\n return _possibleConstructorReturn(this, (RegisterComplete.__proto__ || Object.getPrototypeOf(RegisterComplete)).apply(this, arguments));\n }\n\n _createClass(RegisterComplete, [{\n key: 'getLead',\n value: function getLead() {\n if (this.props.activation === 'user') {\n return gettext(\"%(username)s, your account has been created but you need to activate it before you will be able to sign in.\");\n } else if (this.props.activation === 'admin') {\n return gettext(\"%(username)s, your account has been created but board administrator will have to activate it before you will be able to sign in.\");\n }\n }\n }, {\n key: 'getSubscript',\n value: function getSubscript() {\n if (this.props.activation === 'user') {\n return gettext(\"We have sent an e-mail to %(email)s with link that you have to click to activate your account.\");\n } else if (this.props.activation === 'admin') {\n return gettext(\"We will send an e-mail to %(email)s when this takes place.\");\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog modal-message modal-register',\n role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Registration complete\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n interpolate(this.getLead(), { 'username': this.props.username }, true)\n ),\n _react2.default.createElement(\n 'p',\n null,\n interpolate(this.getSubscript(), { 'email': this.props.email }, true)\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n gettext(\"Ok\")\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return RegisterComplete;\n}(_react2.default.Component);\n\nvar _class = function (_React$Component2) {\n _inherits(_class, _React$Component2);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this3 = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this3.completeRegistration = function (apiResponse) {\n if (apiResponse.activation === 'active') {\n _modal2.default.hide();\n _auth2.default.signIn(apiResponse);\n } else {\n _this3.setState({\n complete: apiResponse\n });\n }\n };\n\n _this3.state = {\n complete: false\n };\n return _this3;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n if (this.state.complete) {\n return _react2.default.createElement(RegisterComplete, {\n activation: this.state.complete.activation,\n email: this.state.complete.email,\n username: this.state.complete.username\n });\n }\n\n return _react2.default.createElement(RegisterForm, _extends({\n callback: this.completeRegistration\n }, this.props));\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"..\":291,\"../services/ajax\":352,\"../services/auth\":353,\"../services/captcha\":354,\"../services/modal\":358,\"../services/snackbar\":363,\"../utils/banned-page\":366,\"../utils/validators\":380,\"./button\":5,\"./form\":52,\"./form-group\":51,\"./password-strength\":96,\"react\":\"react\"}],193:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.LinkSent = exports.RequestLinkForm = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _validators = require('../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nvar _bannedPage = require('../utils/banned-page');\n\nvar _bannedPage2 = _interopRequireDefault(_bannedPage);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n\n\nvar RequestLinkForm = exports.RequestLinkForm = function (_Form) {\n _inherits(RequestLinkForm, _Form);\n\n function RequestLinkForm(props) {\n _classCallCheck(this, RequestLinkForm);\n\n var _this = _possibleConstructorReturn(this, (RequestLinkForm.__proto__ || Object.getPrototypeOf(RequestLinkForm)).call(this, props));\n\n _this.state = {\n 'isLoading': false,\n\n 'email': '',\n\n 'validators': {\n 'email': [validators.email()]\n }\n };\n return _this;\n }\n\n _createClass(RequestLinkForm, [{\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(gettext(\"Enter a valid email address.\"));\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(_index2.default.get('SEND_ACTIVATION_API'), {\n 'email': this.state.email\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n this.props.callback(apiResponse);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (['already_active', 'inactive_admin'].indexOf(rejection.code) > -1) {\n _snackbar2.default.info(rejection.detail);\n } else if (rejection.status === 403 && rejection.ban) {\n (0, _bannedPage2.default)(rejection.ban);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'well well-form well-form-request-activation-link' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'form-group' },\n _react2.default.createElement(\n 'div',\n { className: 'control-input' },\n _react2.default.createElement('input', { type: 'text', className: 'form-control',\n placeholder: gettext(\"Your e-mail address\"),\n disabled: this.state.isLoading,\n onChange: this.bindInput('email'),\n value: this.state.email })\n )\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary btn-block',\n loading: this.state.isLoading },\n gettext(\"Send link\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return RequestLinkForm;\n}(_form2.default);\n\nvar LinkSent = exports.LinkSent = function (_React$Component) {\n _inherits(LinkSent, _React$Component);\n\n function LinkSent() {\n _classCallCheck(this, LinkSent);\n\n return _possibleConstructorReturn(this, (LinkSent.__proto__ || Object.getPrototypeOf(LinkSent)).apply(this, arguments));\n }\n\n _createClass(LinkSent, [{\n key: 'getMessage',\n value: function getMessage() {\n return interpolate(gettext(\"Activation link was sent to %(email)s\"), {\n email: this.props.user.email\n }, true);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'well well-form well-form-request-activation-link well-done' },\n _react2.default.createElement(\n 'div',\n { className: 'done-message' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'check'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n null,\n this.getMessage()\n )\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-primary btn-block',\n type: 'button',\n onClick: this.props.callback\n },\n gettext(\"Request another link\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return LinkSent;\n}(_react2.default.Component);\n\nvar _class = function (_React$Component2) {\n _inherits(_class, _React$Component2);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this3 = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this3.complete = function (apiResponse) {\n _this3.setState({\n complete: apiResponse\n });\n };\n\n _this3.reset = function () {\n _this3.setState({\n complete: false\n });\n };\n\n _this3.state = {\n complete: false\n };\n return _this3;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n if (this.state.complete) {\n return _react2.default.createElement(LinkSent, { user: this.state.complete, callback: this.reset });\n } else {\n return _react2.default.createElement(RequestLinkForm, { callback: this.complete });\n };\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../index\":291,\"../services/ajax\":352,\"../services/snackbar\":363,\"../utils/banned-page\":366,\"../utils/validators\":380,\"./button\":5,\"./form\":52,\"react\":\"react\"}],194:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.AccountInactivePage = exports.LinkSent = exports.RequestResetForm = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _validators = require('../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nvar _bannedPage = require('../utils/banned-page');\n\nvar _bannedPage2 = _interopRequireDefault(_bannedPage);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar RequestResetForm = exports.RequestResetForm = function (_Form) {\n _inherits(RequestResetForm, _Form);\n\n function RequestResetForm(props) {\n _classCallCheck(this, RequestResetForm);\n\n var _this = _possibleConstructorReturn(this, (RequestResetForm.__proto__ || Object.getPrototypeOf(RequestResetForm)).call(this, props));\n\n _this.state = {\n 'isLoading': false,\n\n 'email': '',\n\n 'validators': {\n 'email': [validators.email()]\n }\n };\n return _this;\n }\n\n _createClass(RequestResetForm, [{\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(gettext(\"Enter a valid email address.\"));\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(_index2.default.get('SEND_PASSWORD_RESET_API'), {\n 'email': this.state.email\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n this.props.callback(apiResponse);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (['inactive_user', 'inactive_admin'].indexOf(rejection.code) > -1) {\n this.props.showInactivePage(rejection);\n } else if (rejection.status === 403 && rejection.ban) {\n (0, _bannedPage2.default)(rejection.ban);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'well well-form well-form-request-password-reset' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'form-group' },\n _react2.default.createElement(\n 'div',\n { className: 'control-input' },\n _react2.default.createElement('input', { type: 'text', className: 'form-control',\n placeholder: gettext(\"Your e-mail address\"),\n disabled: this.state.isLoading,\n onChange: this.bindInput('email'),\n value: this.state.email })\n )\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary btn-block',\n loading: this.state.isLoading },\n gettext(\"Send link\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return RequestResetForm;\n}(_form2.default);\n\nvar LinkSent = exports.LinkSent = function (_React$Component) {\n _inherits(LinkSent, _React$Component);\n\n function LinkSent() {\n _classCallCheck(this, LinkSent);\n\n return _possibleConstructorReturn(this, (LinkSent.__proto__ || Object.getPrototypeOf(LinkSent)).apply(this, arguments));\n }\n\n _createClass(LinkSent, [{\n key: 'getMessage',\n value: function getMessage() {\n return interpolate(gettext(\"Reset password link was sent to %(email)s\"), {\n email: this.props.user.email\n }, true);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'well well-form well-form-request-password-reset well-done' },\n _react2.default.createElement(\n 'div',\n { className: 'done-message' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'check'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n null,\n this.getMessage()\n )\n ),\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-primary btn-block',\n onClick: this.props.callback },\n gettext(\"Request another link\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return LinkSent;\n}(_react2.default.Component);\n\nvar AccountInactivePage = exports.AccountInactivePage = function (_React$Component2) {\n _inherits(AccountInactivePage, _React$Component2);\n\n function AccountInactivePage() {\n _classCallCheck(this, AccountInactivePage);\n\n return _possibleConstructorReturn(this, (AccountInactivePage.__proto__ || Object.getPrototypeOf(AccountInactivePage)).apply(this, arguments));\n }\n\n _createClass(AccountInactivePage, [{\n key: 'getActivateButton',\n value: function getActivateButton() {\n if (this.props.activation === 'inactive_user') {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'p',\n null,\n _react2.default.createElement(\n 'a',\n { href: _index2.default.get('REQUEST_ACTIVATION_URL') },\n gettext(\"Activate your account.\")\n )\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'page page-message page-message-info page-forgotten-password-inactive' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'message-panel' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"Your account is inactive.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n this.props.message\n ),\n this.getActivateButton()\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return AccountInactivePage;\n}(_react2.default.Component);\n\nvar _class = function (_React$Component3) {\n _inherits(_class, _React$Component3);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this4 = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this4.complete = function (apiResponse) {\n _this4.setState({\n complete: apiResponse\n });\n };\n\n _this4.reset = function () {\n _this4.setState({\n complete: false\n });\n };\n\n _this4.state = {\n complete: false\n };\n return _this4;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'showInactivePage',\n value: function showInactivePage(apiResponse) {\n _reactDom2.default.render(_react2.default.createElement(AccountInactivePage, {\n activation: apiResponse.code,\n message: apiResponse.detail\n }), document.getElementById('page-mount'));\n }\n /* jshint ignore:end */\n\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n if (this.state.complete) {\n return _react2.default.createElement(LinkSent, {\n callback: this.reset,\n user: this.state.complete\n });\n }\n\n return _react2.default.createElement(RequestResetForm, {\n callback: this.complete,\n showInactivePage: this.showInactivePage\n });\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../index\":291,\"../services/ajax\":352,\"../services/snackbar\":363,\"../utils/banned-page\":366,\"../utils/validators\":380,\"./button\":5,\"./form\":52,\"react\":\"react\",\"react-dom\":\"react-dom\"}],195:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.PasswordChangedPage = exports.ResetPasswordForm = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _signIn = require('./sign-in.js');\n\nvar _signIn2 = _interopRequireDefault(_signIn);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _auth = require('../services/auth');\n\nvar _auth2 = _interopRequireDefault(_auth);\n\nvar _modal = require('../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _bannedPage = require('../utils/banned-page');\n\nvar _bannedPage2 = _interopRequireDefault(_bannedPage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar ResetPasswordForm = exports.ResetPasswordForm = function (_Form) {\n _inherits(ResetPasswordForm, _Form);\n\n function ResetPasswordForm(props) {\n _classCallCheck(this, ResetPasswordForm);\n\n var _this = _possibleConstructorReturn(this, (ResetPasswordForm.__proto__ || Object.getPrototypeOf(ResetPasswordForm)).call(this, props));\n\n _this.state = {\n 'isLoading': false,\n\n 'password': ''\n };\n return _this;\n }\n\n _createClass(ResetPasswordForm, [{\n key: 'clean',\n value: function clean() {\n if (this.state.password.trim().length) {\n return true;\n } else {\n _snackbar2.default.error(gettext(\"Enter new password.\"));\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(_index2.default.get('CHANGE_PASSWORD_API'), {\n 'password': this.state.password\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n this.props.callback(apiResponse);\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 403 && rejection.ban) {\n (0, _bannedPage2.default)(rejection.ban);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'well well-form well-form-reset-password' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'form-group' },\n _react2.default.createElement(\n 'div',\n { className: 'control-input' },\n _react2.default.createElement('input', { type: 'password', className: 'form-control',\n placeholder: gettext(\"Enter new password\"),\n disabled: this.state.isLoading,\n onChange: this.bindInput('password'),\n value: this.state.password })\n )\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary btn-block',\n loading: this.state.isLoading },\n gettext(\"Change password\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return ResetPasswordForm;\n}(_form2.default);\n\nvar PasswordChangedPage = exports.PasswordChangedPage = function (_React$Component) {\n _inherits(PasswordChangedPage, _React$Component);\n\n function PasswordChangedPage() {\n _classCallCheck(this, PasswordChangedPage);\n\n return _possibleConstructorReturn(this, (PasswordChangedPage.__proto__ || Object.getPrototypeOf(PasswordChangedPage)).apply(this, arguments));\n }\n\n _createClass(PasswordChangedPage, [{\n key: 'getMessage',\n value: function getMessage() {\n return interpolate(gettext(\"%(username)s, your password has been changed successfully.\"), {\n username: this.props.user.username\n }, true);\n }\n }, {\n key: 'showSignIn',\n value: function showSignIn() {\n _modal2.default.show(_signIn2.default);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'page page-message page-message-success page-forgotten-password-changed' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'message-panel' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'check'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.getMessage()\n ),\n _react2.default.createElement(\n 'p',\n null,\n gettext(\"You will have to sign in using new password before continuing.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-primary', onClick: this.showSignIn },\n gettext(\"Sign in\")\n )\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return PasswordChangedPage;\n}(_react2.default.Component);\n\nvar _class = function (_React$Component2) {\n _inherits(_class, _React$Component2);\n\n function _class() {\n var _ref;\n\n var _temp, _this3, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this3 = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this3), _this3.complete = function (apiResponse) {\n _auth2.default.softSignOut();\n\n // nuke \"redirect_to\" field so we don't end\n // coming back to error page after sign in\n $('#hidden-login-form input[name=\"redirect_to\"]').remove();\n\n _reactDom2.default.render(_react2.default.createElement(PasswordChangedPage, { user: apiResponse }), document.getElementById('page-mount'));\n }, _temp), _possibleConstructorReturn(_this3, _ret);\n }\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(ResetPasswordForm, { callback: this.complete });\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../index\":291,\"../services/ajax\":352,\"../services/auth\":353,\"../services/modal\":358,\"../services/snackbar\":363,\"../utils/banned-page\":366,\"./button\":5,\"./form\":52,\"./sign-in.js\":204,\"react\":\"react\",\"react-dom\":\"react-dom\"}],196:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _form = require('../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _posts = require('../../reducers/posts');\n\nvar _search = require('../../reducers/search');\n\nvar _users = require('../../reducers/users');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onQueryChange = function (event) {\n _this.changeValue('query', event.target.value);\n };\n\n _this.state = {\n isLoading: false,\n\n query: props.search.query\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (this.state.query.length) {\n this.handleSubmit();\n }\n }\n }, {\n key: 'clean',\n value: function clean() {\n if (!this.state.query.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter search query.\"));\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n _store2.default.dispatch((0, _search.update)({\n isLoading: true\n }));\n\n return _ajax2.default.get(_2.default.get('SEARCH_API'), {\n q: this.state.query.trim()\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(providers) {\n _store2.default.dispatch((0, _search.update)({\n query: this.state.query.trim(),\n isLoading: false,\n providers: providers\n }));\n\n providers.forEach(function (provider) {\n if (provider.id === 'users') {\n _store2.default.dispatch((0, _users.hydrate)(provider.results.results));\n } else if (provider.id === 'threads') {\n _store2.default.dispatch((0, _posts.load)(provider.results));\n }\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n _snackbar2.default.apiError(rejection);\n\n _store2.default.dispatch((0, _search.update)({\n isLoading: false\n }));\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'page-header-bg' },\n _react2.default.createElement(\n 'div',\n { className: 'page-header page-search-form' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-md-3' },\n _react2.default.createElement(\n 'h1',\n null,\n gettext(\"Search\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-md-9' },\n _react2.default.createElement(\n 'div',\n { className: 'row xs-margin-top sm-margin-top' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-8 col-md-9' },\n _react2.default.createElement(\n 'div',\n { className: 'form-group' },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.props.search.isLoading || this.state.isLoading,\n onChange: this.onQueryChange,\n type: 'text',\n value: this.state.query\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-4 col-md-3' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-primary btn-block btn-outline',\n disabled: this.props.search.isLoading || this.state.isLoading\n },\n gettext(\"Search\")\n )\n )\n )\n )\n )\n )\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../..\":291,\"../../reducers/posts\":341,\"../../reducers/search\":344,\"../../reducers/users\":351,\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../../services/store\":364,\"../form\":52,\"react\":\"react\"}],197:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.select = select;\n\nexports.default = function (providers) {\n return providers.map(function (provider) {\n return {\n path: provider.url,\n component: (0, _reactRedux.connect)(select)(components[provider.id]),\n provider: provider\n };\n });\n};\n\nvar _reactRedux = require('react-redux');\n\nvar _threads = require('./threads');\n\nvar _threads2 = _interopRequireDefault(_threads);\n\nvar _users = require('./users');\n\nvar _users2 = _interopRequireDefault(_users);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar components = {\n threads: _threads2.default,\n users: _users2.default\n};\n\nfunction select(store) {\n return {\n 'posts': store.posts,\n 'search': store.search,\n 'tick': store.tick.tick,\n 'user': store.auth.user,\n 'users': store.users\n };\n}\n\n},{\"./threads\":200,\"./users\":202,\"react-redux\":\"react-redux\"}],198:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'page page-search' },\n _react2.default.createElement(_form2.default, {\n provider: props.provider,\n search: props.search\n }),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-md-3' },\n _react2.default.createElement(_sidenav2.default, { providers: props.search.providers })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-md-9' },\n props.children,\n _react2.default.createElement(SearchTime, {\n provider: props.provider,\n search: props.search\n })\n )\n )\n )\n );\n};\n\nexports.SearchTime = SearchTime;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _sidenav = require('./sidenav');\n\nvar _sidenav2 = _interopRequireDefault(_sidenav);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction SearchTime(props) {\n var time = null;\n props.search.providers.forEach(function (p) {\n if (p.id === props.provider.id) {\n time = p.time;\n }\n });\n\n if (time === null) return null;\n\n var copy = gettext(\"Search took %(time)s s to complete\");\n\n return _react2.default.createElement(\n 'footer',\n { className: 'search-footer' },\n _react2.default.createElement(\n 'p',\n null,\n interpolate(copy, { time: time }, true)\n )\n );\n}\n\n},{\"./form\":196,\"./sidenav\":199,\"react\":\"react\"}],199:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'list-group nav-side' },\n props.providers.map(function (provider) {\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n activeClassName: 'active',\n className: 'list-group-item',\n key: provider.id,\n to: provider.url\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n provider.icon\n ),\n provider.name,\n _react2.default.createElement(Badge, { results: provider.results })\n );\n })\n );\n};\n\nexports.Badge = Badge;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction Badge(props) {\n if (!props.results) return null;\n\n var count = props.results.count;\n if (count > 1000000) {\n count = Math.ceil(count / 1000000) + 'KK';\n } else if (count > 1000) {\n count = Math.ceil(count / 1000) + 'K';\n }\n\n return _react2.default.createElement(\n 'span',\n { className: 'badge' },\n count\n );\n} // jshint ignore:start\n\n},{\"react\":\"react\",\"react-router\":\"react-router\"}],200:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; // jshint ignore:start\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _page2.default,\n {\n provider: props.route.provider,\n search: props.search\n },\n _react2.default.createElement(\n Blankslate,\n {\n query: props.search.query,\n posts: props.posts\n },\n _react2.default.createElement(_results2.default, _extends({\n provider: props.route.provider,\n query: props.search.query\n }, props.posts))\n )\n );\n};\n\nexports.Blankslate = Blankslate;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _page = require('../page');\n\nvar _page2 = _interopRequireDefault(_page);\n\nvar _results = require('./results');\n\nvar _results2 = _interopRequireDefault(_results);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction Blankslate(props) {\n if (props.posts && props.posts.count) return props.children;\n\n if (props.query.length) {\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"No threads matching search query have been found.\")\n );\n }\n\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"Enter at least two characters to search threads.\")\n );\n}\n\n},{\"../page\":198,\"./results\":201,\"react\":\"react\"}],201:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.LoadMore = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_postFeed2.default, {\n isReady: true,\n posts: props.results\n }),\n _react2.default.createElement(LoadMore, props)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _postFeed = require('../../post-feed');\n\nvar _postFeed2 = _interopRequireDefault(_postFeed);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _misagoMarkup = require('../../misago-markup');\n\nvar _misagoMarkup2 = _interopRequireDefault(_misagoMarkup);\n\nvar _posts = require('../../../reducers/posts');\n\nvar _search = require('../../../reducers/search');\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar LoadMore = exports.LoadMore = function (_React$Component) {\n _inherits(LoadMore, _React$Component);\n\n function LoadMore() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, LoadMore);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = LoadMore.__proto__ || Object.getPrototypeOf(LoadMore)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _store2.default.dispatch((0, _posts.update)({\n isBusy: true\n }));\n\n _ajax2.default.get(_this.props.provider.api, {\n q: _this.props.query,\n page: _this.props.next\n }).then(function (providers) {\n providers.forEach(function (provider) {\n if (provider.id !== 'threads') return;\n _store2.default.dispatch((0, _posts.append)(provider.results));\n _store2.default.dispatch((0, _search.updateProvider)(provider));\n });\n\n _store2.default.dispatch((0, _posts.update)({\n isBusy: false\n }));\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n\n _store2.default.dispatch((0, _posts.update)({\n isBusy: false\n }));\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(LoadMore, [{\n key: 'render',\n value: function render() {\n if (!this.props.more) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'pager-more' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn btn-default btn-outline',\n loading: this.props.isBusy,\n onClick: this.onClick\n },\n gettext(\"Show more\")\n )\n );\n }\n }]);\n\n return LoadMore;\n}(_react2.default.Component);\n\n},{\"../../../reducers/posts\":341,\"../../../reducers/search\":344,\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../button\":5,\"../../misago-markup\":56,\"../../post-feed\":115,\"react\":\"react\"}],202:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n _page2.default,\n {\n provider: props.route.provider,\n search: props.search\n },\n _react2.default.createElement(\n Blankslate,\n {\n query: props.search.query,\n users: props.users\n },\n _react2.default.createElement(_usersList2.default, {\n cols: 3,\n isReady: true,\n users: props.users\n })\n )\n );\n};\n\nexports.Blankslate = Blankslate;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _page = require('../page');\n\nvar _page2 = _interopRequireDefault(_page);\n\nvar _usersList = require('../../users-list');\n\nvar _usersList2 = _interopRequireDefault(_usersList);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:start\nfunction Blankslate(props) {\n if (props.users.length) return props.children;\n\n if (props.query.length) {\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"No users matching search query have been found.\")\n );\n }\n\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"Enter at least two characters to search users.\")\n );\n}\n\n},{\"../../users-list\":273,\"../page\":198,\"react\":\"react\"}],203:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.Icon = Icon;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.change = function (value) {\n return function () {\n _this.props.onChange({\n target: {\n value: value\n }\n });\n };\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: \"getChoice\",\n value: function getChoice() {\n var _this2 = this;\n\n var choice = null;\n this.props.choices.map(function (item) {\n if (item.value === _this2.props.value) {\n choice = item;\n }\n });\n return choice;\n }\n }, {\n key: \"getIcon\",\n value: function getIcon() {\n return this.getChoice().icon;\n }\n }, {\n key: \"getLabel\",\n value: function getLabel() {\n return this.getChoice().label;\n }\n\n /* jshint ignore:start */\n\n }, {\n key: \"render\",\n\n /* jshint ignore:end */\n\n value: function render() {\n var _this3 = this;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n \"div\",\n { className: \"btn-group btn-select-group\" },\n _react2.default.createElement(\n \"button\",\n { type: \"button\",\n className: \"btn btn-select dropdown-toggle\",\n id: this.props.id || null,\n \"data-toggle\": \"dropdown\",\n \"aria-haspopup\": \"true\",\n \"aria-expanded\": \"false\",\n \"aria-describedby\": this.props['aria-describedby'] || null,\n disabled: this.props.disabled || false },\n _react2.default.createElement(Icon, { icon: this.getIcon() }),\n this.getLabel()\n ),\n _react2.default.createElement(\n \"ul\",\n { className: \"dropdown-menu\" },\n this.props.choices.map(function (item, i) {\n return _react2.default.createElement(\n \"li\",\n { key: i },\n _react2.default.createElement(\n \"button\",\n { type: \"button\", className: \"btn-link\",\n onClick: _this3.change(item.value) },\n _react2.default.createElement(Icon, { icon: item.icon }),\n item.label\n )\n );\n })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\n/* jshint ignore:start */\n\n\nexports.default = _class;\nfunction Icon(_ref2) {\n var icon = _ref2.icon;\n\n if (!icon) return null;\n\n return _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n icon\n );\n}\n/* jshint ignore:end */\n\n},{\"react\":\"react\"}],204:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _button = require('./button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('./form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _bannedPage = require('../utils/banned-page');\n\nvar _bannedPage2 = _interopRequireDefault(_bannedPage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.state = {\n 'isLoading': false,\n 'showActivation': false,\n\n 'username': '',\n 'password': '',\n\n 'validators': {\n 'username': [],\n 'password': []\n }\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n if (!this.isValid()) {\n _snackbar2.default.error(gettext(\"Fill out both fields.\"));\n return false;\n } else {\n return true;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(_index2.default.get('AUTH_API'), {\n 'username': this.state.username,\n 'password': this.state.password\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess() {\n var form = $('#hidden-login-form');\n\n form.append('');\n form.append('');\n\n // fill out form with user credentials and submit it, this will tell\n // Misago to redirect user back to right page, and will trigger browser's\n // key ring feature\n form.find('input[type=\"hidden\"]').val(_ajax2.default.getCsrfToken());\n form.find('input[name=\"redirect_to\"]').val(window.location.pathname);\n form.find('input[name=\"username\"]').val(this.state.username);\n form.find('input[name=\"password\"]').val(this.state.password);\n form.submit();\n\n // keep form loading\n this.setState({\n 'isLoading': true\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n if (rejection.code === 'inactive_admin') {\n _snackbar2.default.info(rejection.detail);\n } else if (rejection.code === 'inactive_user') {\n _snackbar2.default.info(rejection.detail);\n this.setState({\n 'showActivation': true\n });\n } else if (rejection.code === 'banned') {\n (0, _bannedPage2.default)(rejection.detail);\n _modal2.default.hide();\n } else {\n _snackbar2.default.error(rejection.detail);\n }\n } else if (rejection.status === 403 && rejection.ban) {\n (0, _bannedPage2.default)(rejection.ban);\n _modal2.default.hide();\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'getActivationButton',\n value: function getActivationButton() {\n if (!this.state.showActivation) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'a',\n {\n className: 'btn btn-success btn-block',\n href: _index2.default.get('REQUEST_ACTIVATION_URL')\n },\n gettext(\"Activate account\")\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n {\n className: 'modal-dialog modal-sm modal-sign-in',\n role: 'document'\n },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Sign in\")\n )\n ),\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'div',\n { className: 'form-group' },\n _react2.default.createElement(\n 'div',\n { className: 'control-input' },\n _react2.default.createElement('input', {\n className: 'form-control input-lg',\n disabled: this.state.isLoading,\n id: 'id_username',\n onChange: this.bindInput('username'),\n placeholder: gettext(\"Username or e-mail\"),\n type: 'text',\n value: this.state.username\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'form-group' },\n _react2.default.createElement(\n 'div',\n { className: 'control-input' },\n _react2.default.createElement('input', {\n className: 'form-control input-lg',\n disabled: this.state.isLoading,\n id: 'id_password',\n onChange: this.bindInput('password'),\n placeholder: gettext(\"Password\"),\n type: 'password',\n value: this.state.password\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n this.getActivationButton(),\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-primary btn-block',\n loading: this.state.isLoading\n },\n gettext(\"Sign in\")\n ),\n _react2.default.createElement(\n 'a',\n {\n className: 'btn btn-default btn-block',\n href: _index2.default.get('FORGOTTEN_PASSWORD_URL')\n },\n gettext(\"Forgot password?\")\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../index\":291,\"../services/ajax\":352,\"../services/modal\":358,\"../services/snackbar\":363,\"../utils/banned-page\":366,\"./button\":5,\"./form\":52,\"react\":\"react\"}],205:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Snackbar = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.select = select;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n/* jshint ignore:start */\nvar TYPES_CLASSES = {\n 'info': 'alert-info',\n 'success': 'alert-success',\n 'warning': 'alert-warning',\n 'error': 'alert-danger'\n};\n/* jshint ignore:end */\n\nvar Snackbar = exports.Snackbar = function (_React$Component) {\n _inherits(Snackbar, _React$Component);\n\n function Snackbar() {\n _classCallCheck(this, Snackbar);\n\n return _possibleConstructorReturn(this, (Snackbar.__proto__ || Object.getPrototypeOf(Snackbar)).apply(this, arguments));\n }\n\n _createClass(Snackbar, [{\n key: 'getSnackbarClass',\n value: function getSnackbarClass() {\n var snackbarClass = 'alerts-snackbar';\n if (this.props.isVisible) {\n snackbarClass += ' in';\n } else {\n snackbarClass += ' out';\n }\n return snackbarClass;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getSnackbarClass() },\n _react2.default.createElement(\n 'p',\n { className: 'alert ' + TYPES_CLASSES[this.props.type] },\n this.props.message\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return Snackbar;\n}(_react2.default.Component);\n\nfunction select(state) {\n return state.snackbar;\n}\n\n},{\"react\":\"react\"}],206:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n \"div\",\n { className: \"page-breadcrumbs\" },\n _react2.default.createElement(\n \"div\",\n { className: \"container\" },\n _react2.default.createElement(\n \"ol\",\n { className: \"breadcrumb hidden-xs\" },\n props.path.map(function (item) {\n return _react2.default.createElement(Breadcrumb, {\n key: item.id,\n node: item\n });\n })\n ),\n _react2.default.createElement(GoBack, props)\n )\n );\n};\n\nexports.Breadcrumb = Breadcrumb;\nexports.GoBack = GoBack;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction Breadcrumb(props) {\n return _react2.default.createElement(\n \"li\",\n null,\n _react2.default.createElement(\n \"a\",\n { href: props.node.url.index },\n props.node.name\n )\n );\n}\n\nfunction GoBack(props) {\n var lastItem = props.path[props.path.length - 1];\n\n return _react2.default.createElement(\n \"a\",\n { href: lastItem.url.index, className: \"go-back-sm visible-xs-block\" },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"chevron_left\"\n ),\n lastItem.name\n );\n}\n/* jshint ignore:end */\n\n},{\"react\":\"react\"}],207:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.Moderation = Moderation;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _breadcrumbs = require('./breadcrumbs');\n\nvar _breadcrumbs2 = _interopRequireDefault(_breadcrumbs);\n\nvar _thread = require('../moderation/thread');\n\nvar _stats = require('./stats');\n\nvar _stats2 = _interopRequireDefault(_stats);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _validators = require('../../posting/utils/validators');\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _thread2 = require('../../../reducers/thread');\n\nvar thread = _interopRequireWildcard(_thread2);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onChange = function (event) {\n _this.changeValue('title', event.target.value);\n };\n\n _this.onEdit = function () {\n _this.setState({\n isEditing: true\n });\n };\n\n _this.onCancel = function () {\n _this.setState({\n title: _this.props.thread.title,\n\n isEditing: false\n });\n };\n\n _this.state = {\n isEditing: false,\n isLoading: false,\n\n title: props.thread.title,\n\n validators: {\n title: (0, _validators.getTitleValidators)()\n },\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n if (!this.state.title.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter thread title.\"));\n return false;\n }\n\n var errors = this.validate();\n\n if (errors.title) {\n _snackbar2.default.error(errors.title[0]);\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.patch(this.props.thread.api.index, [{ op: 'replace', path: 'title', value: this.state.title }]);\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(data) {\n _store2.default.dispatch(thread.update(data));\n\n this.setState({\n 'isEditing': false\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n var _props = this.props,\n thread = _props.thread,\n user = _props.user;\n\n var showModeration = !!user.id && (0, _thread.isModerationVisible)(thread);\n\n if (this.state.isEditing) {\n return _react2.default.createElement(\n 'div',\n { className: 'page-header' },\n _react2.default.createElement(_breadcrumbs2.default, { path: thread.path }),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row xs-margin-top title-edit-form' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-6 col-md-6' },\n _react2.default.createElement('input', {\n className: 'form-control',\n type: 'text',\n value: this.state.title,\n onChange: this.onChange\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-6 col-md-4' },\n _react2.default.createElement(\n 'div',\n { className: 'row xs-margin-top-half sm-margin-top-no md-margin-top-no' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-6' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-primary btn-block btn-outline',\n disabled: this.state.isLoading,\n title: gettext(\"Change title\")\n },\n gettext(\"Save changes\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-6' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-outline',\n disabled: this.state.isLoading,\n onClick: this.onCancel,\n title: gettext(\"Cancel\"),\n type: 'button'\n },\n gettext(\"Cancel\")\n )\n )\n )\n )\n )\n )\n ),\n _react2.default.createElement(_stats2.default, { thread: thread })\n );\n } else if (user.id && thread.acl.can_edit) {\n return _react2.default.createElement(\n 'div',\n { className: 'page-header' },\n _react2.default.createElement(_breadcrumbs2.default, { path: thread.path }),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: showModeration ? \"col-sm-9 col-md-8\" : \"col-sm-10 col-md-10\" },\n _react2.default.createElement(\n 'h1',\n null,\n thread.title\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: showModeration ? \"col-sm-3 col-md-4\" : \"col-sm-3 col-md-2\" },\n _react2.default.createElement(\n 'div',\n { className: 'row xs-margin-top md-margin-top-no' },\n _react2.default.createElement(\n 'div',\n { className: showModeration ? \"col-xs-6\" : \"col-xs-12\" },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-outline',\n onClick: this.onEdit,\n title: gettext(\"Edit title\"),\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'edit'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'hidden-sm' },\n gettext(\"Edit\")\n )\n )\n ),\n showModeration && _react2.default.createElement(Moderation, this.props)\n )\n )\n )\n ),\n _react2.default.createElement(_stats2.default, { thread: thread })\n );\n } else if (showModeration) {\n return _react2.default.createElement(\n 'div',\n { className: 'page-header' },\n _react2.default.createElement(_breadcrumbs2.default, { path: thread.path }),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-9 col-md-10' },\n _react2.default.createElement(\n 'h1',\n null,\n thread.title\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-3 col-md-2' },\n _react2.default.createElement(\n 'div',\n { className: 'row xs-margin-top md-margin-top-no' },\n _react2.default.createElement(Moderation, _extends({\n isSingle: true\n }, this.props))\n )\n )\n )\n ),\n _react2.default.createElement(_stats2.default, { thread: thread })\n );\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'page-header' },\n _react2.default.createElement(_breadcrumbs2.default, { path: thread.path }),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'h1',\n null,\n thread.title\n )\n ),\n _react2.default.createElement(_stats2.default, { thread: thread })\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\nfunction Moderation(props) {\n return _react2.default.createElement(\n 'div',\n { className: props.isSingle ? \"col-xs-12\" : \"col-xs-6\" },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group btn-group-justified' },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-expanded': 'false',\n 'aria-haspopup': 'true',\n className: 'btn btn-default btn-outline dropdown-toggle',\n 'data-toggle': 'dropdown',\n disabled: props.thread.isBusy,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'settings'\n ),\n _react2.default.createElement(\n 'span',\n { className: props.isSingle ? \"\" : \"hidden-sm\" },\n gettext(\"Moderation\")\n )\n ),\n _react2.default.createElement(_thread.ModerationControls, {\n posts: props.posts,\n thread: props.thread,\n user: props.user\n })\n )\n )\n );\n}\n\n},{\"../../../reducers/thread\":347,\"../../../services/ajax\":352,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../form\":52,\"../../posting/utils/validators\":137,\"../moderation/thread\":216,\"./breadcrumbs\":206,\"./stats\":208,\"react\":\"react\"}],208:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Weight = Weight;\nexports.Unapproved = Unapproved;\nexports.IsHidden = IsHidden;\nexports.IsClosed = IsClosed;\nexports.Replies = Replies;\nexports.LastReply = LastReply;\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'header-stats' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-inline' },\n _react2.default.createElement(Weight, { thread: props.thread }),\n _react2.default.createElement(Unapproved, { thread: props.thread }),\n _react2.default.createElement(IsHidden, { thread: props.thread }),\n _react2.default.createElement(IsClosed, { thread: props.thread }),\n _react2.default.createElement(Replies, { thread: props.thread }),\n _react2.default.createElement(LastReply, { thread: props.thread })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _escapeHtml = require('../../../utils/escape-html');\n\nvar _escapeHtml2 = _interopRequireDefault(_escapeHtml);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nvar LAST_POSTER_URL = '%(user)s';\nvar LAST_POSTER_SPAN = '%(user)s';\nvar LAST_REPLY = '%(relative)s';\n\nfunction Weight(props) {\n if (props.thread.weight == 2) {\n return _react2.default.createElement(\n 'li',\n { className: 'thread-pinned-globally' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'bookmark'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-legend' },\n gettext(\"Pinned globally\")\n )\n );\n } else if (props.thread.weight == 1) {\n return _react2.default.createElement(\n 'li',\n { className: 'thread-pinned-locally' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'bookmark_border'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-legend' },\n gettext(\"Pinned locally\")\n )\n );\n } else {\n return null;\n }\n}\n\nfunction Unapproved(props) {\n if (props.thread.is_unapproved) {\n return _react2.default.createElement(\n 'li',\n { className: 'thread-unapproved' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'remove_circle'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-legend' },\n gettext(\"Unapproved\")\n )\n );\n } else if (props.thread.has_unapproved_posts) {\n return _react2.default.createElement(\n 'li',\n { className: 'thread-unapproved-posts' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'remove_circle_outline'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-legend' },\n gettext(\"Unapproved posts\")\n )\n );\n } else {\n return null;\n }\n}\n\nfunction IsHidden(props) {\n if (props.thread.is_hidden) {\n return _react2.default.createElement(\n 'li',\n { className: 'thread-hidden' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility_off'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-legend' },\n gettext(\"Hidden\")\n )\n );\n } else {\n return null;\n }\n}\n\nfunction IsClosed(props) {\n if (props.thread.is_closed) {\n return _react2.default.createElement(\n 'li',\n { className: 'thread-closed' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_outline'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-legend' },\n gettext(\"Closed\")\n )\n );\n } else {\n return null;\n }\n}\n\nfunction Replies(props) {\n var message = ngettext(\"%(replies)s reply\", \"%(replies)s replies\", props.thread.replies);\n var legend = interpolate(message, { 'replies': props.thread.replies }, true);\n\n return _react2.default.createElement(\n 'li',\n { className: 'thread-replies' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'forum'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'icon-legend' },\n legend\n )\n );\n}\n\n/* jshint ignore:end */\nfunction LastReply(props) {\n var user = null;\n if (props.thread.url.last_poster) {\n user = interpolate(LAST_POSTER_URL, {\n url: (0, _escapeHtml2.default)(props.thread.url.last_poster),\n user: (0, _escapeHtml2.default)(props.thread.last_poster_name)\n }, true);\n } else {\n user = interpolate(LAST_POSTER_SPAN, {\n user: (0, _escapeHtml2.default)(props.thread.last_poster_name)\n }, true);\n };\n\n var date = interpolate(LAST_REPLY, {\n absolute: (0, _escapeHtml2.default)(props.thread.last_post_on.format('LLL')),\n relative: (0, _escapeHtml2.default)(props.thread.last_post_on.fromNow())\n }, true);\n\n var message = interpolate((0, _escapeHtml2.default)(gettext(\"last reply by %(user)s %(date)s\")), {\n date: date, user: user\n }, true);\n\n return _react2.default.createElement('li', { className: 'thread-last-reply', dangerouslySetInnerHTML: { __html: message } });\n}\n\n},{\"../../../utils/escape-html\":370,\"react\":\"react\"}],209:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.approve = approve;\nexports.protect = protect;\nexports.unprotect = unprotect;\nexports.hide = hide;\nexports.unhide = unhide;\nexports.patch = patch;\nexports.merge = merge;\nexports.remove = remove;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _post = require('../../../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _posts = require('../../../../reducers/posts');\n\nvar posts = _interopRequireWildcard(_posts);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _errorsList = require('./errors-list');\n\nvar _errorsList2 = _interopRequireDefault(_errorsList);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:line\n\nfunction approve(props) {\n var selection = props.selection;\n\n\n var ops = [{ 'op': 'replace', 'path': 'is-unapproved', 'value': false }];\n\n var newState = selection.map(function (post) {\n return {\n id: post.id,\n is_unapproved: false\n };\n });\n\n var previousState = selection.map(function (post) {\n return {\n id: post.id,\n is_unapproved: post.is_unapproved\n };\n });\n\n patch(props, ops, newState, previousState);\n} // jshint ignore:line\n// jshint ignore:line\nfunction protect(props) {\n var selection = props.selection;\n\n\n var ops = [{ 'op': 'replace', 'path': 'is-protected', 'value': true }];\n\n var newState = selection.map(function (post) {\n return {\n id: post.id,\n is_protected: true\n };\n });\n\n var previousState = selection.map(function (post) {\n return {\n id: post.id,\n is_protected: post.is_protected\n };\n });\n\n patch(props, ops, newState, previousState);\n}\n\nfunction unprotect(props) {\n var selection = props.selection;\n\n\n var ops = [{ 'op': 'replace', 'path': 'is-protected', 'value': false }];\n\n var newState = selection.map(function (post) {\n return {\n id: post.id,\n is_protected: false\n };\n });\n\n var previousState = selection.map(function (post) {\n return {\n id: post.id,\n is_protected: post.is_protected\n };\n });\n\n patch(props, ops, newState, previousState);\n}\n\nfunction hide(props) {\n var selection = props.selection;\n\n\n var ops = [{ 'op': 'replace', 'path': 'is-hidden', 'value': true }];\n\n var newState = selection.map(function (post) {\n return {\n id: post.id,\n is_hidden: true,\n hidden_on: (0, _moment2.default)(),\n hidden_by_name: props.user.username,\n url: Object.assign(post.url, {\n hidden_by: props.user.url\n })\n };\n });\n\n var previousState = selection.map(function (post) {\n return {\n id: post.id,\n is_hidden: post.is_hidden,\n hidden_on: post.hidden_on,\n hidden_by_name: post.hidden_by_name,\n url: post.url\n };\n });\n\n patch(props, ops, newState, previousState);\n}\n\nfunction unhide(props) {\n var selection = props.selection;\n\n\n var ops = [{ 'op': 'replace', 'path': 'is-hidden', 'value': false }];\n\n var newState = selection.map(function (post) {\n return {\n id: post.id,\n is_hidden: false,\n hidden_on: (0, _moment2.default)(),\n hidden_by_name: props.user.username,\n url: Object.assign(post.url, {\n hidden_by: props.user.url\n })\n };\n });\n\n var previousState = selection.map(function (post) {\n return {\n id: post.id,\n is_hidden: post.is_hidden,\n hidden_on: post.hidden_on,\n hidden_by_name: post.hidden_by_name,\n url: post.url\n };\n });\n\n patch(props, ops, newState, previousState);\n}\n\nfunction patch(props, ops, newState, previousState) {\n var selection = props.selection,\n thread = props.thread;\n\n // patch selected items\n\n newState.forEach(function (item) {\n post.patch(item, item);\n });\n\n // deselect all the things\n _store2.default.dispatch(posts.deselectAll());\n\n // call ajax\n var data = {\n ops: ops,\n\n ids: selection.map(function (post) {\n return post.id;\n })\n };\n\n _ajax2.default.patch(thread.api.posts.index, data).then(function (data) {\n data.forEach(function (item) {\n _store2.default.dispatch(post.patch(item, item));\n });\n }, function (rejection) {\n if (rejection.status !== 400) {\n // rollback all\n previousState.forEach(function (item) {\n _store2.default.dispatch(post.patch(item, item));\n });\n return _snackbar2.default.apiError(rejection);\n }\n\n var errors = [];\n var rollback = [];\n\n rejection.forEach(function (item) {\n if (item.detail) {\n errors.push(item);\n rollback.push(item.id);\n } else {\n _store2.default.dispatch(post.patch(item, item));\n }\n\n previousState.forEach(function (item) {\n if (rollback.indexOf(item) !== -1) {\n _store2.default.dispatch(post.patch(item, item));\n }\n });\n });\n\n var posts = {};\n selection.forEach(function (item) {\n posts[item.id] = item;\n });\n\n /* jshint ignore:start */\n _modal2.default.show(_react2.default.createElement(_errorsList2.default, {\n errors: errors,\n posts: posts\n }));\n /* jshint ignore:end */\n });\n}\n\nfunction merge(props) {\n var confirmed = confirm(gettext(\"Are you sure you want to merge selected posts? This action is not reversible!\"));\n if (!confirmed) {\n return;\n }\n\n props.selection.slice(1).map(function (selection) {\n _store2.default.dispatch(post.patch(selection, {\n isDeleted: true\n }));\n });\n\n _ajax2.default.post(props.thread.api.posts.merge, {\n posts: props.selection.map(function (post) {\n return post.id;\n })\n }).then(function (data) {\n _store2.default.dispatch(post.patch(data, post.hydrate(data)));\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n props.selection.slice(1).map(function (selection) {\n _store2.default.dispatch(post.patch(selection, {\n isDeleted: false\n }));\n });\n });\n\n _store2.default.dispatch(posts.deselectAll());\n}\n\nfunction remove(props) {\n var confirmed = confirm(gettext(\"Are you sure you want to delete selected posts? This action is not reversible!\"));\n if (!confirmed) {\n return;\n }\n\n props.selection.map(function (selection) {\n _store2.default.dispatch(post.patch(selection, {\n isDeleted: true\n }));\n });\n\n var ids = props.selection.map(function (post) {\n return post.id;\n });\n\n _ajax2.default.delete(props.thread.api.posts.index, ids).then(function () {\n return;\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n props.selection.map(function (selection) {\n _store2.default.dispatch(post.patch(selection, {\n isDeleted: false\n }));\n });\n });\n\n _store2.default.dispatch(posts.deselectAll());\n}\n\n},{\"../../../../reducers/post\":340,\"../../../../reducers/posts\":341,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"./errors-list\":211,\"moment\":\"moment\",\"react\":\"react\"}],210:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Delete = exports.Unhide = exports.Hide = exports.Unprotect = exports.Protect = exports.Split = exports.Move = exports.Merge = exports.Approve = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'ul',\n { className: 'dropdown-menu' },\n _react2.default.createElement(Approve, props),\n _react2.default.createElement(Merge, props),\n _react2.default.createElement(Move, props),\n _react2.default.createElement(Split, props),\n _react2.default.createElement(Protect, props),\n _react2.default.createElement(Unprotect, props),\n _react2.default.createElement(Unhide, props),\n _react2.default.createElement(Hide, props),\n _react2.default.createElement(Delete, props)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _actions = require('./actions');\n\nvar moderation = _interopRequireWildcard(_actions);\n\nvar _move = require('./move');\n\nvar _move2 = _interopRequireDefault(_move);\n\nvar _split = require('./split');\n\nvar _split2 = _interopRequireDefault(_split);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar Approve = exports.Approve = function (_React$Component) {\n _inherits(Approve, _React$Component);\n\n function Approve() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Approve);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Approve.__proto__ || Object.getPrototypeOf(Approve)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n moderation.approve(_this.props);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Approve, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return post.acl.can_approve && post.is_unapproved;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'done'\n ),\n gettext(\"Approve\")\n )\n );\n }\n }]);\n\n return Approve;\n}(_react2.default.Component);\n\nvar Merge = exports.Merge = function (_React$Component2) {\n _inherits(Merge, _React$Component2);\n\n function Merge() {\n var _ref2;\n\n var _temp2, _this2, _ret2;\n\n _classCallCheck(this, Merge);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, (_ref2 = Merge.__proto__ || Object.getPrototypeOf(Merge)).call.apply(_ref2, [this].concat(args))), _this2), _this2.onClick = function () {\n moderation.merge(_this2.props);\n }, _temp2), _possibleConstructorReturn(_this2, _ret2);\n }\n\n _createClass(Merge, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.length > 1 && this.props.selection.find(function (post) {\n return post.acl.can_merge;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'call_merge'\n ),\n gettext(\"Merge\")\n )\n );\n }\n }]);\n\n return Merge;\n}(_react2.default.Component);\n\nvar Move = exports.Move = function (_React$Component3) {\n _inherits(Move, _React$Component3);\n\n function Move() {\n var _ref3;\n\n var _temp3, _this3, _ret3;\n\n _classCallCheck(this, Move);\n\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _ret3 = (_temp3 = (_this3 = _possibleConstructorReturn(this, (_ref3 = Move.__proto__ || Object.getPrototypeOf(Move)).call.apply(_ref3, [this].concat(args))), _this3), _this3.onClick = function () {\n _modal2.default.show(_react2.default.createElement(_move2.default, _this3.props));\n }, _temp3), _possibleConstructorReturn(_this3, _ret3);\n }\n\n _createClass(Move, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return post.acl.can_move;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'arrow_forward'\n ),\n gettext(\"Move\")\n )\n );\n }\n }]);\n\n return Move;\n}(_react2.default.Component);\n\nvar Split = exports.Split = function (_React$Component4) {\n _inherits(Split, _React$Component4);\n\n function Split() {\n var _ref4;\n\n var _temp4, _this4, _ret4;\n\n _classCallCheck(this, Split);\n\n for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return _ret4 = (_temp4 = (_this4 = _possibleConstructorReturn(this, (_ref4 = Split.__proto__ || Object.getPrototypeOf(Split)).call.apply(_ref4, [this].concat(args))), _this4), _this4.onClick = function () {\n _modal2.default.show(_react2.default.createElement(_split2.default, _this4.props));\n }, _temp4), _possibleConstructorReturn(_this4, _ret4);\n }\n\n _createClass(Split, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return post.acl.can_move;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'call_split'\n ),\n gettext(\"Split\")\n )\n );\n }\n }]);\n\n return Split;\n}(_react2.default.Component);\n\nvar Protect = exports.Protect = function (_React$Component5) {\n _inherits(Protect, _React$Component5);\n\n function Protect() {\n var _ref5;\n\n var _temp5, _this5, _ret5;\n\n _classCallCheck(this, Protect);\n\n for (var _len5 = arguments.length, args = Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {\n args[_key5] = arguments[_key5];\n }\n\n return _ret5 = (_temp5 = (_this5 = _possibleConstructorReturn(this, (_ref5 = Protect.__proto__ || Object.getPrototypeOf(Protect)).call.apply(_ref5, [this].concat(args))), _this5), _this5.onClick = function () {\n moderation.protect(_this5.props);\n }, _temp5), _possibleConstructorReturn(_this5, _ret5);\n }\n\n _createClass(Protect, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return !post.is_protected && post.acl.can_protect;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_outline'\n ),\n gettext(\"Protect\")\n )\n );\n }\n }]);\n\n return Protect;\n}(_react2.default.Component);\n\nvar Unprotect = exports.Unprotect = function (_React$Component6) {\n _inherits(Unprotect, _React$Component6);\n\n function Unprotect() {\n var _ref6;\n\n var _temp6, _this6, _ret6;\n\n _classCallCheck(this, Unprotect);\n\n for (var _len6 = arguments.length, args = Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n args[_key6] = arguments[_key6];\n }\n\n return _ret6 = (_temp6 = (_this6 = _possibleConstructorReturn(this, (_ref6 = Unprotect.__proto__ || Object.getPrototypeOf(Unprotect)).call.apply(_ref6, [this].concat(args))), _this6), _this6.onClick = function () {\n moderation.unprotect(_this6.props);\n }, _temp6), _possibleConstructorReturn(_this6, _ret6);\n }\n\n _createClass(Unprotect, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return post.is_protected && post.acl.can_protect;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_open'\n ),\n gettext(\"Unprotect\")\n )\n );\n }\n }]);\n\n return Unprotect;\n}(_react2.default.Component);\n\nvar Hide = exports.Hide = function (_React$Component7) {\n _inherits(Hide, _React$Component7);\n\n function Hide() {\n var _ref7;\n\n var _temp7, _this7, _ret7;\n\n _classCallCheck(this, Hide);\n\n for (var _len7 = arguments.length, args = Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {\n args[_key7] = arguments[_key7];\n }\n\n return _ret7 = (_temp7 = (_this7 = _possibleConstructorReturn(this, (_ref7 = Hide.__proto__ || Object.getPrototypeOf(Hide)).call.apply(_ref7, [this].concat(args))), _this7), _this7.onClick = function () {\n moderation.hide(_this7.props);\n }, _temp7), _possibleConstructorReturn(_this7, _ret7);\n }\n\n _createClass(Hide, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return post.acl.can_hide && !post.is_hidden;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility_off'\n ),\n gettext(\"Hide\")\n )\n );\n }\n }]);\n\n return Hide;\n}(_react2.default.Component);\n\nvar Unhide = exports.Unhide = function (_React$Component8) {\n _inherits(Unhide, _React$Component8);\n\n function Unhide() {\n var _ref8;\n\n var _temp8, _this8, _ret8;\n\n _classCallCheck(this, Unhide);\n\n for (var _len8 = arguments.length, args = Array(_len8), _key8 = 0; _key8 < _len8; _key8++) {\n args[_key8] = arguments[_key8];\n }\n\n return _ret8 = (_temp8 = (_this8 = _possibleConstructorReturn(this, (_ref8 = Unhide.__proto__ || Object.getPrototypeOf(Unhide)).call.apply(_ref8, [this].concat(args))), _this8), _this8.onClick = function () {\n moderation.unhide(_this8.props);\n }, _temp8), _possibleConstructorReturn(_this8, _ret8);\n }\n\n _createClass(Unhide, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return post.acl.can_unhide && post.is_hidden;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility'\n ),\n gettext(\"Unhide\")\n )\n );\n }\n }]);\n\n return Unhide;\n}(_react2.default.Component);\n\nvar Delete = exports.Delete = function (_React$Component9) {\n _inherits(Delete, _React$Component9);\n\n function Delete() {\n var _ref9;\n\n var _temp9, _this9, _ret9;\n\n _classCallCheck(this, Delete);\n\n for (var _len9 = arguments.length, args = Array(_len9), _key9 = 0; _key9 < _len9; _key9++) {\n args[_key9] = arguments[_key9];\n }\n\n return _ret9 = (_temp9 = (_this9 = _possibleConstructorReturn(this, (_ref9 = Delete.__proto__ || Object.getPrototypeOf(Delete)).call.apply(_ref9, [this].concat(args))), _this9), _this9.onClick = function () {\n moderation.remove(_this9.props);\n }, _temp9), _possibleConstructorReturn(_this9, _ret9);\n }\n\n _createClass(Delete, [{\n key: 'render',\n value: function render() {\n var isVisible = this.props.selection.find(function (post) {\n return post.acl.can_delete;\n });\n\n if (!isVisible) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'clear'\n ),\n gettext(\"Delete\")\n )\n );\n }\n }]);\n\n return Delete;\n}(_react2.default.Component);\n\n},{\"../../../../services/modal\":358,\"./actions\":209,\"./move\":213,\"./split\":214,\"react\":\"react\"}],211:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var errors = _ref.errors,\n posts = _ref.posts;\n\n return _react2.default.createElement(\n \"div\",\n { className: \"modal-dialog\", role: \"document\" },\n _react2.default.createElement(\n \"div\",\n { className: \"modal-content\" },\n _react2.default.createElement(\n \"div\",\n { className: \"modal-header\" },\n _react2.default.createElement(\n \"button\",\n {\n \"aria-label\": gettext(\"Close\"),\n className: \"close\",\n \"data-dismiss\": \"modal\",\n type: \"button\"\n },\n _react2.default.createElement(\n \"span\",\n { \"aria-hidden\": \"true\" },\n \"\\xD7\"\n )\n ),\n _react2.default.createElement(\n \"h4\",\n { className: \"modal-title\" },\n gettext(\"Moderation\")\n )\n ),\n _react2.default.createElement(\n \"div\",\n { className: \"modal-body\" },\n _react2.default.createElement(\n \"p\",\n { className: \"lead\" },\n gettext(\"One or more posts could not be changed:\")\n ),\n _react2.default.createElement(\n \"ul\",\n { className: \"list-unstyled list-errored-items\" },\n errors.map(function (post) {\n return _react2.default.createElement(PostErrors, {\n errors: post.detail,\n key: post.id,\n post: posts[post.id]\n });\n })\n )\n )\n )\n );\n};\n\nexports.PostErrors = PostErrors;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction PostErrors(_ref2) {\n var errors = _ref2.errors,\n post = _ref2.post;\n\n var heading = interpolate(gettext(\"%(username)s on %(posted_on)s\"), {\n posted_on: post.posted_on.format('LL, LT'),\n username: post.poster_name\n }, true);\n\n return _react2.default.createElement(\n \"li\",\n null,\n _react2.default.createElement(\n \"h5\",\n null,\n heading,\n \":\"\n ),\n errors.map(function (error, i) {\n return _react2.default.createElement(\n \"p\",\n { key: i },\n error\n );\n })\n );\n}\n\n},{\"react\":\"react\"}],212:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; /* jshint ignore:start */\n\n\nexports.default = function (props) {\n if (!props.user.id || !isVisible(props.thread, props.posts.results)) {\n return null;\n }\n\n var selection = props.posts.results.filter(function (post) {\n return post.isSelected;\n });\n\n return _react2.default.createElement(\n 'div',\n { className: 'dropup' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-expanded': 'true',\n 'aria-haspopup': 'true',\n className: 'btn btn-default dropdown-toggle btn-block btn-outline',\n 'data-toggle': 'dropdown',\n disabled: !selection.length,\n type: 'button'\n },\n gettext(\"Posts options\")\n ),\n _react2.default.createElement(_dropdown2.default, _extends({ selection: selection }, props))\n );\n};\n\nexports.isVisible = isVisible;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _dropdown = require('./dropdown');\n\nvar _dropdown2 = _interopRequireDefault(_dropdown);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction isVisible(thread, posts) {\n if (thread.acl.can_merge_posts && posts.length > 1) {\n // fast test: show moderation menu if we can merge posts\n return true;\n }\n\n // slow test: show moderation if any of posts has moderation options\n var visible = false;\n posts.forEach(function (post) {\n if (!post.is_event) {\n var showModeration = post.acl.can_approve && post.is_unapproved || post.acl.can_delete || !post.is_hidden && post.acl.can_hide || post.acl.can_move || post.acl.can_merge || post.acl.can_protect || post.is_hidden && post.acl.can_unhide || post.acl.can_unprotect;\n\n if (showModeration) {\n visible = true;\n }\n }\n });\n return visible;\n}\n\n},{\"./dropdown\":210,\"react\":\"react\"}],213:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ModalHeader = ModalHeader;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _post = require('../../../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onUrlChange = function (event) {\n _this.changeValue('url', event.target.value);\n };\n\n _this.state = {\n isLoading: false,\n\n url: '',\n\n validators: {\n url: []\n },\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n if (!this.state.url.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter link to the other thread.\"));\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.thread.api.posts.move, {\n new_thread: this.state.url,\n posts: this.props.selection.map(function (post) {\n return post.id;\n })\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(success) {\n this.props.selection.forEach(function (selection) {\n _store2.default.dispatch(post.patch(selection, {\n isDeleted: true\n }));\n });\n\n _modal2.default.hide();\n\n _snackbar2.default.success(gettext(\"Selected posts were moved to the other thread.\"));\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog', role: 'document' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(ModalHeader, null),\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n {\n 'for': 'id_url',\n label: gettext(\"Link to thread you want to move posts to\")\n },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading,\n id: 'id_url',\n onChange: this.onUrlChange,\n value: this.state.url\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-primary', loading: this.state.isLoading },\n gettext(\"Move posts\")\n )\n )\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\nfunction ModalHeader(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Move posts\")\n )\n );\n}\n\n},{\"../../../../reducers/post\":340,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"../../../button\":5,\"../../../form\":52,\"../../../form-group\":51,\"react\":\"react\"}],214:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ModerationForm = exports.PostingConfig = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _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; }; /* jshint ignore:start */\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nexports.default = function (props) {\n return _react2.default.createElement(PostingConfig, _extends({}, props, { Form: ModerationForm }));\n};\n\nexports.Loader = Loader;\nexports.Error = Error;\nexports.Modal = Modal;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _categorySelect = require('../../../category-select');\n\nvar _categorySelect2 = _interopRequireDefault(_categorySelect);\n\nvar _modalLoader = require('../../../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _select = require('../../../select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nvar _post = require('../../../../reducers/post');\n\nvar post = _interopRequireWildcard(_post);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _validators = require('../../../../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar PostingConfig = exports.PostingConfig = function (_React$Component) {\n _inherits(PostingConfig, _React$Component);\n\n function PostingConfig(props) {\n _classCallCheck(this, PostingConfig);\n\n var _this = _possibleConstructorReturn(this, (PostingConfig.__proto__ || Object.getPrototypeOf(PostingConfig)).call(this, props));\n\n _this.state = {\n isLoaded: false,\n isError: false,\n\n categories: []\n };\n return _this;\n }\n\n _createClass(PostingConfig, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(misago.get('THREAD_EDITOR_API')).then(function (data) {\n // hydrate categories, extract posting options\n var categories = data.map(function (item) {\n return Object.assign(item, {\n disabled: item.post === false,\n label: item.name,\n value: item.id,\n post: item.post\n });\n });\n\n _this2.setState({\n isLoaded: true,\n categories: categories\n });\n }, function (rejection) {\n _this2.setState({\n isError: rejection.detail\n });\n });\n }\n }, {\n key: 'render',\n value: function render() {\n if (this.state.isError) {\n return _react2.default.createElement(Error, { message: this.state.isError });\n } else if (this.state.isLoaded) {\n return _react2.default.createElement(ModerationForm, _extends({}, this.props, { categories: this.state.categories }));\n } else {\n return _react2.default.createElement(Loader, null);\n }\n }\n }]);\n\n return PostingConfig;\n}(_react2.default.Component);\n\nvar ModerationForm = exports.ModerationForm = function (_Form) {\n _inherits(ModerationForm, _Form);\n\n function ModerationForm(props) {\n _classCallCheck(this, ModerationForm);\n\n var _this3 = _possibleConstructorReturn(this, (ModerationForm.__proto__ || Object.getPrototypeOf(ModerationForm)).call(this, props));\n\n _this3.onCategoryChange = function (ev) {\n var categoryId = ev.target.value;\n var newState = {\n category: categoryId\n };\n\n if (_this3.acl[categoryId].can_pin_threads < newState.weight) {\n newState.weight = 0;\n }\n\n if (!_this3.acl[categoryId].can_hide_threads) {\n newState.is_hidden = 0;\n }\n\n if (!_this3.acl[categoryId].can_close_threads) {\n newState.is_closed = false;\n }\n\n _this3.setState(newState);\n };\n\n _this3.state = {\n isLoading: false,\n\n title: '',\n category: null,\n categories: props.categories,\n weight: 0,\n is_hidden: 0,\n is_closed: false,\n\n validators: {\n title: [validators.required()]\n },\n\n errors: {}\n };\n\n _this3.isHiddenChoices = [{\n 'value': 0,\n 'icon': 'visibility',\n 'label': gettext(\"No\")\n }, {\n 'value': 1,\n 'icon': 'visibility_off',\n 'label': gettext(\"Yes\")\n }];\n\n _this3.isClosedChoices = [{\n 'value': false,\n 'icon': 'lock_outline',\n 'label': gettext(\"No\")\n }, {\n 'value': true,\n 'icon': 'lock',\n 'label': gettext(\"Yes\")\n }];\n\n _this3.acl = {};\n _this3.props.categories.forEach(function (category) {\n if (category.post) {\n if (!_this3.state.category) {\n _this3.state.category = category.id;\n }\n\n _this3.acl[category.id] = {\n can_pin_threads: category.post.pin,\n can_close_threads: category.post.close,\n can_hide_threads: category.post.hide\n };\n }\n });\n return _this3;\n }\n\n _createClass(ModerationForm, [{\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n this.setState({\n errors: this.validate()\n });\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(this.props.thread.api.posts.split, {\n title: this.state.title,\n category: this.state.category,\n weight: this.state.weight,\n is_hidden: this.state.is_hidden,\n is_closed: this.state.is_closed,\n posts: this.props.selection.map(function (post) {\n return post.id;\n })\n });\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess(apiResponse) {\n this.props.selection.forEach(function (selection) {\n _store2.default.dispatch(post.patch(selection, {\n isDeleted: true\n }));\n });\n\n _modal2.default.hide();\n\n _snackbar2.default.success(gettext(\"Selected posts were split into new thread.\"));\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n this.setState({\n 'errors': Object.assign({}, this.state.errors, rejection)\n });\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n } else if (rejection.status === 403 && Array.isArray(rejection)) {\n _modal2.default.show(_react2.default.createElement(ErrorsModal, { errors: rejection }));\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n }, {\n key: 'getWeightChoices',\n value: function getWeightChoices() {\n var choices = [{\n 'value': 0,\n 'icon': 'remove',\n 'label': gettext(\"Not pinned\")\n }, {\n 'value': 1,\n 'icon': 'bookmark_border',\n 'label': gettext(\"Pinned locally\")\n }];\n\n if (this.acl[this.state.category].can_pin_threads == 2) {\n choices.push({\n 'value': 2,\n 'icon': 'bookmark',\n 'label': gettext(\"Pinned globally\")\n });\n }\n\n return choices;\n }\n }, {\n key: 'renderWeightField',\n value: function renderWeightField() {\n if (this.acl[this.state.category].can_pin_threads) {\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Thread weight\"),\n 'for': 'id_weight',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8' },\n _react2.default.createElement(_select2.default, { id: 'id_weight',\n onChange: this.bindInput('weight'),\n value: this.state.weight,\n choices: this.getWeightChoices() })\n );\n } else {\n return null;\n }\n }\n }, {\n key: 'renderHiddenField',\n value: function renderHiddenField() {\n if (this.acl[this.state.category].can_hide_threads) {\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Hide thread\"),\n 'for': 'id_is_hidden',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8' },\n _react2.default.createElement(_select2.default, { id: 'id_is_closed',\n onChange: this.bindInput('is_hidden'),\n value: this.state.is_hidden,\n choices: this.isHiddenChoices })\n );\n } else {\n return null;\n }\n }\n }, {\n key: 'renderClosedField',\n value: function renderClosedField() {\n if (this.acl[this.state.category].can_close_threads) {\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Close thread\"),\n 'for': 'id_is_closed',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8' },\n _react2.default.createElement(_select2.default, { id: 'id_is_closed',\n onChange: this.bindInput('is_closed'),\n value: this.state.is_closed,\n choices: this.isClosedChoices })\n );\n } else {\n return null;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n Modal,\n { className: 'modal-dialog' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Thread title\"),\n 'for': 'id_title',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8',\n validation: this.state.errors.title },\n _react2.default.createElement('input', { id: 'id_title',\n className: 'form-control',\n type: 'text',\n onChange: this.bindInput('title'),\n value: this.state.title })\n ),\n _react2.default.createElement('div', { className: 'clearfix' }),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Category\"),\n 'for': 'id_category',\n labelClass: 'col-sm-4', controlClass: 'col-sm-8',\n validation: this.state.errors.category },\n _react2.default.createElement(_categorySelect2.default, { id: 'id_category',\n onChange: this.onCategoryChange,\n value: this.state.category,\n choices: this.state.categories })\n ),\n _react2.default.createElement('div', { className: 'clearfix' }),\n this.renderWeightField(),\n this.renderHiddenField(),\n this.renderClosedField()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Split posts\")\n )\n )\n )\n );\n }\n }]);\n\n return ModerationForm;\n}(_form2.default);\n\nfunction Loader() {\n return _react2.default.createElement(\n Modal,\n { className: 'modal-dialog' },\n _react2.default.createElement(_modalLoader2.default, null)\n );\n}\n\nfunction Error(props) {\n return _react2.default.createElement(\n Modal,\n { className: 'modal-dialog modal-message' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"You can't move selected posts at the moment.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n props.message\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n gettext(\"Ok\")\n )\n )\n );\n}\n\nfunction Modal(props) {\n return _react2.default.createElement(\n 'div',\n { className: props.className, role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Split posts into new thread\")\n )\n ),\n props.children\n )\n );\n}\n\n},{\"../../../../reducers/post\":340,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"../../../../utils/validators\":380,\"../../../button\":5,\"../../../category-select\":18,\"../../../form\":52,\"../../../form-group\":51,\"../../../modal-loader\":57,\"../../../select\":203,\"react\":\"react\"}],215:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _merge = require('./merge');\n\nvar _merge2 = _interopRequireDefault(_merge);\n\nvar _move = require('./move');\n\nvar _move2 = _interopRequireDefault(_move);\n\nvar _thread = require('../../../../reducers/thread');\n\nvar thread = _interopRequireWildcard(_thread);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.callApi = function (ops, successMessage) {\n _store2.default.dispatch(thread.busy());\n\n // by the chance update thread acl too\n ops.push({ op: 'add', path: 'acl', value: true });\n\n _ajax2.default.patch(_this.props.thread.api.index, ops).then(function (data) {\n _store2.default.dispatch(thread.update(data));\n _store2.default.dispatch(thread.release());\n _snackbar2.default.success(successMessage);\n }, function (rejection) {\n _store2.default.dispatch(thread.release());\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n });\n }, _this.pinGlobally = function () {\n _this.callApi([{\n op: 'replace',\n path: 'weight',\n value: 2\n }], gettext(\"Thread has been pinned globally.\"));\n }, _this.pinLocally = function () {\n _this.callApi([{\n op: 'replace',\n path: 'weight',\n value: 1\n }], gettext(\"Thread has been pinned locally.\"));\n }, _this.unpin = function () {\n _this.callApi([{\n op: 'replace',\n path: 'weight',\n value: 0\n }], gettext(\"Thread has been unpinned.\"));\n }, _this.approve = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-unapproved',\n value: false\n }], gettext(\"Thread has been approved.\"));\n }, _this.open = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-closed',\n value: false\n }], gettext(\"Thread has been opened.\"));\n }, _this.close = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-closed',\n value: true\n }], gettext(\"Thread has been closed.\"));\n }, _this.unhide = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-hidden',\n value: false\n }], gettext(\"Thread has been made visible.\"));\n }, _this.hide = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-hidden',\n value: true\n }], gettext(\"Thread has been made hidden.\"));\n }, _this.move = function () {\n _modal2.default.show(_react2.default.createElement(_move2.default, {\n posts: _this.props.posts,\n thread: _this.props.thread\n }));\n }, _this.merge = function () {\n _modal2.default.show(_react2.default.createElement(_merge2.default, { thread: _this.props.thread }));\n }, _this.delete = function () {\n if (!confirm(gettext(\"Are you sure you want to delete this thread?\"))) {\n return;\n }\n\n _store2.default.dispatch(thread.busy());\n\n _ajax2.default.delete(_this.props.thread.api.index).then(function (data) {\n _snackbar2.default.success(gettext(\"Thread has been deleted.\"));\n window.location = _this.props.thread.category.url.index;\n }, function (rejection) {\n _store2.default.dispatch(thread.release());\n _snackbar2.default.apiError(rejection);\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'getPinGloballyButton',\n value: function getPinGloballyButton() {\n if (this.props.thread.weight === 2) return null;\n if (!this.props.thread.acl.can_pin_globally) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.pinGlobally,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'bookmark'\n ),\n gettext(\"Pin globally\")\n )\n );\n }\n }, {\n key: 'getPinLocallyButton',\n value: function getPinLocallyButton() {\n if (this.props.thread.weight === 1) return null;\n if (!this.props.thread.acl.can_pin) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.pinLocally,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'bookmark_border'\n ),\n gettext(\"Pin locally\")\n )\n );\n }\n }, {\n key: 'getUnpinButton',\n value: function getUnpinButton() {\n if (this.props.thread.weight === 0) return null;\n if (!this.props.thread.acl.can_pin) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.unpin,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'panorama_fish_eye'\n ),\n gettext(\"Unpin\")\n )\n );\n }\n }, {\n key: 'getMoveButton',\n value: function getMoveButton() {\n if (!this.props.thread.acl.can_move) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.move,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'arrow_forward'\n ),\n gettext(\"Move\")\n )\n );\n }\n }, {\n key: 'getMergeButton',\n value: function getMergeButton() {\n if (!this.props.thread.acl.can_merge) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.merge,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'call_merge'\n ),\n gettext(\"Merge\")\n )\n );\n }\n }, {\n key: 'getApproveButton',\n value: function getApproveButton() {\n if (!this.props.thread.is_unapproved) return null;\n if (!this.props.thread.acl.can_approve) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.approve,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'done'\n ),\n gettext(\"Approve\")\n )\n );\n }\n }, {\n key: 'getOpenButton',\n value: function getOpenButton() {\n if (!this.props.thread.is_closed) return null;\n if (!this.props.thread.acl.can_close) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.open,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_open'\n ),\n gettext(\"Open\")\n )\n );\n }\n }, {\n key: 'getCloseButton',\n value: function getCloseButton() {\n if (this.props.thread.is_closed) return null;\n if (!this.props.thread.acl.can_close) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.close,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_outline'\n ),\n gettext(\"Close\")\n )\n );\n }\n }, {\n key: 'getUnhideButton',\n value: function getUnhideButton() {\n if (!this.props.thread.is_hidden) return null;\n if (!this.props.thread.acl.can_unhide) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.unhide,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility'\n ),\n gettext(\"Unhide\")\n )\n );\n }\n }, {\n key: 'getHideButton',\n value: function getHideButton() {\n if (this.props.thread.is_hidden) return null;\n if (!this.props.thread.acl.can_hide) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.hide,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility_off'\n ),\n gettext(\"Hide\")\n )\n );\n }\n }, {\n key: 'getDeleteButton',\n value: function getDeleteButton() {\n if (!this.props.thread.acl.can_delete) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.delete,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'clear'\n ),\n gettext(\"Delete\")\n )\n );\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'ul',\n { className: 'dropdown-menu dropdown-menu-right stick-to-bottom' },\n this.getPinGloballyButton(),\n this.getPinLocallyButton(),\n this.getUnpinButton(),\n this.getMoveButton(),\n this.getMergeButton(),\n this.getApproveButton(),\n this.getOpenButton(),\n this.getCloseButton(),\n this.getUnhideButton(),\n this.getHideButton(),\n this.getDeleteButton()\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../../reducers/thread\":347,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"./merge\":218,\"./move\":219,\"react\":\"react\"}],216:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.isModerationVisible = exports.ModerationControls = undefined;\n\nvar _controls = require('./controls');\n\nvar _controls2 = _interopRequireDefault(_controls);\n\nvar _isVisible = require('./is-visible');\n\nvar _isVisible2 = _interopRequireDefault(_isVisible);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.ModerationControls = _controls2.default;\nexports.isModerationVisible = _isVisible2.default;\n\n},{\"./controls\":215,\"./is-visible\":217}],217:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (thread) {\n return !!(thread.acl.can_approve && thread.is_unapproved || thread.acl.can_close || thread.acl.can_delete || thread.acl.can_hide || thread.acl.can_move || thread.acl.can_pin || thread.acl.can_pin_globally || thread.acl.can_unhide);\n};\n\n},{}],218:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ModalHeader = ModalHeader;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _form = require('../../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _mergePolls = require('../../../merge-polls');\n\nvar _mergePolls2 = _interopRequireDefault(_mergePolls);\n\nvar _thread = require('../../../../reducers/thread');\n\nvar thread = _interopRequireWildcard(_thread);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.handleSuccess = function (success) {\n _this.handleSuccessUnmounted(success);\n\n // keep form loading\n _this.setState({\n 'isLoading': true\n });\n };\n\n _this.handleSuccessUnmounted = function (success) {\n _snackbar2.default.success(gettext(\"Thread has been merged with other one.\"));\n window.location = success.url;\n };\n\n _this.handleError = function (rejection) {\n _store2.default.dispatch(thread.release());\n\n if (rejection.status === 400) {\n if (rejection.polls) {\n _modal2.default.show(_react2.default.createElement(_mergePolls2.default, {\n api: _this.props.thread.api.merge,\n data: { other_thread: _this.state.url },\n polls: rejection.polls,\n onError: _this.handleError,\n onSuccess: _this.handleSuccessUnmounted\n }));\n } else {\n _snackbar2.default.error(rejection.detail);\n }\n } else {\n _snackbar2.default.apiError(rejection);\n }\n };\n\n _this.onUrlChange = function (event) {\n _this.changeValue('url', event.target.value);\n };\n\n _this.state = {\n isLoading: false,\n\n url: '',\n\n validators: {\n url: []\n },\n errors: {}\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n if (!this.state.url.trim().length) {\n _snackbar2.default.error(gettext(\"You have to enter link to the other thread.\"));\n return false;\n }\n\n return true;\n }\n }, {\n key: 'send',\n value: function send() {\n // freeze thread\n _store2.default.dispatch(thread.busy());\n\n return _ajax2.default.post(this.props.thread.api.merge, {\n other_thread: this.state.url\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog', role: 'document' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(ModalHeader, null),\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n {\n 'for': 'id_url',\n label: gettext(\"Link to thread you want to merge with\"),\n help_text: gettext(\"Merge will delete current thread and move its contents to the thread specified here.\")\n },\n _react2.default.createElement('input', {\n className: 'form-control',\n disabled: this.state.isLoading || this.props.thread.isBusy,\n id: 'id_url',\n onChange: this.onUrlChange,\n value: this.state.url\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-primary', loading: this.state.isLoading || this.props.thread.isBusy },\n gettext(\"Merge thread\")\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\n/* jshint ignore:start */\n\n\nexports.default = _class;\nfunction ModalHeader(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Merge thread\")\n )\n );\n}\n/* jshint ignore:end */\n\n},{\"../../../../reducers/thread\":347,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"../../../form\":52,\"../../../form-group\":51,\"../../../merge-polls\":55,\"react\":\"react\"}],219:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ModalHeader = ModalHeader;\nexports.ModalLoading = ModalLoading;\nexports.ModalMessage = ModalMessage;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _form = require('../../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _categorySelect = require('../../../category-select');\n\nvar _categorySelect2 = _interopRequireDefault(_categorySelect);\n\nvar _modalLoader = require('../../../modal-loader');\n\nvar _modalLoader2 = _interopRequireDefault(_modalLoader);\n\nvar _posts = require('../../../../reducers/posts');\n\nvar posts = _interopRequireWildcard(_posts);\n\nvar _thread = require('../../../../reducers/thread');\n\nvar thread = _interopRequireWildcard(_thread);\n\nvar _ = require('../../../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.onCategoryChange = function (event) {\n _this.changeValue('category', event.target.value);\n };\n\n _this.state = {\n isReady: false,\n isLoading: false,\n isError: false,\n\n category: null,\n categories: []\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n _ajax2.default.get(_2.default.get('THREAD_EDITOR_API')).then(function (data) {\n var category = null;\n\n // hydrate categories, extract posting options\n var categories = data.map(function (item) {\n // pick first category that allows posting and if it may, override it with initial one\n if (item.post !== false && !category) {\n category = item.id;\n }\n\n return Object.assign(item, {\n disabled: item.post === false,\n label: item.name,\n value: item.id\n });\n });\n\n _this2.setState({\n isReady: true,\n\n category: category,\n categories: categories\n });\n }, function (rejection) {\n _this2.setState({\n isError: rejection.detail\n });\n });\n }\n }, {\n key: 'send',\n value: function send() {\n // freeze thread\n _store2.default.dispatch(thread.busy());\n\n return _ajax2.default.patch(this.props.thread.api.index, [{ op: 'replace', path: 'category', value: this.state.category }]);\n }\n }, {\n key: 'handleSuccess',\n value: function handleSuccess() {\n // refresh thread and displayed posts\n _ajax2.default.get(this.props.thread.api.posts.index, { page: this.props.posts.page }).then(function (data) {\n _store2.default.dispatch(thread.replace(data));\n _store2.default.dispatch(posts.load(data.post_set));\n _store2.default.dispatch(thread.release());\n\n _snackbar2.default.success(gettext(\"Thread has been moved.\"));\n _modal2.default.hide();\n }, function (rejection) {\n _store2.default.dispatch(thread.release());\n _snackbar2.default.apiError(rejection);\n });\n }\n }, {\n key: 'handleError',\n value: function handleError(rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n if (this.state.isReady) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog', role: 'document' },\n _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(ModalHeader, null),\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { 'for': 'id_category', label: gettext(\"New category\") },\n _react2.default.createElement(_categorySelect2.default, {\n choices: this.state.categories,\n disabled: this.state.isLoading || this.props.thread.isBusy,\n id: 'id_category',\n onChange: this.onCategoryChange,\n value: this.state.category\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-primary', loading: this.state.isLoading || this.props.thread.isBusy },\n gettext(\"Move thread\")\n )\n )\n )\n )\n );\n } else if (this.state.isError) {\n return _react2.default.createElement(ModalMessage, { message: this.state.isError });\n } else {\n return _react2.default.createElement(ModalLoading, null);\n }\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\n/* jshint ignore:start */\n\n\nexports.default = _class;\nfunction ModalHeader(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-label': gettext(\"Close\"),\n className: 'close',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Move thread\")\n )\n );\n}\n\nfunction ModalLoading(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog', role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(ModalHeader, null),\n _react2.default.createElement(_modalLoader2.default, null)\n )\n );\n}\n\nfunction ModalMessage(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog modal-message', role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(ModalHeader, null),\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"You can't move this thread at the moment.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n props.message\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n gettext(\"Ok\")\n )\n )\n )\n );\n}\n/* jshint ignore:end */\n\n},{\"../../../..\":291,\"../../../../reducers/posts\":341,\"../../../../reducers/thread\":347,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"../../../category-select\":18,\"../../../form\":52,\"../../../form-group\":51,\"../../../modal-loader\":57,\"react\":\"react\"}],220:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'nav',\n { className: 'misago-pagination pull-left' },\n _react2.default.createElement(Pager, props),\n _react2.default.createElement(More, { more: props.posts.more })\n );\n};\n\nexports.Pager = Pager;\nexports.FirstPage = FirstPage;\nexports.PreviousPage = PreviousPage;\nexports.NextPage = NextPage;\nexports.LastPage = LastPage;\nexports.More = More;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction Pager(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'row row-paginator' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(FirstPage, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(PreviousPage, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(NextPage, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(LastPage, props)\n )\n );\n} /* jshint ignore:start */\nfunction FirstPage(props) {\n if (props.posts.isLoaded && props.posts.first) {\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-outline btn-icon',\n to: props.thread.url.index,\n title: gettext(\"Go to first page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'first_page'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-outline btn-icon disabled',\n title: gettext(\"Go to first page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'first_page'\n )\n );\n }\n}\n\nfunction PreviousPage(props) {\n if (props.posts.isLoaded && props.posts.page > 1) {\n var previousUrl = '';\n if (props.posts.previous) {\n previousUrl = props.posts.previous + '/';\n }\n\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-outline btn-icon',\n to: props.thread.url.index + previousUrl,\n title: gettext(\"Go to previous page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_left'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-outline btn-icon disabled',\n title: gettext(\"Go to previous page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_left'\n )\n );\n }\n}\n\nfunction NextPage(props) {\n if (props.posts.isLoaded && props.posts.more) {\n var nextUrl = '';\n if (props.posts.next) {\n nextUrl = props.posts.next + '/';\n }\n\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-outline btn-icon',\n to: props.thread.url.index + nextUrl,\n title: gettext(\"Go to next page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_right'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-outline btn-icon disabled',\n title: gettext(\"Go to next page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_right'\n )\n );\n }\n}\n\nfunction LastPage(props) {\n if (props.posts.isLoaded && props.posts.last) {\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-outline btn-icon',\n to: props.thread.url.index + props.posts.last + '/',\n title: gettext(\"Go to last page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'last_page'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-outline btn-icon disabled',\n title: gettext(\"Go to last page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'last_page'\n )\n );\n }\n}\n\nfunction More(props) {\n var message = null;\n if (props.more) {\n message = ngettext(\"There is %(more)s more post in this thread.\", \"There are %(more)s more posts in this thread.\", props.more);\n message = interpolate(message, { 'more': props.more }, true);\n } else {\n message = gettext(\"There are no more posts in this thread.\");\n }\n\n return _react2.default.createElement(\n 'p',\n null,\n message\n );\n}\n\n},{\"react\":\"react\",\"react-router\":\"react-router\"}],221:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'button',\n {\n className: props.className || 'btn btn-primary btn-outline',\n onClick: props.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chat'\n ),\n gettext(\"Reply\")\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],222:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.select = select;\nexports.paths = paths;\n\nvar _reactRedux = require('react-redux');\n\nvar _route = require('./route');\n\nvar _route2 = _interopRequireDefault(_route);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction select(store) {\n return {\n 'participants': store.participants,\n 'poll': store.poll,\n 'posts': store.posts,\n 'thread': store.thread,\n 'tick': store.tick.tick,\n 'user': store.auth.user\n };\n}\n\nfunction paths() {\n var thread = _index2.default.get('THREAD');\n var basePath = thread.url.index.replace(thread.slug + '-' + thread.pk, ':slug');\n\n return [{\n path: basePath,\n component: (0, _reactRedux.connect)(select)(_route2.default)\n }, {\n path: basePath + ':page/',\n component: (0, _reactRedux.connect)(select)(_route2.default)\n }];\n}\n\n},{\"../../index\":291,\"./route\":223,\"react-redux\":\"react-redux\"}],223:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _participants = require('../participants');\n\nvar _participants2 = _interopRequireDefault(_participants);\n\nvar _poll = require('../poll');\n\nvar _postsList = require('../posts-list');\n\nvar _postsList2 = _interopRequireDefault(_postsList);\n\nvar _header = require('./header');\n\nvar _header2 = _interopRequireDefault(_header);\n\nvar _toolbarTop = require('./toolbar-top');\n\nvar _toolbarTop2 = _interopRequireDefault(_toolbarTop);\n\nvar _toolbarBottom = require('./toolbar-bottom');\n\nvar _toolbarBottom2 = _interopRequireDefault(_toolbarBottom);\n\nvar _participants3 = require('../../reducers/participants');\n\nvar participants = _interopRequireWildcard(_participants3);\n\nvar _poll2 = require('../../reducers/poll');\n\nvar poll = _interopRequireWildcard(_poll2);\n\nvar _posts = require('../../reducers/posts');\n\nvar posts = _interopRequireWildcard(_posts);\n\nvar _thread = require('../../reducers/thread');\n\nvar thread = _interopRequireWildcard(_thread);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _polls = require('../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _pageTitle = require('../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.update = function (data) {\n _store2.default.dispatch(thread.replace(data));\n _store2.default.dispatch(posts.load(data.post_set));\n\n if (data.participants) {\n _store2.default.dispatch(participants.replace(data.participants));\n }\n\n if (data.poll) {\n _store2.default.dispatch(poll.replace(data.poll));\n }\n\n _this.setPageTitle();\n }, _this.openReplyForm = function () {\n _posting2.default.open({\n mode: 'REPLY',\n\n config: _this.props.thread.api.editor,\n submit: _this.props.thread.api.posts.index\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (this.shouldFetchData()) {\n this.fetchData();\n this.setPageTitle();\n }\n\n this.startPollingApi();\n }\n }, {\n key: 'componentDidUpdate',\n value: function componentDidUpdate() {\n if (this.shouldFetchData()) {\n this.fetchData();\n this.startPollingApi();\n this.setPageTitle();\n }\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this.stopPollingApi();\n }\n }, {\n key: 'shouldFetchData',\n value: function shouldFetchData() {\n if (this.props.posts.isLoaded) {\n var page = (this.props.params.page || 1) * 1;\n return page != this.props.posts.page;\n } else {\n return false;\n }\n }\n }, {\n key: 'fetchData',\n value: function fetchData() {\n var _this2 = this;\n\n _store2.default.dispatch(posts.unload());\n\n _ajax2.default.get(this.props.thread.api.posts.index, {\n page: this.props.params.page || 1\n }, 'posts').then(function (data) {\n _this2.update(data);\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n });\n }\n }, {\n key: 'startPollingApi',\n value: function startPollingApi() {\n _polls2.default.start({\n poll: 'thread-posts',\n\n url: this.props.thread.api.posts.index,\n data: {\n page: this.props.params.page || 1\n },\n update: this.update,\n\n frequency: 120 * 1000,\n delayed: true\n });\n }\n }, {\n key: 'stopPollingApi',\n value: function stopPollingApi() {\n _polls2.default.stop('thread-posts');\n }\n }, {\n key: 'setPageTitle',\n value: function setPageTitle() {\n _pageTitle2.default.set({\n title: this.props.thread.title,\n parent: this.props.thread.category.name,\n page: (this.props.params.page || 1) * 1\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n var className = 'page page-thread';\n if (this.props.thread.category.css_class) {\n className += ' page-thread-' + this.props.thread.category.css_class;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'page-header-bg' },\n _react2.default.createElement(_header2.default, this.props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(_toolbarTop2.default, _extends({\n openReplyForm: this.openReplyForm\n }, this.props)),\n _react2.default.createElement(_poll.Poll, {\n poll: this.props.poll,\n thread: this.props.thread,\n user: this.props.user\n }),\n _react2.default.createElement(_participants2.default, {\n participants: this.props.participants,\n thread: this.props.thread,\n user: this.props.user\n }),\n _react2.default.createElement(_postsList2.default, this.props),\n _react2.default.createElement(_toolbarBottom2.default, _extends({\n openReplyForm: this.openReplyForm\n }, this.props))\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../reducers/participants\":338,\"../../reducers/poll\":339,\"../../reducers/posts\":341,\"../../reducers/thread\":347,\"../../services/ajax\":352,\"../../services/page-title\":360,\"../../services/polls\":361,\"../../services/posting\":362,\"../../services/snackbar\":363,\"../../services/store\":364,\"../participants\":94,\"../poll\":99,\"../posts-list\":144,\"./header\":207,\"./toolbar-bottom\":225,\"./toolbar-top\":226,\"react\":\"react\"}],224:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Email = exports.Enable = exports.Disable = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = function (props) {\n if (!props.user.id) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: props.className },\n _react2.default.createElement(\n 'button',\n {\n 'aria-expanded': 'true',\n 'aria-haspopup': 'true',\n className: 'btn btn-default dropdown-toggle btn-block btn-outline',\n 'data-toggle': 'dropdown',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n getIcon(props.thread.subscription)\n ),\n getLabel(props.thread.subscription)\n ),\n _react2.default.createElement(Dropdown, props)\n );\n};\n\nexports.getIcon = getIcon;\nexports.getLabel = getLabel;\nexports.Dropdown = Dropdown;\nexports.update = update;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _thread = require('../../reducers/thread');\n\nvar actions = _interopRequireWildcard(_thread);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nfunction getIcon(subscription) {\n if (subscription === true) {\n return 'star';\n } else if (subscription === false) {\n return 'star_half';\n } else {\n return 'star_border';\n }\n}\n\nfunction getLabel(subscription) {\n if (subscription === true) {\n return gettext(\"E-mail\");\n } else if (subscription === false) {\n return gettext(\"Enabled\");\n } else {\n return gettext(\"Disabled\");\n }\n}\n\nfunction Dropdown(props) {\n return _react2.default.createElement(\n 'ul',\n { className: props.dropdownClassName || \"dropdown-menu stick-to-bottom\" },\n _react2.default.createElement(Disable, props),\n _react2.default.createElement(Enable, props),\n _react2.default.createElement(Email, props)\n );\n}\n\nvar Disable = exports.Disable = function (_React$Component) {\n _inherits(Disable, _React$Component);\n\n function Disable() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Disable);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Disable.__proto__ || Object.getPrototypeOf(Disable)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n if (_this.props.thread.subscription === null) {\n return;\n }\n\n update(_this.props.thread, null, 'unsubscribe');\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Disable, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'star_border'\n ),\n gettext(\"Unsubscribe\")\n )\n );\n }\n }]);\n\n return Disable;\n}(_react2.default.Component);\n\nvar Enable = exports.Enable = function (_React$Component2) {\n _inherits(Enable, _React$Component2);\n\n function Enable() {\n var _ref2;\n\n var _temp2, _this2, _ret2;\n\n _classCallCheck(this, Enable);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, (_ref2 = Enable.__proto__ || Object.getPrototypeOf(Enable)).call.apply(_ref2, [this].concat(args))), _this2), _this2.onClick = function () {\n if (_this2.props.thread.subscription === false) {\n return;\n }\n\n update(_this2.props.thread, false, 'notify');\n }, _temp2), _possibleConstructorReturn(_this2, _ret2);\n }\n\n _createClass(Enable, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'star_half'\n ),\n gettext(\"Subscribe\")\n )\n );\n }\n }]);\n\n return Enable;\n}(_react2.default.Component);\n\nvar Email = exports.Email = function (_React$Component3) {\n _inherits(Email, _React$Component3);\n\n function Email() {\n var _ref3;\n\n var _temp3, _this3, _ret3;\n\n _classCallCheck(this, Email);\n\n for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _ret3 = (_temp3 = (_this3 = _possibleConstructorReturn(this, (_ref3 = Email.__proto__ || Object.getPrototypeOf(Email)).call.apply(_ref3, [this].concat(args))), _this3), _this3.onClick = function () {\n if (_this3.props.thread.subscription === true) {\n return;\n }\n\n update(_this3.props.thread, true, 'email');\n }, _temp3), _possibleConstructorReturn(_this3, _ret3);\n }\n\n _createClass(Email, [{\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-link', onClick: this.onClick },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'star'\n ),\n gettext(\"Subscribe with e-mail\")\n )\n );\n }\n }]);\n\n return Email;\n}(_react2.default.Component);\n\nfunction update(thread, newState, value) {\n var oldState = {\n subscription: thread.subscription\n };\n\n _store2.default.dispatch(actions.update({\n subscription: newState\n }));\n\n _ajax2.default.patch(thread.api.index, [{ op: 'replace', path: 'subscription', value: value }]).then(function (finalState) {\n _store2.default.dispatch(actions.update(finalState));\n }, function (rejection) {\n if (rejection.status === 400) {\n _snackbar2.default.error(rejection.detail[0]);\n } else {\n _snackbar2.default.apiError(rejection);\n }\n\n _store2.default.dispatch(actions.update(oldState));\n });\n}\n\n},{\"../../reducers/thread\":347,\"../../services/ajax\":352,\"../../services/snackbar\":363,\"../../services/store\":364,\"react\":\"react\"}],225:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _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; }; /* jshint ignore:start */\n\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'row row-toolbar' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 text-center visible-xs-block' },\n _react2.default.createElement(_paginator.More, { more: props.posts.more }),\n _react2.default.createElement('div', { className: 'toolbar-vertical-spacer' })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-md-7' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-4 col-md-5' },\n _react2.default.createElement(_paginator.Pager, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-8 col-md-7 hidden-xs' },\n _react2.default.createElement(_paginator.More, { more: props.posts.more })\n )\n )\n ),\n _react2.default.createElement(\n Options,\n { visible: !!props.user.id },\n _react2.default.createElement('div', { className: 'toolbar-vertical-spacer hidden-md hidden-lg' }),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(Spacer, props),\n _react2.default.createElement(Moderation, props),\n _react2.default.createElement(Subscription, props),\n _react2.default.createElement(Reply, {\n thread: props.thread,\n onClick: props.openReplyForm\n })\n )\n )\n );\n};\n\nexports.Options = Options;\nexports.Moderation = Moderation;\nexports.Subscription = Subscription;\nexports.Reply = Reply;\nexports.Spacer = Spacer;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _paginator = require('./paginator');\n\nvar _posts = require('./moderation/posts');\n\nvar _posts2 = _interopRequireDefault(_posts);\n\nvar _replyButton = require('./reply-button');\n\nvar _replyButton2 = _interopRequireDefault(_replyButton);\n\nvar _subscription = require('./subscription');\n\nvar _subscription2 = _interopRequireDefault(_subscription);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction Options(props) {\n if (!props.visible) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-md-5' },\n props.children\n );\n}\n\nfunction Moderation(props) {\n if (!props.user.id) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-sm-4 hidden-xs' },\n _react2.default.createElement(_posts2.default, props)\n );\n}\n\nfunction Subscription(props) {\n var xsClass = \"col-xs-6\";\n if (!props.thread.acl.can_reply) {\n xsClass = 'col-xs-12';\n }\n\n return _react2.default.createElement(\n 'div',\n { className: xsClass + \" col-sm-4\" },\n _react2.default.createElement(_subscription2.default, _extends({\n btnClassName: 'btn-block',\n className: 'dropup'\n }, props))\n );\n}\n\nfunction Reply(props) {\n if (!props.thread.acl.can_reply) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-6 col-sm-4' },\n _react2.default.createElement(_replyButton2.default, {\n className: 'btn btn-primary btn-block btn-outline',\n onClick: props.onClick\n })\n );\n}\n\nfunction Spacer(props) {\n if (props.thread.acl.can_reply) return null;\n\n return _react2.default.createElement('div', { className: 'hidden-xs hidden-sm col-sm-4' });\n}\n\n},{\"./moderation/posts\":212,\"./paginator\":220,\"./reply-button\":221,\"./subscription\":224,\"react\":\"react\"}],226:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.StartPollCompact = exports.StartPoll = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _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; }; /* jshint ignore:start */\n\n\nexports.default = function (props) {\n var hiddenSpecialOption = !props.thread.acl.can_start_poll || props.thread.poll;\n\n return _react2.default.createElement(\n 'div',\n { className: 'row row-toolbar row-toolbar-bottom-margin' },\n _react2.default.createElement(GotoMenu, props),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-9 col-md-5 col-md-offset-2' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(Spacer, { visible: !props.user.id }),\n _react2.default.createElement(Spacer, { visible: hiddenSpecialOption }),\n _react2.default.createElement(SubscriptionMenu, props),\n _react2.default.createElement(StartPoll, props),\n _react2.default.createElement(Reply, props)\n )\n )\n );\n};\n\nexports.GotoMenu = GotoMenu;\nexports.GotoNew = GotoNew;\nexports.GotoUnapproved = GotoUnapproved;\nexports.GotoLast = GotoLast;\nexports.CompactOptions = CompactOptions;\nexports.GotoNewCompact = GotoNewCompact;\nexports.GotoUnapprovedCompact = GotoUnapprovedCompact;\nexports.GotoLastCompact = GotoLastCompact;\nexports.Reply = Reply;\nexports.SubscriptionMenu = SubscriptionMenu;\nexports.Spacer = Spacer;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _replyButton = require('./reply-button');\n\nvar _replyButton2 = _interopRequireDefault(_replyButton);\n\nvar _subscription = require('./subscription');\n\nvar _subscription2 = _interopRequireDefault(_subscription);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nfunction GotoMenu(props) {\n var user = props.user;\n\n\n var className = 'col-xs-3 col-sm-3 col-md-5';\n if (user.is_anonymous) {\n className = 'col-xs-12 col-sm-3 col-md-5';\n }\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'row hidden-xs hidden-sm' },\n _react2.default.createElement(GotoLast, { thread: props.thread }),\n _react2.default.createElement(GotoNew, { thread: props.thread }),\n _react2.default.createElement(GotoUnapproved, { thread: props.thread })\n ),\n _react2.default.createElement(CompactOptions, props)\n );\n}\n\nfunction GotoNew(props) {\n if (!props.thread.is_new) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-sm-4' },\n _react2.default.createElement(\n 'a',\n {\n href: props.thread.url.new_post,\n className: 'btn btn-default btn-block btn-outline',\n title: gettext('Go to first new post')\n },\n gettext(\"New\")\n )\n );\n}\n\nfunction GotoUnapproved(props) {\n if (!props.thread.has_unapproved_posts || !props.thread.acl.can_approve) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-sm-4' },\n _react2.default.createElement(\n 'a',\n {\n href: props.thread.url.unapproved_post,\n className: 'btn btn-default btn-block btn-outline',\n title: gettext('Go to first unapproved post')\n },\n gettext(\"Unapproved\")\n )\n );\n}\n\nfunction GotoLast(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'col-sm-4' },\n _react2.default.createElement(\n 'a',\n {\n href: props.thread.url.last_post,\n className: 'btn btn-default btn-block btn-outline',\n title: gettext('Go to last post')\n },\n gettext(\"Last\")\n )\n );\n}\n\nfunction CompactOptions(props) {\n var user = props.user;\n\n if (user.is_anonymous) {\n return _react2.default.createElement(\n 'div',\n { className: 'visible-xs-block visible-sm-block' },\n _react2.default.createElement(\n 'a',\n {\n href: props.thread.url.last_post,\n className: 'btn btn-default btn-block btn-outline'\n },\n gettext(\"Last post\")\n )\n );\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'dropdown visible-xs-block visible-sm-block' },\n _react2.default.createElement(\n 'button',\n {\n 'aria-expanded': 'true',\n 'aria-haspopup': 'true',\n className: 'btn btn-default dropdown-toggle btn-block btn-outline',\n 'data-toggle': 'dropdown',\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'expand_more'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'btn-text hidden-xs' },\n gettext(\"Options\")\n )\n ),\n _react2.default.createElement(\n 'ul',\n { className: 'dropdown-menu' },\n _react2.default.createElement(StartPollCompact, props),\n _react2.default.createElement(GotoNewCompact, props),\n _react2.default.createElement(GotoUnapprovedCompact, props),\n _react2.default.createElement(GotoLastCompact, props)\n )\n );\n}\n\nfunction GotoNewCompact(props) {\n if (!props.thread.is_new) return null;\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n {\n href: props.thread.url.new_post,\n className: 'btn btn-link'\n },\n gettext(\"Go to first new post\")\n )\n );\n}\n\nfunction GotoUnapprovedCompact(props) {\n if (!props.thread.has_unapproved_posts || !props.thread.acl.can_approve) {\n return null;\n }\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n {\n href: props.thread.url.unapproved_post,\n className: 'btn btn-link'\n },\n gettext(\"Go to first unapproved post\")\n )\n );\n}\n\nfunction GotoLastCompact(props) {\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n {\n href: props.thread.url.last_post,\n className: 'btn btn-link'\n },\n gettext(\"Go to last post\")\n )\n );\n}\n\nfunction Reply(props) {\n if (!props.thread.acl.can_reply) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-sm-4 hidden-xs' },\n _react2.default.createElement(_replyButton2.default, {\n className: 'btn btn-primary btn-block btn-outline',\n onClick: props.openReplyForm\n })\n );\n}\n\nfunction SubscriptionMenu(props) {\n if (!props.user.id) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 col-sm-4' },\n _react2.default.createElement(_subscription2.default, _extends({\n className: 'dropdown',\n dropdownClassName: 'dropdown-menu dropdown-menu-right stick-to-bottom'\n }, props))\n );\n}\n\nvar StartPoll = exports.StartPoll = function (_React$Component) {\n _inherits(StartPoll, _React$Component);\n\n function StartPoll() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, StartPoll);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = StartPoll.__proto__ || Object.getPrototypeOf(StartPoll)).call.apply(_ref, [this].concat(args))), _this), _this.onClick = function () {\n _posting2.default.open({\n mode: 'POLL',\n submit: _this.props.thread.api.poll,\n\n thread: _this.props.thread,\n poll: null\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(StartPoll, [{\n key: 'render',\n value: function render() {\n if (!this.props.thread.acl.can_start_poll || this.props.thread.poll) {\n return null;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-sm-4 hidden-xs' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block btn-outline',\n onClick: this.onClick,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'poll'\n ),\n gettext(\"Add poll\")\n )\n );\n }\n }]);\n\n return StartPoll;\n}(_react2.default.Component);\n\nvar StartPollCompact = exports.StartPollCompact = function (_StartPoll) {\n _inherits(StartPollCompact, _StartPoll);\n\n function StartPollCompact() {\n _classCallCheck(this, StartPollCompact);\n\n return _possibleConstructorReturn(this, (StartPollCompact.__proto__ || Object.getPrototypeOf(StartPollCompact)).apply(this, arguments));\n }\n\n _createClass(StartPollCompact, [{\n key: 'render',\n value: function render() {\n if (!this.props.thread.acl.can_start_poll || this.props.thread.poll) {\n return null;\n }\n\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.onClick,\n type: 'button'\n },\n gettext(\"Add poll\")\n )\n );\n }\n }]);\n\n return StartPollCompact;\n}(StartPoll);\n\nfunction Spacer(props) {\n if (!props.visible) return null;\n\n return _react2.default.createElement('div', { className: 'col-sm-4 hidden-xs' });\n}\n\n},{\"../../services/posting\":362,\"./reply-button\":221,\"./subscription\":224,\"react\":\"react\"}],227:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (!props.isLoaded) {\n return _react2.default.createElement(_preview2.default, null);\n }\n\n if (props.threads.length === 0) {\n return _react2.default.createElement(\n _empty2.default,\n {\n diffSize: props.diffSize,\n applyDiff: props.applyDiff\n },\n props.children\n );\n }\n\n return _react2.default.createElement(_ready2.default, {\n activeCategory: props.category,\n categories: props.categories,\n list: props.list,\n threads: props.threads,\n\n diffSize: props.diffSize,\n applyDiff: props.applyDiff,\n\n showOptions: props.showOptions,\n selection: props.selection,\n\n busyThreads: props.busyThreads\n });\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _empty = require('./list/empty');\n\nvar _empty2 = _interopRequireDefault(_empty);\n\nvar _ready = require('./list/ready');\n\nvar _ready2 = _interopRequireDefault(_ready);\n\nvar _preview = require('./list/preview');\n\nvar _preview2 = _interopRequireDefault(_preview);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./list/empty\":229,\"./list/preview\":230,\"./list/ready\":231,\"react\":\"react\"}],228:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n var diffSize = props.diffSize,\n applyDiff = props.applyDiff;\n\n\n if (diffSize === 0) return null;\n\n return _react2.default.createElement(\n \"li\",\n { className: \"list-group-item threads-diff-message\" },\n _react2.default.createElement(\n \"button\",\n {\n type: \"button\",\n className: \"btn btn-block btn-default\",\n onClick: applyDiff\n },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n \"cached\"\n ),\n _react2.default.createElement(\n \"span\",\n { className: \"diff-message\" },\n getMessage(diffSize)\n )\n )\n );\n};\n\nexports.getMessage = getMessage;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction getMessage(diffSize) {\n var message = ngettext(\"There is %(threads)s new or updated thread. Click this message to show it.\", \"There are %(threads)s new or updated threads. Click this message to show them.\", diffSize);\n\n return interpolate(message, {\n threads: diffSize\n }, true);\n}\n\n},{\"react\":\"react\"}],229:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _diffMessage = require('./diff-message');\n\nvar _diffMessage2 = _interopRequireDefault(_diffMessage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getDiffMessage',\n value: function getDiffMessage() {\n if (this.props.diffSize === 0) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(_diffMessage2.default, {\n applyDiff: this.props.applyDiff,\n diffSize: this.props.diffSize\n });\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'threads-list ui-ready' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-group' },\n this.getDiffMessage(),\n this.props.children\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./diff-message\":228,\"react\":\"react\"}],230:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _preview = require('../thread/preview');\n\nvar _preview2 = _interopRequireDefault(_preview);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'threads-list ui-preview' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-group' },\n _react2.default.createElement(_preview2.default, null)\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../thread/preview\":238,\"react\":\"react\"}],231:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n { className: 'threads-list ui-ready' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-group' },\n _react2.default.createElement(_diffMessage2.default, {\n diffSize: props.diffSize,\n applyDiff: props.applyDiff\n }),\n props.threads.map(function (thread) {\n return _react2.default.createElement(_ready2.default, {\n activeCategory: props.activeCategory,\n categories: props.categories,\n list: props.list,\n thread: thread,\n\n showOptions: props.showOptions,\n isSelected: props.selection.indexOf(thread.id) >= 0,\n\n isBusy: props.busyThreads.indexOf(thread.id) >= 0,\n key: thread.id\n });\n })\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _diffMessage = require('./diff-message');\n\nvar _diffMessage2 = _interopRequireDefault(_diffMessage);\n\nvar _ready = require('../thread/ready');\n\nvar _ready2 = _interopRequireDefault(_ready);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../thread/ready\":239,\"./diff-message\":228,\"react\":\"react\"}],232:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category,\n isBusy = _ref.isBusy,\n showOptions = _ref.showOptions,\n isSelected = _ref.isSelected,\n thread = _ref.thread;\n\n var className = 'col-xs-12 col-sm-12';\n if (showOptions) {\n if (thread.moderation.length) {\n className = 'col-xs-6 col-sm-12';\n } else {\n className = 'col-xs-9 col-sm-12';\n }\n }\n\n var statusFlags = 0;\n if (thread.is_hidden) statusFlags += 1;\n if (thread.is_closed) statusFlags += 1;\n if (thread.has_poll) statusFlags += 1;\n\n var allFlagsVisible = showOptions && statusFlags === 3;\n\n var textClassName = 'detail-text hidden-xs';\n if (allFlagsVisible) {\n textClassName += ' hidden-sm';\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'row thread-details-bottom' },\n _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(_category2.default, {\n className: 'item-title thread-detail-category hidden-xs',\n category: category\n }),\n _react2.default.createElement(HiddenLabel, {\n textClassName: textClassName,\n display: thread.is_hidden\n }),\n _react2.default.createElement(ClosedLabel, {\n textClassName: textClassName,\n display: thread.is_closed\n }),\n _react2.default.createElement(PollLabel, {\n textClassName: textClassName,\n display: thread.has_poll\n }),\n _react2.default.createElement(RepliesLabel, {\n forceFullText: !showOptions || statusFlags < 2,\n replies: thread.replies\n }),\n _react2.default.createElement(LastReplyLabel, {\n datetime: thread.last_post_on,\n url: thread.url.last_post\n }),\n _react2.default.createElement(LastPoster, {\n posterName: thread.last_poster_name,\n url: thread.url.last_poster\n })\n ),\n _react2.default.createElement(_options.OptionsXs, {\n disabled: isBusy,\n display: showOptions,\n isSelected: isSelected,\n thread: thread\n })\n );;\n};\n\nexports.HiddenLabel = HiddenLabel;\nexports.ClosedLabel = ClosedLabel;\nexports.PollLabel = PollLabel;\nexports.RepliesLabel = RepliesLabel;\nexports.LastReplyLabel = LastReplyLabel;\nexports.LastPoster = LastPoster;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _category = require('./category');\n\nvar _category2 = _interopRequireDefault(_category);\n\nvar _options = require('../options');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction HiddenLabel(_ref2) {\n var display = _ref2.display,\n textClassName = _ref2.textClassName;\n\n if (!display) return null;\n\n return _react2.default.createElement(\n 'span',\n { className: 'thread-detail-hidden' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility_off'\n ),\n _react2.default.createElement(\n 'span',\n { className: textClassName },\n gettext(\"Hidden\")\n )\n );\n}\n\nfunction ClosedLabel(_ref3) {\n var display = _ref3.display,\n textClassName = _ref3.textClassName;\n\n if (!display) return null;\n\n return _react2.default.createElement(\n 'span',\n { className: 'thread-detail-closed' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_outline'\n ),\n _react2.default.createElement(\n 'span',\n { className: textClassName },\n gettext(\"Closed\")\n )\n );\n}\n\nfunction PollLabel(_ref4) {\n var display = _ref4.display,\n textClassName = _ref4.textClassName;\n\n if (!display) return null;\n\n return _react2.default.createElement(\n 'span',\n { className: 'thread-detail-poll' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'assessment'\n ),\n _react2.default.createElement(\n 'span',\n { className: textClassName },\n gettext(\"Poll\")\n )\n );\n}\n\nfunction RepliesLabel(_ref5) {\n var replies = _ref5.replies,\n forceFullText = _ref5.forceFullText;\n\n var text = ngettext(\"%(replies)s reply\", \"%(replies)s replies\", replies);\n\n var compactClassName = '';\n var fullClassName = '';\n\n if (forceFullText) {\n compactClassName = 'detail-text hide';\n fullClassName = 'detail-text';\n } else {\n compactClassName = 'detail-text visible-xs-inline-block';\n fullClassName = 'detail-text hidden-xs';\n }\n\n return _react2.default.createElement(\n 'span',\n { className: 'thread-detail-replies' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'forum'\n ),\n _react2.default.createElement(\n 'span',\n { className: compactClassName },\n replies\n ),\n _react2.default.createElement(\n 'span',\n { className: fullClassName },\n interpolate(text, { replies: replies }, true)\n )\n );\n}\n\nfunction LastReplyLabel(_ref6) {\n var datetime = _ref6.datetime,\n url = _ref6.url;\n\n return _react2.default.createElement(\n 'a',\n {\n className: 'visible-sm-inline-block thread-detail-last-reply',\n href: url,\n title: datetime.format('LLL')\n },\n datetime.fromNow(true)\n );\n}\n\nfunction LastPoster(props) {\n var posterName = props.posterName,\n url = props.url;\n\n var className = 'visible-sm-inline-block item-title thread-last-poster';\n\n if (url) {\n return _react2.default.createElement(\n 'a',\n { className: className, href: url },\n posterName\n );\n }\n\n return _react2.default.createElement(\n 'span',\n { className: className },\n posterName\n );;\n}\n\n},{\"../options\":237,\"./category\":233,\"react\":\"react\"}],233:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category,\n className = _ref.className;\n\n if (!category) return null;\n\n if (category.css_class) {\n className += ' thread-detail-category-' + category.css_class;\n }\n\n return _react2.default.createElement(\n 'a',\n {\n className: className,\n href: category.url.index\n },\n category.name\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],234:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.TopDetails = exports.BottomDetails = undefined;\n\nvar _bottom = require('./bottom');\n\nvar _bottom2 = _interopRequireDefault(_bottom);\n\nvar _top = require('./top');\n\nvar _top2 = _interopRequireDefault(_top);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nexports.BottomDetails = _bottom2.default;\nexports.TopDetails = _top2.default;\n\n},{\"./bottom\":232,\"./top\":235}],235:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var category = _ref.category,\n thread = _ref.thread;\n\n return _react2.default.createElement(\n 'div',\n { className: 'thread-details-top' },\n _react2.default.createElement(NewLabel, {\n isRead: thread.is_read,\n url: thread.url.new_post\n }),\n _react2.default.createElement(PinnedLabel, { weight: thread.weight }),\n _react2.default.createElement(UnapprovedLabel, {\n thread: thread.is_unapproved,\n posts: thread.has_unapproved_posts\n }),\n _react2.default.createElement(_category2.default, {\n className: 'item-title thread-detail-category visible-xs-inline-block',\n category: category\n }),\n _react2.default.createElement(LastReplyLabel, {\n datetime: thread.last_post_on,\n url: thread.url.last_post\n }),\n _react2.default.createElement(LastPoster, {\n posterName: thread.last_poster_name,\n url: thread.url.last_poster\n })\n );\n};\n\nexports.NewLabel = NewLabel;\nexports.PinnedLabel = PinnedLabel;\nexports.UnapprovedLabel = UnapprovedLabel;\nexports.LastReplyLabel = LastReplyLabel;\nexports.LastPoster = LastPoster;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _category = require('./category');\n\nvar _category2 = _interopRequireDefault(_category);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction NewLabel(_ref2) {\n var isRead = _ref2.isRead,\n url = _ref2.url;\n\n if (isRead) return null;\n\n return _react2.default.createElement(\n 'a',\n {\n className: 'thread-detail-new',\n href: url\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'comment'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'detail-text' },\n gettext(\"New posts\")\n )\n );\n} /* jshint ignore:start */\nfunction PinnedLabel(_ref3) {\n var weight = _ref3.weight;\n\n if (weight === 0) return null;\n\n var className = 'thread-detail-pinned-globally';\n var icon = 'bookmark';\n var text = gettext(\"Pinned globally\");\n\n if (weight === 1) {\n className = 'thread-detail-pinned-locally';\n icon = 'bookmark_border';\n text = gettext(\"Pinned locally\");\n }\n\n return _react2.default.createElement(\n 'span',\n { className: className },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n icon\n ),\n _react2.default.createElement(\n 'span',\n { className: 'detail-text' },\n text\n )\n );\n}\n\nfunction UnapprovedLabel(_ref4) {\n var posts = _ref4.posts,\n thread = _ref4.thread;\n\n if (!posts && !thread) return null;\n\n var className = 'thread-detail-unapproved-posts';\n var icon = 'remove_circle_outline';\n var text = gettext(\"Unapproved posts\");\n\n if (thread) {\n className = 'thread-detail-unapproved';\n icon = 'remove_circle';\n text = gettext(\"Unapproved\");\n }\n\n return _react2.default.createElement(\n 'span',\n { className: className },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n icon\n ),\n _react2.default.createElement(\n 'span',\n { className: 'detail-text' },\n text\n )\n );\n}\n\nfunction LastReplyLabel(_ref5) {\n var datetime = _ref5.datetime,\n url = _ref5.url;\n\n return _react2.default.createElement(\n 'a',\n {\n className: 'visible-xs-inline-block thread-detail-last-reply',\n href: url,\n title: datetime.format('LLL')\n },\n datetime.fromNow(true)\n );\n}\n\nfunction LastPoster(props) {\n var posterName = props.posterName,\n url = props.url;\n\n\n if (url) {\n return _react2.default.createElement(\n 'a',\n {\n className: 'visible-xs-inline-block item-title thread-last-poster',\n href: url\n },\n posterName\n );\n }\n\n return _react2.default.createElement(\n 'span',\n { className: 'visible-xs-inline-block item-title thread-last-poster' },\n posterName\n );\n}\n\n},{\"./category\":233,\"react\":\"react\"}],236:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var thread = _ref.thread;\n\n return _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left' },\n _react2.default.createElement(\n _userUrl2.default,\n {\n className: 'thread-last-poster-avatar',\n title: thread.last_poster_name,\n url: thread.url.last_poster\n },\n _react2.default.createElement(_avatar2.default, {\n className: 'media-object',\n size: 40,\n user: thread.last_poster\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n _userUrl2.default,\n {\n className: 'item-title thread-last-poster',\n url: thread.url.last_poster\n },\n thread.last_poster_name\n ),\n _react2.default.createElement(Timestamp, {\n datetime: thread.last_post_on,\n url: thread.url.last_post\n })\n )\n );\n};\n\nexports.Timestamp = Timestamp;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _userUrl = require('./user-url');\n\nvar _userUrl2 = _interopRequireDefault(_userUrl);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction Timestamp(_ref2) {\n var datetime = _ref2.datetime,\n url = _ref2.url;\n\n return _react2.default.createElement(\n 'a',\n {\n className: 'thread-last-reply',\n href: url,\n title: datetime.format('LLL')\n },\n datetime.fromNow(true)\n );\n}\n\n},{\"../../avatar\":3,\"./user-url\":244,\"react\":\"react\"}],237:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Checkbox = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.Options = Options;\nexports.OptionsXs = OptionsXs;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _compact = require('./subscription/compact');\n\nvar _compact2 = _interopRequireDefault(_compact);\n\nvar _full = require('./subscription/full');\n\nvar _full2 = _interopRequireDefault(_full);\n\nvar _selection = require('../../../reducers/selection');\n\nvar select = _interopRequireWildcard(_selection);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nfunction Options(_ref) {\n var display = _ref.display,\n disabled = _ref.disabled,\n isSelected = _ref.isSelected,\n thread = _ref.thread;\n\n if (!display) return null;\n\n var className = 'col-sm-2 col-md-2 hidden-xs';\n if (thread.moderation.length) {\n className = 'col-sm-3 col-md-2 hidden-xs';\n }\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'row thread-options' },\n _react2.default.createElement(_full2.default, {\n thread: thread,\n disabled: disabled\n }),\n _react2.default.createElement(_compact2.default, {\n thread: thread,\n disabled: disabled\n }),\n _react2.default.createElement(Checkbox, {\n thread: thread,\n disabled: disabled,\n isSelected: isSelected\n })\n )\n );\n}\n\nfunction OptionsXs(_ref2) {\n var display = _ref2.display,\n disabled = _ref2.disabled,\n isSelected = _ref2.isSelected,\n thread = _ref2.thread;\n\n if (!display) return null;\n\n var className = '';\n if (thread.moderation.length) {\n className += 'col-xs-6';\n } else {\n className += 'col-xs-3';\n }\n className += ' visible-xs-block thread-options-xs';\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'row thread-options' },\n _react2.default.createElement(_full2.default, {\n thread: thread,\n disabled: disabled\n }),\n _react2.default.createElement(_compact2.default, {\n thread: thread,\n disabled: disabled\n }),\n _react2.default.createElement(Checkbox, {\n thread: thread,\n disabled: disabled,\n isSelected: isSelected\n })\n )\n );\n}\n\nvar Checkbox = exports.Checkbox = function (_React$Component) {\n _inherits(Checkbox, _React$Component);\n\n function Checkbox() {\n var _ref3;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Checkbox);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref3 = Checkbox.__proto__ || Object.getPrototypeOf(Checkbox)).call.apply(_ref3, [this].concat(args))), _this), _this.toggleSelection = function () {\n _store2.default.dispatch(select.item(_this.props.thread.id));\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Checkbox, [{\n key: 'render',\n value: function render() {\n var _props = this.props,\n disabled = _props.disabled,\n isSelected = _props.isSelected,\n thread = _props.thread;\n\n\n if (!thread.moderation.length) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-6' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-icon btn-block',\n onClick: this.toggleSelection,\n disabled: disabled\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n isSelected ? 'check_box' : 'check_box_outline_blank'\n )\n )\n );\n }\n }]);\n\n return Checkbox;\n}(_react2.default.Component);\n\n},{\"../../../reducers/selection\":345,\"../../../services/store\":364,\"./subscription/compact\":240,\"./subscription/full\":241,\"react\":\"react\"}],238:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _random = require('../../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'list-group-item thread-preview' },\n _react2.default.createElement(\n 'div',\n { className: 'thread-details-top visible-xs-block' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 80) + \"px\" }\n },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 80) + \"px\" }\n },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 80) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'span',\n { className: 'item-title thread-title' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(60, 200) + \"px\" }\n },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text hidden-xs',\n style: { width: random.int(60, 200) + \"px\" }\n },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text hidden-xs',\n style: { width: random.int(60, 200) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'thread-details-bottom' },\n _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 80) + \"px\" }\n },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 80) + \"px\" }\n },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 80) + \"px\" }\n },\n '\\xA0'\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../utils/random\":375,\"react\":\"react\"}],239:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n var activeCategory = props.activeCategory,\n categories = props.categories,\n list = props.list,\n thread = props.thread,\n isBusy = props.isBusy,\n isSelected = props.isSelected,\n showOptions = props.showOptions;\n\n\n var category = null;\n if (activeCategory.id !== thread.category) {\n category = categories[thread.category];\n }\n\n var flavor = category || activeCategory;\n\n var className = 'thread-main col-xs-12';\n if (showOptions) {\n if (thread.moderation.length) {\n className += ' col-sm-9 col-md-7';\n } else {\n className += ' col-sm-10 col-md-7';\n }\n } else {\n className += ' col-sm-12 col-md-9';\n }\n\n return _react2.default.createElement(\n 'li',\n { className: getClassName(thread.is_read, isBusy, isSelected, flavor) },\n _react2.default.createElement(_details.TopDetails, {\n category: category,\n thread: thread\n }),\n _react2.default.createElement(\n 'div',\n { className: 'row thread-row' },\n _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'media' },\n _react2.default.createElement(\n 'div',\n { className: 'media-left hidden-xs' },\n _react2.default.createElement(\n _userUrl2.default,\n {\n className: 'thread-starter-avatar',\n title: thread.starter_name,\n url: thread.url.starter\n },\n _react2.default.createElement(_avatar2.default, {\n size: 40,\n user: thread.starter\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'media-body' },\n _react2.default.createElement(\n 'a',\n { href: thread.url.index, className: 'item-title thread-title' },\n thread.title\n ),\n _react2.default.createElement(_details.BottomDetails, {\n category: category,\n disabled: isBusy,\n isSelected: isSelected,\n showOptions: showOptions,\n thread: thread\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-md-3 hidden-xs hidden-sm thread-last-action' },\n _react2.default.createElement(_lastAction2.default, { thread: thread })\n ),\n _react2.default.createElement(_options.Options, {\n disabled: isBusy,\n display: showOptions,\n isSelected: isSelected,\n thread: thread\n })\n )\n );\n};\n\nexports.getClassName = getClassName;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _details = require('./details');\n\nvar _lastAction = require('./last-action');\n\nvar _lastAction2 = _interopRequireDefault(_lastAction);\n\nvar _options = require('./options');\n\nvar _userUrl = require('./user-url');\n\nvar _userUrl2 = _interopRequireDefault(_userUrl);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getClassName(isRead, isBusy, isSelected, flavor) {\n var styles = ['list-group-item'];\n\n if (flavor && flavor.css_class) {\n styles.push('list-group-category-has-flavor');\n styles.push('list-group-item-category-' + flavor.css_class);\n }\n\n if (isRead) {\n styles.push('thread-read');\n } else {\n styles.push('thread-new');\n }\n\n if (isBusy) {\n styles.push('thread-busy');\n } else if (isSelected) {\n styles.push('thread-selected');\n }\n\n return styles.join(' ');\n} /* jshint ignore:start */\n\n},{\"../../avatar\":3,\"./details\":234,\"./last-action\":236,\"./options\":237,\"./user-url\":244,\"react\":\"react\"}],240:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _full = require('./full');\n\nvar _full2 = _interopRequireDefault(_full);\n\nvar _modal = require('./modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _modal3 = require('../../../../services/modal');\n\nvar _modal4 = _interopRequireDefault(_modal3);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_SubscriptionFull) {\n _inherits(_class, _SubscriptionFull);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.showOptions = function () {\n _modal4.default.show(_react2.default.createElement(_modal2.default, { thread: _this.props.thread }));\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n var moderation = this.props.thread.moderation;\n\n\n var className = '';\n if (moderation.length) {\n className += 'col-xs-6';\n } else {\n className += 'col-xs-12';\n }\n className += ' hidden-md hidden-lg';\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: this.getClassName(),\n disabled: this.props.disabled,\n onClick: this.showOptions\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n this.getIcon()\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_full2.default);\n\nexports.default = _class;\n\n},{\"../../../../services/modal\":358,\"./full\":241,\"./modal\":242,\"react\":\"react\"}],241:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.Label = Label;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _options = require('./options');\n\nvar _options2 = _interopRequireDefault(_options);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getIcon',\n value: function getIcon() {\n if (this.props.thread.subscription === true) {\n return 'star';\n } else if (this.props.thread.subscription === false) {\n return 'star_half';\n }\n\n return 'star_border';\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.props.thread.subscription === true) {\n return \"btn btn-default btn-icon btn-block btn-subscribe btn-subscribe-full dropdown-toggle\";\n } else if (this.props.thread.subscription === false) {\n return \"btn btn-default btn-icon btn-block btn-subscribe btn-subscribe-half dropdown-toggle\";\n }\n\n return \"btn btn-default btn-icon btn-block btn-subscribe dropdown-toggle\";\n }\n }, {\n key: 'render',\n value: function render() {\n var _props$thread = this.props.thread,\n moderation = _props$thread.moderation,\n subscription = _props$thread.subscription;\n\n var fullwidth = !moderation.length;\n\n var className = fullwidth ? 'col-xs-12' : 'col-xs-6';\n className += ' hidden-xs hidden-sm';\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group btn-group-justified' },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group' },\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: this.getClassName(),\n disabled: this.props.disabled,\n 'data-toggle': 'dropdown',\n 'aria-haspopup': 'true',\n 'aria-expanded': 'false'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n this.getIcon()\n ),\n _react2.default.createElement(Label, {\n moderation: moderation,\n subscription: subscription\n })\n ),\n _react2.default.createElement(_options2.default, {\n className: 'dropdown-menu dropdown-menu-right',\n thread: this.props.thread\n })\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\nfunction Label(_ref) {\n var moderation = _ref.moderation,\n subscription = _ref.subscription;\n\n if (moderation.length) return null;\n\n var text = gettext(\"Disabled\");\n if (subscription === true) {\n text = gettext(\"E-mail\");\n } else if (subscription === false) {\n text = gettext(\"Enabled\");\n }\n\n return _react2.default.createElement(\n 'span',\n { className: 'btn-text' },\n text\n );\n}\n\n},{\"./options\":243,\"react\":\"react\"}],242:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _options = require('./options');\n\nvar _options2 = _interopRequireDefault(_options);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-dialog modal-sm',\n role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Change subscription\")\n )\n ),\n _react2.default.createElement(_options2.default, { className: 'modal-menu', thread: this.props.thread })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./options\":243,\"react\":\"react\"}],243:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _threads = require('../../../../reducers/threads');\n\nvar _ajax = require('../../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\n/* jshint ignore:start */\nvar STATE_UPDATES = {\n 'unsubscribe': null,\n 'notify': false,\n 'email': true\n};\n/* jshint ignore:end */\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.setSubscription = function (newState) {\n _modal2.default.hide();\n\n _this.setState({\n isLoading: true\n });\n\n var oldState = _this.props.thread.subscription;\n\n _store2.default.dispatch((0, _threads.patch)(_this.props.thread, {\n subscription: STATE_UPDATES[newState]\n }));\n\n _ajax2.default.patch(_this.props.thread.api.index, [{ op: 'replace', path: 'subscription', value: newState }]).then(function () {\n _this.setState({\n isLoading: false\n });\n }, function (rejection) {\n _this.setState({\n isLoading: false\n });\n _store2.default.dispatch((0, _threads.patch)(_this.props.thread, {\n subscription: STATE_UPDATES[oldState]\n }));\n _snackbar2.default.apiError(rejection);\n });\n };\n\n _this.unsubscribe = function () {\n _this.setSubscription('unsubscribe');\n };\n\n _this.notify = function () {\n _this.setSubscription('notify');\n };\n\n _this.email = function () {\n _this.setSubscription('email');\n };\n\n _this.state = {\n isLoading: false\n };\n return _this;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'ul',\n { className: this.props.className },\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { className: 'btn-link', onClick: this.unsubscribe },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'star_border'\n ),\n gettext(\"Unsubscribe\")\n )\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { className: 'btn-link', onClick: this.notify },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'star_half'\n ),\n gettext(\"Subscribe\")\n )\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n { className: 'btn-link', onClick: this.email },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'star'\n ),\n gettext(\"Subscribe with e-mail\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../../reducers/threads\":348,\"../../../../services/ajax\":352,\"../../../../services/modal\":358,\"../../../../services/snackbar\":363,\"../../../../services/store\":364,\"../../../button\":5,\"react\":\"react\"}],244:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var children = _ref.children,\n className = _ref.className,\n title = _ref.title,\n url = _ref.url;\n\n if (url) {\n return _react2.default.createElement(\n 'a',\n {\n className: className,\n href: url,\n title: title\n },\n children\n );\n }\n\n return _react2.default.createElement(\n 'span',\n {\n className: className,\n title: title\n },\n children\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"react\":\"react\"}],245:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Subcategory = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar Subcategory = exports.Subcategory = function (_React$Component) {\n _inherits(Subcategory, _React$Component);\n\n function Subcategory() {\n _classCallCheck(this, Subcategory);\n\n return _possibleConstructorReturn(this, (Subcategory.__proto__ || Object.getPrototypeOf(Subcategory)).apply(this, arguments));\n }\n\n _createClass(Subcategory, [{\n key: 'getUrl',\n value: function getUrl() {\n if (this.props.listPath) {\n return this.props.category.url.index + this.props.listPath;\n } else {\n return this.props.category.url.index;\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n _reactRouter.Link,\n { to: this.getUrl(), className: 'btn btn-link' },\n this.props.category.name\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return Subcategory;\n}(_react2.default.Component);\n\nvar _class = function (_React$Component2) {\n _inherits(_class, _React$Component2);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n var _this3 = this;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'dropdown category-picker' },\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: 'btn btn-default btn-outline dropdown-toggle btn-block',\n 'data-toggle': 'dropdown',\n 'aria-haspopup': 'true',\n 'aria-expanded': 'false'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'label_outline'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'hidden-xs' },\n gettext(\"Category\")\n )\n ),\n _react2.default.createElement(\n 'ul',\n { className: 'dropdown-menu stick-to-bottom categories-menu' },\n this.props.choices.map(function (id) {\n if (_this3.props.categories[id]) {\n return _react2.default.createElement(Subcategory, {\n category: _this3.props.categories[id],\n listPath: _this3.props.list.path,\n key: id\n });\n } else {\n return null;\n }\n })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\",\"react-router\":\"react-router\"}],246:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.compareLastPostAge = compareLastPostAge;\nexports.compareGlobalWeight = compareGlobalWeight;\nexports.compareWeight = compareWeight;\nfunction compareLastPostAge(a, b) {\n if (a.last_post > b.last_post) {\n return -1;\n } else if (a.last_post < b.last_post) {\n return 1;\n } else {\n return 0;\n }\n}\n\nfunction compareGlobalWeight(a, b) {\n if (a.weight === 2 && a.weight > b.weight) {\n return -1;\n } else if (b.weight === 2 && a.weight < b.weight) {\n return 1;\n } else {\n return compareLastPostAge(a, b);\n }\n}\n\nfunction compareWeight(a, b) {\n if (a.weight > b.weight) {\n return -1;\n } else if (a.weight < b.weight) {\n return 1;\n } else {\n return compareLastPostAge(a, b);\n }\n}\n\n},{}],247:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _pageLead = require('../page-lead');\n\nvar _pageLead2 = _interopRequireDefault(_pageLead);\n\nvar _toolbar = require('./toolbar');\n\nvar _toolbar2 = _interopRequireDefault(_toolbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getCategoryDescription',\n value: function getCategoryDescription() {\n if (this.props.pageLead) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'category-description' },\n _react2.default.createElement(\n 'div',\n { className: 'page-lead' },\n _react2.default.createElement(\n 'p',\n null,\n this.props.pageLead\n )\n )\n );\n /* jshint ignore:end */\n } else if (this.props.route.category.description) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'category-description' },\n _react2.default.createElement(_pageLead2.default, { copy: this.props.route.category.description.html })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getDisableToolbar',\n value: function getDisableToolbar() {\n return !this.props.isLoaded || this.props.isBusy || this.props.busyThreads.length;\n }\n }, {\n key: 'getToolbar',\n value: function getToolbar() {\n var isVisible = this.props.subcategories.length || this.props.user.id;\n\n if (!isVisible) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(_toolbar2.default, {\n subcategories: this.props.subcategories,\n categories: this.props.route.categories,\n categoriesMap: this.props.route.categoriesMap,\n list: this.props.route.list,\n\n threads: this.props.threads,\n moderation: this.props.moderation,\n selection: this.props.selection,\n selectAllThreads: this.props.selectAllThreads,\n selectNoneThreads: this.props.selectNoneThreads,\n\n addThreads: this.props.addThreads,\n freezeThread: this.props.freezeThread,\n deleteThread: this.props.deleteThread,\n updateThread: this.props.updateThread,\n\n api: this.props.api,\n route: this.props.route,\n disabled: this.getDisableToolbar(),\n user: this.props.user\n });\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'container' },\n this.getCategoryDescription(),\n this.getToolbar(),\n this.props.children\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../page-lead\":85,\"./toolbar\":258,\"react\":\"react\"}],248:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ParentCategory = ParentCategory;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _dropdownToggle = require('../dropdown-toggle');\n\nvar _dropdownToggle2 = _interopRequireDefault(_dropdownToggle);\n\nvar _nav = require('./nav');\n\nvar _nav2 = _interopRequireDefault(_nav);\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _posting = require('../../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.startThread = function () {\n _posting2.default.open(_this.props.startThread || {\n mode: 'START',\n\n config: _2.default.get('THREAD_EDITOR_API'),\n submit: _2.default.get('THREADS_API'),\n\n category: _this.props.route.category.id\n });\n };\n\n _this.state = {\n isBusy: false\n };\n return _this;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'hasGoBackButton',\n\n /* jshint ignore:end */\n\n value: function hasGoBackButton() {\n return !!this.props.route.category.parent;\n }\n }, {\n key: 'getGoBackButton',\n value: function getGoBackButton() {\n if (!this.props.route.category.parent) return null;\n\n /* jshint ignore:start */\n var parent = this.props.categories[this.props.route.category.parent];\n\n return _react2.default.createElement(\n 'div',\n { className: 'hidden-xs col-sm-2 col-lg-1' },\n _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-icon btn-aligned btn-go-back btn-block btn-outline',\n to: parent.url.index + this.props.route.list.path\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'keyboard_arrow_left'\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getStartThreadButton',\n value: function getStartThreadButton() {\n if (!this.props.user.id) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n _button2.default,\n {\n className: 'btn-primary btn-block btn-outline',\n onClick: this.startThread,\n disabled: this.props.disabled\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chat'\n ),\n gettext(\"Start thread\")\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n var headerClassName = 'col-xs-12';\n if (this.hasGoBackButton()) {\n headerClassName += ' col-sm-10 col-lg-11 sm-align-row-buttons';\n }\n\n var isAuthenticated = !!this.props.user.id;\n\n return _react2.default.createElement(\n 'div',\n { className: 'page-header-bg' },\n _react2.default.createElement(\n 'div',\n { className: 'page-header' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: isAuthenticated ? \"col-sm-9 col-md-10\" : \"col-xs-12\" },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n this.getGoBackButton(),\n _react2.default.createElement(\n 'div',\n { className: headerClassName },\n _react2.default.createElement(ParentCategory, {\n categories: this.props.categories,\n category: this.props.route.category.parent\n }),\n _react2.default.createElement(\n 'h1',\n null,\n this.props.title\n )\n )\n )\n ),\n isAuthenticated && _react2.default.createElement(\n 'div',\n { className: 'col-sm-3 col-md-2 xs-margin-top' },\n this.getStartThreadButton()\n )\n )\n ),\n _react2.default.createElement(_nav2.default, {\n baseUrl: this.props.route.category.url.index,\n list: this.props.route.list,\n lists: this.props.route.lists\n })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\n/* jshint ignore:start */\n\n\nexports.default = _class;\nfunction ParentCategory(_ref) {\n var categories = _ref.categories,\n category = _ref.category;\n\n if (!category) return null;\n\n var parent = categories[category];\n\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'go-back-sm visible-xs-block',\n to: parent.url.index\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_left'\n ),\n parent.parent ? parent.name : gettext(\"Threads\")\n );\n}\n/* jshint ignore:end */\n\n},{\"../..\":291,\"../../services/ajax\":352,\"../../services/posting\":362,\"../../services/snackbar\":363,\"../../services/store\":364,\"../button\":5,\"../dropdown-toggle\":24,\"./nav\":255,\"react\":\"react\",\"react-router\":\"react-router\"}],249:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n if (this.props.list.type === 'all') {\n if (this.props.emptyMessage) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'list-group-item empty-message' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.props.emptyMessage\n ),\n _react2.default.createElement(\n 'p',\n null,\n gettext(\"Why not start one yourself?\")\n )\n );\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'list-group-item empty-message' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.props.category.special_role ? gettext(\"There are no threads on this forum... yet!\") : gettext(\"There are no threads in this category.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n gettext(\"Why not start one yourself?\")\n )\n );\n /* jshint ignore:end */\n }\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'list-group-item empty-message' },\n gettext(\"No threads matching specified criteria were found.\")\n );\n /* jshint ignore:end */\n }\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],250:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _errorsList = require('./errors-list');\n\nvar _errorsList2 = _interopRequireDefault(_errorsList);\n\nvar _merge = require('./merge');\n\nvar _merge2 = _interopRequireDefault(_merge);\n\nvar _move = require('./move');\n\nvar _move2 = _interopRequireDefault(_move);\n\nvar _selection = require('../../../reducers/selection');\n\nvar select = _interopRequireWildcard(_selection);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _countdown = require('../../../utils/countdown');\n\nvar _countdown2 = _interopRequireDefault(_countdown);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.callApi = function (ops, successMessage) {\n var onSuccess = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n\n // freeze threads\n _this.props.threads.forEach(function (thread) {\n _this.props.freezeThread(thread.id);\n });\n\n // list ids\n var ids = _this.props.threads.map(function (thread) {\n return thread.id;\n });\n\n // always return current acl\n ops.push({ op: 'add', path: 'acl', value: true });\n\n _ajax2.default.patch(_this.props.api, { ids: ids, ops: ops }).then(function (data) {\n // unfreeze\n _this.props.threads.forEach(function (thread) {\n _this.props.freezeThread(thread.id);\n });\n\n // update threads\n data.forEach(function (thread) {\n _this.props.updateThread(thread);\n });\n\n // show success message and call callback\n _snackbar2.default.success(successMessage);\n if (onSuccess) {\n onSuccess();\n }\n }, function (rejection) {\n // unfreeze\n _this.props.threads.forEach(function (thread) {\n _this.props.freezeThread(thread.id);\n });\n\n // escape on non-400 error\n if (rejection.status !== 400) {\n return _snackbar2.default.apiError(rejection);\n }\n\n // build errors list\n var errors = [];\n var threadsMap = {};\n\n _this.props.threads.forEach(function (thread) {\n threadsMap[thread.id] = thread;\n });\n\n rejection.forEach(function (_ref2) {\n var id = _ref2.id,\n detail = _ref2.detail;\n\n if (typeof threadsMap[id] !== 'undefined') {\n errors.push({\n errors: detail,\n thread: threadsMap[id]\n });\n }\n });\n\n _modal2.default.show(_react2.default.createElement(_errorsList2.default, { errors: errors }));\n });\n }, _this.pinGlobally = function () {\n _this.callApi([{\n op: 'replace',\n path: 'weight',\n value: 2\n }], gettext(\"Selected threads were pinned globally.\"));\n }, _this.pinLocally = function () {\n _this.callApi([{\n op: 'replace',\n path: 'weight',\n value: 1\n }], gettext(\"Selected threads were pinned locally.\"));\n }, _this.unpin = function () {\n _this.callApi([{\n op: 'replace',\n path: 'weight',\n value: 0\n }], gettext(\"Selected threads were unpinned.\"));\n }, _this.approve = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-unapproved',\n value: false\n }], gettext(\"Selected threads were approved.\"));\n }, _this.open = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-closed',\n value: false\n }], gettext(\"Selected threads were opened.\"));\n }, _this.close = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-closed',\n value: true\n }], gettext(\"Selected threads were closed.\"));\n }, _this.unhide = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-hidden',\n value: false\n }], gettext(\"Selected threads were unhidden.\"));\n }, _this.hide = function () {\n _this.callApi([{\n op: 'replace',\n path: 'is-hidden',\n value: true\n }], gettext(\"Selected threads were hidden.\"));\n }, _this.move = function () {\n _modal2.default.show(_react2.default.createElement(_move2.default, {\n callApi: _this.callApi,\n categories: _this.props.categories,\n categoriesMap: _this.props.categoriesMap,\n route: _this.props.route,\n user: _this.props.user\n }));\n }, _this.merge = function () {\n var errors = [];\n _this.props.threads.forEach(function (thread) {\n if (!thread.acl.can_merge) {\n errors.append({\n 'id': thread.id,\n 'title': thread.title,\n 'errors': [gettext(\"You don't have permission to merge this thread with others.\")]\n });\n }\n });\n\n if (_this.props.threads.length < 2) {\n _snackbar2.default.info(gettext(\"You have to select at least two threads to merge.\"));\n } else if (errors.length) {\n _modal2.default.show(_react2.default.createElement(_errorsList2.default, { errors: errors }));\n return;\n } else {\n _modal2.default.show(_react2.default.createElement(_merge2.default, _this.props));\n }\n }, _this.delete = function () {\n if (!confirm(gettext(\"Are you sure you want to delete selected threads?\"))) {\n return;\n }\n\n _this.props.threads.map(function (thread) {\n _this.props.freezeThread(thread.id);\n });\n\n var ids = _this.props.threads.map(function (thread) {\n return thread.id;\n });\n\n _ajax2.default.delete(_this.props.api, ids).then(function () {\n _this.props.threads.map(function (thread) {\n _this.props.freezeThread(thread.id);\n _this.props.deleteThread(thread);\n });\n\n _snackbar2.default.success(gettext(\"Selected threads were deleted.\"));\n }, function (rejection) {\n if (rejection.status === 400) {\n var failedThreads = rejection.map(function (thread) {\n return thread.id;\n });\n\n _this.props.threads.map(function (thread) {\n _this.props.freezeThread(thread.id);\n if (failedThreads.indexOf(thread.id) === -1) {\n _this.props.deleteThread(thread);\n }\n });\n\n _modal2.default.show(_react2.default.createElement(_errorsList2.default, { errors: rejection }));\n } else {\n _snackbar2.default.apiError(rejection);\n }\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'getPinGloballyButton',\n\n /* jshint ignore:end */\n\n value: function getPinGloballyButton() {\n if (!this.props.moderation.can_pin_globally) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.pinGlobally,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'bookmark'\n ),\n gettext(\"Pin threads globally\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getPinLocallyButton',\n value: function getPinLocallyButton() {\n if (!this.props.moderation.can_pin) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.pinLocally,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'bookmark_border'\n ),\n gettext(\"Pin threads locally\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getUnpinButton',\n value: function getUnpinButton() {\n if (!this.props.moderation.can_pin) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.unpin,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'panorama_fish_eye'\n ),\n gettext(\"Unpin threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getMoveButton',\n value: function getMoveButton() {\n if (!this.props.moderation.can_move) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.move,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'arrow_forward'\n ),\n gettext(\"Move threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getMergeButton',\n value: function getMergeButton() {\n if (!this.props.moderation.can_merge) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.merge,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'call_merge'\n ),\n gettext(\"Merge threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getApproveButton',\n value: function getApproveButton() {\n if (!this.props.moderation.can_approve) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.approve,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'done'\n ),\n gettext(\"Approve threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getOpenButton',\n value: function getOpenButton() {\n if (!this.props.moderation.can_close) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.open,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_open'\n ),\n gettext(\"Open threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getCloseButton',\n value: function getCloseButton() {\n if (!this.props.moderation.can_close) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.close,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'lock_outline'\n ),\n gettext(\"Close threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getUnhideButton',\n value: function getUnhideButton() {\n if (!this.props.moderation.can_unhide) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.unhide,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility'\n ),\n gettext(\"Unhide threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getHideButton',\n value: function getHideButton() {\n if (!this.props.moderation.can_hide) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n onClick: this.hide,\n type: 'button',\n className: 'btn btn-link'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'visibility_off'\n ),\n gettext(\"Hide threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getDeleteButton',\n value: function getDeleteButton() {\n if (!this.props.moderation.can_delete) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n onClick: this.delete,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'clear'\n ),\n gettext(\"Delete threads\")\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'ul',\n { className: this.props.className },\n this.getPinGloballyButton(),\n this.getPinLocallyButton(),\n this.getUnpinButton(),\n this.getMoveButton(),\n this.getMergeButton(),\n this.getApproveButton(),\n this.getOpenButton(),\n this.getCloseButton(),\n this.getUnhideButton(),\n this.getHideButton(),\n this.getDeleteButton()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../reducers/selection\":345,\"../../../services/ajax\":352,\"../../../services/modal\":358,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../../utils/countdown\":369,\"./errors-list\":251,\"./merge\":252,\"./move\":253,\"react\":\"react\"}],251:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.ThreadErrors = ThreadErrors;\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: \"render\",\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n \"div\",\n { className: \"modal-dialog\", role: \"document\" },\n _react2.default.createElement(\n \"div\",\n { className: \"modal-content\" },\n _react2.default.createElement(\n \"div\",\n { className: \"modal-header\" },\n _react2.default.createElement(\n \"button\",\n {\n \"aria-label\": gettext(\"Close\"),\n className: \"close\",\n \"data-dismiss\": \"modal\",\n type: \"button\"\n },\n _react2.default.createElement(\n \"span\",\n { \"aria-hidden\": \"true\" },\n \"\\xD7\"\n )\n ),\n _react2.default.createElement(\n \"h4\",\n { className: \"modal-title\" },\n gettext(\"Threads moderation\")\n )\n ),\n _react2.default.createElement(\n \"div\",\n { className: \"modal-body\" },\n _react2.default.createElement(\n \"p\",\n { className: \"lead\" },\n gettext(\"One or more threads could not be deleted:\")\n ),\n _react2.default.createElement(\n \"ul\",\n { className: \"list-unstyled list-errored-items\" },\n this.props.errors.map(function (item) {\n return _react2.default.createElement(ThreadErrors, {\n errors: item.errors,\n key: item.thread.id,\n thread: item.thread\n });\n })\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\n/* jshint ignore:start */\n\n\nexports.default = _class;\nfunction ThreadErrors(_ref) {\n var errors = _ref.errors,\n thread = _ref.thread;\n\n return _react2.default.createElement(\n \"li\",\n null,\n _react2.default.createElement(\n \"h5\",\n null,\n thread.title\n ),\n errors.map(function (message, i) {\n return _react2.default.createElement(\n \"p\",\n null,\n message\n );\n })\n );\n}\n/* jshint ignore:end */\n\n},{\"react\":\"react\"}],252:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _categorySelect = require('../../category-select');\n\nvar _categorySelect2 = _interopRequireDefault(_categorySelect);\n\nvar _select = require('../../select');\n\nvar _select2 = _interopRequireDefault(_select);\n\nvar _index = require('../../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _threads = require('../../../reducers/threads');\n\nvar _selection = require('../../../reducers/selection');\n\nvar select = _interopRequireWildcard(_selection);\n\nvar _errorsList = require('./errors-list');\n\nvar _errorsList2 = _interopRequireDefault(_errorsList);\n\nvar _mergePolls = require('../../merge-polls');\n\nvar _mergePolls2 = _interopRequireDefault(_mergePolls);\n\nvar _ajax = require('../../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _modal = require('../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _snackbar = require('../../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _validators = require('../../../utils/validators');\n\nvar validators = _interopRequireWildcard(_validators);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.getFormdata = function () {\n return {\n threads: _this.props.threads.map(function (thread) {\n return thread.id;\n }),\n title: _this.state.title,\n category: _this.state.category,\n weight: _this.state.weight,\n is_hidden: _this.state.is_hidden,\n is_closed: _this.state.is_closed\n };\n };\n\n _this.handleSuccess = function (apiResponse) {\n // unfreeze and remove merged threads\n _this.props.threads.forEach(function (thread) {\n _this.props.freezeThread(thread.id);\n _this.props.deleteThread(thread);\n });\n\n // deselect all threads\n _store2.default.dispatch(select.none());\n\n // append merged thread, filter threads\n _this.props.addThreads([apiResponse]);\n _store2.default.dispatch((0, _threads.filterThreads)(_this.props.route.category, _this.props.categoriesMap));\n\n // hide modal\n _modal2.default.hide();\n };\n\n _this.handleError = function (rejection) {\n if (rejection.status === 400) {\n if (rejection.polls) {\n _modal2.default.show(_react2.default.createElement(_mergePolls2.default, {\n api: _index2.default.get('MERGE_THREADS_API'),\n data: _this.getFormdata(),\n polls: rejection.polls,\n onError: _this.handleError,\n onSuccess: _this.handleSuccess\n }));\n } else {\n _this.setState({\n 'errors': Object.assign({}, _this.state.errors, rejection)\n });\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n }\n } else if (rejection.status === 403 && Array.isArray(rejection)) {\n _modal2.default.show(_react2.default.createElement(_errorsList2.default, { errors: rejection }));\n } else {\n _snackbar2.default.apiError(rejection);\n }\n };\n\n _this.onCategoryChange = function (ev) {\n var categoryId = ev.target.value;\n var newState = {\n category: categoryId\n };\n\n if (_this.acl[categoryId].can_pin_threads < newState.weight) {\n newState.weight = 0;\n }\n\n if (!_this.acl[categoryId].can_hide_threads) {\n newState.is_hidden = 0;\n }\n\n if (!_this.acl[categoryId].can_close_threads) {\n newState.is_closed = false;\n }\n\n _this.setState(newState);\n };\n\n _this.state = {\n isLoading: false,\n\n title: '',\n category: null,\n weight: 0,\n is_hidden: 0,\n is_closed: false,\n\n validators: {\n title: [validators.required()]\n },\n\n errors: {}\n };\n\n _this.acl = {};\n for (var i in props.user.acl.categories) {\n if (!props.user.acl.categories.hasOwnProperty(i)) {\n continue;\n }\n\n var acl = props.user.acl.categories[i];\n _this.acl[acl.id] = acl;\n }\n\n _this.categoryChoices = [];\n props.categories.forEach(function (category) {\n if (category.level > 0) {\n var _acl = _this.acl[category.id];\n var disabled = !_acl.can_start_threads || category.is_closed && !_acl.can_close_threads;\n\n _this.categoryChoices.push({\n value: category.id,\n disabled: disabled,\n level: category.level - 1,\n label: category.name\n });\n\n if (!disabled && !_this.state.category) {\n _this.state.category = category.id;\n }\n }\n });\n\n _this.isHiddenChoices = [{\n 'value': 0,\n 'icon': 'visibility',\n 'label': gettext(\"No\")\n }, {\n 'value': 1,\n 'icon': 'visibility_off',\n 'label': gettext(\"Yes\")\n }];\n\n _this.isClosedChoices = [{\n 'value': false,\n 'icon': 'lock_outline',\n 'label': gettext(\"No\")\n }, {\n 'value': true,\n 'icon': 'lock',\n 'label': gettext(\"Yes\")\n }];\n return _this;\n }\n\n _createClass(_class, [{\n key: 'clean',\n value: function clean() {\n if (this.isValid()) {\n return true;\n } else {\n _snackbar2.default.error(gettext(\"Form contains errors.\"));\n this.setState({\n errors: this.validate()\n });\n return false;\n }\n }\n }, {\n key: 'send',\n value: function send() {\n return _ajax2.default.post(_index2.default.get('MERGE_THREADS_API'), this.getFormdata());\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'getWeightChoices',\n\n /* jshint ignore:end */\n\n value: function getWeightChoices() {\n var choices = [{\n 'value': 0,\n 'icon': 'remove',\n 'label': gettext(\"Not pinned\")\n }, {\n 'value': 1,\n 'icon': 'bookmark_border',\n 'label': gettext(\"Pinned locally\")\n }];\n\n if (this.acl[this.state.category].can_pin_threads == 2) {\n choices.push({\n 'value': 2,\n 'icon': 'bookmark',\n 'label': gettext(\"Pinned globally\")\n });\n }\n\n return choices;\n }\n }, {\n key: 'renderWeightField',\n value: function renderWeightField() {\n if (this.acl[this.state.category].can_pin_threads) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Thread weight\"),\n 'for': 'id_weight' },\n _react2.default.createElement(_select2.default, { id: 'id_weight',\n onChange: this.bindInput('weight'),\n value: this.state.weight,\n choices: this.getWeightChoices() })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'renderHiddenField',\n value: function renderHiddenField() {\n if (this.acl[this.state.category].can_hide_threads) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Hide thread\"),\n 'for': 'id_is_hidden' },\n _react2.default.createElement(_select2.default, { id: 'id_is_closed',\n onChange: this.bindInput('is_hidden'),\n value: this.state.is_hidden,\n choices: this.isHiddenChoices })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'renderClosedField',\n value: function renderClosedField() {\n if (this.acl[this.state.category].can_close_threads) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Close thread\"),\n 'for': 'id_is_closed' },\n _react2.default.createElement(_select2.default, { id: 'id_is_closed',\n onChange: this.bindInput('is_closed'),\n value: this.state.is_closed,\n choices: this.isClosedChoices })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'renderForm',\n value: function renderForm() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Thread title\"),\n 'for': 'id_title',\n validation: this.state.errors.title },\n _react2.default.createElement('input', { id: 'id_title',\n className: 'form-control',\n type: 'text',\n onChange: this.bindInput('title'),\n value: this.state.title })\n ),\n _react2.default.createElement('div', { className: 'clearfix' }),\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"Category\"),\n 'for': 'id_category',\n validation: this.state.errors.category },\n _react2.default.createElement(_categorySelect2.default, { id: 'id_category',\n onChange: this.onCategoryChange,\n value: this.state.category,\n choices: this.categoryChoices })\n ),\n _react2.default.createElement('div', { className: 'clearfix' }),\n this.renderWeightField(),\n this.renderHiddenField(),\n this.renderClosedField()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n _button2.default,\n { className: 'btn-primary', loading: this.state.isLoading },\n gettext(\"Merge threads\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'renderCantMergeMessage',\n value: function renderCantMergeMessage() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"You can't move threads because there are no categories you are allowed to move them to.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n gettext(\"You need permission to start threads in category to be able to merge threads to it.\")\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n gettext(\"Ok\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (!this.state.category) {\n return 'modal-dialog modal-message';\n } else {\n return 'modal-dialog';\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName(), role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Merge threads\")\n )\n ),\n this.state.category ? this.renderForm() : this.renderCantMergeMessage()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../index\":291,\"../../../reducers/selection\":345,\"../../../reducers/threads\":348,\"../../../services/ajax\":352,\"../../../services/modal\":358,\"../../../services/snackbar\":363,\"../../../services/store\":364,\"../../../utils/validators\":380,\"../../button\":5,\"../../category-select\":18,\"../../form\":52,\"../../form-group\":51,\"../../merge-polls\":55,\"../../select\":203,\"./errors-list\":251,\"react\":\"react\"}],253:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _form = require('../../form');\n\nvar _form2 = _interopRequireDefault(_form);\n\nvar _formGroup = require('../../form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nvar _categorySelect = require('../../category-select');\n\nvar _categorySelect2 = _interopRequireDefault(_categorySelect);\n\nvar _selection = require('../../../reducers/selection');\n\nvar select = _interopRequireWildcard(_selection);\n\nvar _threads = require('../../../reducers/threads');\n\nvar _modal = require('../../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_Form) {\n _inherits(_class, _Form);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.handleSubmit = function (event) {\n // we don't reload page on submissions\n event.preventDefault();\n\n _modal2.default.hide();\n\n var onSuccess = function onSuccess() {\n _store2.default.dispatch((0, _threads.filterThreads)(_this.props.route.category, _this.props.categoriesMap));\n\n // deselect threads moved outside of visible scope\n var storeState = _store2.default.getState();\n var leftThreads = storeState.threads.map(function (thread) {\n return thread.id;\n });\n _store2.default.dispatch(select.all(storeState.selection.filter(function (thread) {\n return leftThreads.indexOf(thread) !== -1;\n })));\n };\n\n _this.props.callApi([{ op: 'replace', path: 'category', value: _this.state.category }, { op: 'replace', path: 'flatten-categories', value: null }, { op: 'add', path: 'acl', value: true }], gettext(\"Selected threads were moved.\"), onSuccess);\n };\n\n _this.state = {\n category: null\n };\n\n var acls = {};\n for (var i in props.user.acl.categories) {\n if (!props.user.acl.categories.hasOwnProperty(i)) {\n continue;\n }\n\n var acl = props.user.acl.categories[i];\n acls[acl.id] = acl;\n }\n\n _this.categoryChoices = [];\n props.categories.forEach(function (category) {\n if (category.level > 0) {\n var _acl = acls[category.id];\n var disabled = !_acl.can_start_threads || category.is_closed && !_acl.can_close_threads;\n\n _this.categoryChoices.push({\n value: category.id,\n disabled: disabled,\n level: category.level - 1,\n label: category.name\n });\n\n if (!disabled && !_this.state.category) {\n _this.state.category = category.id;\n }\n }\n });\n return _this;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'getClassName',\n\n /* jshint ignore:end */\n\n value: function getClassName() {\n if (!this.state.category) {\n return 'modal-dialog modal-message';\n } else {\n return 'modal-dialog';\n }\n }\n }, {\n key: 'renderForm',\n value: function renderForm() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'form',\n { onSubmit: this.handleSubmit },\n _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n _formGroup2.default,\n { label: gettext(\"New category\"),\n 'for': 'id_new_category' },\n _react2.default.createElement(_categorySelect2.default, { id: 'id_new_category',\n onChange: this.bindInput('category'),\n value: this.state.category,\n choices: this.categoryChoices })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'modal-footer' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n disabled: this.state.isLoading,\n type: 'button'\n },\n gettext(\"Cancel\")\n ),\n _react2.default.createElement(\n 'button',\n { className: 'btn btn-primary' },\n gettext(\"Move threads\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'renderCantMoveMessage',\n value: function renderCantMoveMessage() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'modal-body' },\n _react2.default.createElement(\n 'div',\n { className: 'message-icon' },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'info_outline'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'message-body' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"You can't move threads because there are no categories you are allowed to move them to.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n gettext(\"You need permission to start threads in category to be able to move threads to it.\")\n ),\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default',\n 'data-dismiss': 'modal',\n type: 'button'\n },\n gettext(\"Ok\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName(), role: 'document' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-content' },\n _react2.default.createElement(\n 'div',\n { className: 'modal-header' },\n _react2.default.createElement(\n 'button',\n { type: 'button', className: 'close', 'data-dismiss': 'modal',\n 'aria-label': gettext(\"Close\") },\n _react2.default.createElement(\n 'span',\n { 'aria-hidden': 'true' },\n '\\xD7'\n )\n ),\n _react2.default.createElement(\n 'h4',\n { className: 'modal-title' },\n gettext(\"Move threads\")\n )\n ),\n this.state.category ? this.renderForm() : this.renderCantMoveMessage()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_form2.default);\n\nexports.default = _class;\n\n},{\"../../../reducers/selection\":345,\"../../../reducers/threads\":348,\"../../../services/modal\":358,\"../../../services/store\":364,\"../../category-select\":18,\"../../form\":52,\"../../form-group\":51,\"react\":\"react\"}],254:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _selection = require('../../../reducers/selection');\n\nvar select = _interopRequireWildcard(_selection);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.selectAll = function () {\n _store2.default.dispatch(select.all(_this.props.threads.map(function (thread) {\n return thread.id;\n })));\n }, _this.selectNone = function () {\n _store2.default.dispatch(select.none());\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'render',\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'ul',\n { className: this.props.className },\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n type: 'button',\n onClick: this.selectAll\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'check_box'\n ),\n gettext(\"Select all\")\n )\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-link',\n type: 'button',\n onClick: this.selectNone\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'check_box_outline_blank'\n ),\n gettext(\"Select none\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../reducers/selection\":345,\"../../../services/store\":364,\"react\":\"react\"}],255:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var baseUrl = _ref.baseUrl,\n list = _ref.list,\n lists = _ref.lists;\n\n if (lists.length < 2) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'page-tabs' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'ul',\n { className: 'nav nav-pills' },\n lists.map(function (item) {\n return _react2.default.createElement(\n _li2.default,\n {\n isControlled: true,\n isActive: item.path === list.path,\n key: baseUrl + item.path\n },\n _react2.default.createElement(\n _reactRouter.Link,\n { to: baseUrl + item.path },\n item.name\n )\n );\n })\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nvar _li = require('../li');\n\nvar _li2 = _interopRequireDefault(_li);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../li\":53,\"react\":\"react\",\"react-router\":\"react-router\"}],256:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getSelect = getSelect;\nexports.getLists = getLists;\nexports.paths = paths;\n\nvar _reactRedux = require('react-redux');\n\nvar _route = require('./route');\n\nvar _route2 = _interopRequireDefault(_route);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getSelect(options) {\n return function (store) {\n return {\n 'options': options,\n 'selection': store.selection,\n 'threads': store.threads,\n 'tick': store.tick.tick,\n 'user': store.auth.user\n };\n };\n}\n\nfunction getLists(user) {\n var lists = [{\n type: 'all',\n path: '',\n name: gettext(\"All\"),\n longName: gettext(\"All threads\")\n }];\n\n if (user.id) {\n lists.push({\n type: 'my',\n path: 'my/',\n name: gettext(\"My\"),\n longName: gettext(\"My threads\")\n });\n lists.push({\n type: 'new',\n path: 'new/',\n name: gettext(\"New\"),\n longName: gettext(\"New threads\")\n });\n lists.push({\n type: 'unread',\n path: 'unread/',\n name: gettext(\"Unread\"),\n longName: gettext(\"Unread threads\")\n });\n lists.push({\n type: 'subscribed',\n path: 'subscribed/',\n name: gettext(\"Subscribed\"),\n longName: gettext(\"Subscribed threads\")\n });\n\n if (user.acl.can_see_unapproved_content_lists) {\n lists.push({\n type: 'unapproved',\n path: 'unapproved/',\n name: gettext(\"Unapproved\"),\n longName: gettext(\"Unapproved content\")\n });\n }\n }\n\n return lists;\n}\n\nfunction paths(user, mode) {\n var lists = getLists(user);\n var routes = [];\n var categoriesMap = {};\n\n _index2.default.get('CATEGORIES').forEach(function (category) {\n lists.forEach(function (list) {\n categoriesMap[category.id] = category;\n\n routes.push({\n path: category.url.index + list.path,\n component: (0, _reactRedux.connect)(getSelect(mode))(_route2.default),\n\n categories: _index2.default.get('CATEGORIES'),\n categoriesMap: categoriesMap,\n category: category,\n\n lists: lists,\n list: list\n });\n });\n });\n\n return routes;\n}\n\n},{\"../../index\":291,\"./route\":257,\"react-redux\":\"react-redux\"}],257:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _button = require('../button');\n\nvar _button2 = _interopRequireDefault(_button);\n\nvar _compare = require('./compare');\n\nvar _container = require('./container');\n\nvar _container2 = _interopRequireDefault(_container);\n\nvar _header = require('./header');\n\nvar _header2 = _interopRequireDefault(_header);\n\nvar _utils = require('./utils');\n\nvar _threadsList = require('../threads-list');\n\nvar _threadsList2 = _interopRequireDefault(_threadsList);\n\nvar _listEmpty = require('./list-empty');\n\nvar _listEmpty2 = _interopRequireDefault(_listEmpty);\n\nvar _withDropdown = require('../with-dropdown');\n\nvar _withDropdown2 = _interopRequireDefault(_withDropdown);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _selection = require('../../reducers/selection');\n\nvar select = _interopRequireWildcard(_selection);\n\nvar _threads = require('../../reducers/threads');\n\nvar _ajax = require('../../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _polls = require('../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nvar _snackbar = require('../../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _pageTitle = require('../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nvar _sets = require('../../utils/sets');\n\nvar sets = _interopRequireWildcard(_sets);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_WithDropdown) {\n _inherits(_class, _WithDropdown);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.loadMore = function () {\n _this.setState({\n isBusy: true\n });\n\n _this.loadThreads(_this.getCategory(), _this.state.page + 1);\n };\n\n _this.pollResponse = function (data) {\n _this.setState({\n diff: Object.assign({}, data, {\n results: (0, _utils.diffThreads)(_this.props.threads, data.results)\n })\n });\n };\n\n _this.addThreads = function (threads) {\n _store2.default.dispatch((0, _threads.append)(threads, _this.getSorting()));\n };\n\n _this.applyDiff = function () {\n _this.addThreads(_this.state.diff.results);\n\n _this.setState(Object.assign({}, _this.state.diff, {\n moderation: (0, _utils.getModerationActions)(_store2.default.getState().threads),\n\n diff: {\n results: []\n }\n }));\n };\n\n _this.freezeThread = function (thread) {\n _this.setState(function (currentState) {\n return {\n busyThreads: sets.toggle(currentState.busyThreads, thread)\n };\n });\n };\n\n _this.updateThread = function (thread) {\n _store2.default.dispatch((0, _threads.patch)(thread, thread, _this.getSorting()));\n };\n\n _this.deleteThread = function (thread) {\n _store2.default.dispatch((0, _threads.deleteThread)(thread));\n };\n\n _this.state = {\n isMounted: true,\n\n isLoaded: false,\n isBusy: false,\n\n diff: {\n results: []\n },\n\n moderation: [],\n busyThreads: [],\n\n dropdown: false,\n subcategories: [],\n\n count: 0,\n more: 0,\n\n page: 1,\n pages: 1\n };\n\n var category = _this.getCategory();\n\n if (_index2.default.has('THREADS')) {\n _this.initWithPreloadedData(category, _index2.default.get('THREADS'));\n } else {\n _this.initWithoutPreloadedData(category);\n }\n return _this;\n }\n\n _createClass(_class, [{\n key: 'getCategory',\n value: function getCategory() {\n if (!this.props.route.category.special_role) {\n return this.props.route.category.id;\n } else {\n return null;\n }\n }\n }, {\n key: 'initWithPreloadedData',\n value: function initWithPreloadedData(category, data) {\n this.state = Object.assign(this.state, {\n moderation: (0, _utils.getModerationActions)(data.results),\n\n subcategories: data.subcategories,\n\n count: data.count,\n more: data.more,\n\n page: data.page,\n pages: data.pages\n });\n\n this.startPolling(category);\n }\n }, {\n key: 'initWithoutPreloadedData',\n value: function initWithoutPreloadedData(category) {\n this.loadThreads(category);\n }\n }, {\n key: 'loadThreads',\n value: function loadThreads(category) {\n var _this2 = this;\n\n var page = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n\n _ajax2.default.get(this.props.options.api, {\n category: category,\n list: this.props.route.list.type,\n page: page || 1\n }, 'threads').then(function (data) {\n if (!_this2.state.isMounted) {\n // user changed route before loading completion\n return;\n }\n\n if (page === 1) {\n _store2.default.dispatch((0, _threads.hydrate)(data.results));\n } else {\n _store2.default.dispatch((0, _threads.append)(data.results, _this2.getSorting()));\n }\n\n _this2.setState({\n isLoaded: true,\n isBusy: false,\n\n moderation: (0, _utils.getModerationActions)(_store2.default.getState().threads),\n\n subcategories: data.subcategories,\n\n count: data.count,\n more: data.more,\n\n page: data.page,\n pages: data.pages\n });\n\n _this2.startPolling(category);\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n });\n }\n }, {\n key: 'startPolling',\n value: function startPolling(category) {\n _polls2.default.start({\n poll: 'threads',\n url: this.props.options.api,\n data: {\n category: category,\n list: this.props.route.list.type\n },\n frequency: 120 * 1000,\n update: this.pollResponse\n });\n }\n }, {\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.setPageTitle();\n\n if (_index2.default.has('THREADS')) {\n // unlike in other components, routes are root components for threads\n // so we can't dispatch store action from constructor\n _store2.default.dispatch((0, _threads.hydrate)(_index2.default.pop('THREADS').results));\n\n this.setState({\n isLoaded: true\n });\n }\n\n _store2.default.dispatch(select.none());\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this.state.isMounted = false;\n _polls2.default.stop('threads');\n }\n }, {\n key: 'getTitle',\n value: function getTitle() {\n if (this.props.options.title) {\n return this.props.options.title;\n }\n\n return (0, _utils.getTitle)(this.props.route);\n }\n }, {\n key: 'setPageTitle',\n value: function setPageTitle() {\n if (this.props.route.category.level || !_index2.default.get('THREADS_ON_INDEX')) {\n _pageTitle2.default.set((0, _utils.getPageTitle)(this.props.route));\n } else if (this.props.options.title) {\n _pageTitle2.default.set(this.props.options.title);\n } else {\n if (_index2.default.get('SETTINGS').forum_index_title) {\n document.title = _index2.default.get('SETTINGS').forum_index_title;\n } else {\n document.title = _index2.default.get('SETTINGS').forum_name;\n }\n }\n }\n }, {\n key: 'getSorting',\n value: function getSorting() {\n if (this.props.route.category.level) {\n return _compare.compareWeight;\n } else {\n return _compare.compareGlobalWeight;\n }\n }\n\n /* jshint ignore:start */\n\n // AJAX\n\n // Thread state utils\n\n }, {\n key: 'getMoreButton',\n\n /* jshint ignore:end */\n\n value: function getMoreButton() {\n if (this.state.more) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'pager-more' },\n _react2.default.createElement(\n _button2.default,\n {\n className: 'btn btn-default btn-outline',\n loading: this.state.isBusy || this.state.busyThreads.length,\n onClick: this.loadMore\n },\n gettext(\"Show more\")\n )\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n var className = 'page page-threads';\n className += ' page-threads-' + this.props.route.list.type;\n if (this.props.route.category.css_class) {\n className += ' page-threads-' + this.props.route.category.css_class;\n }\n return className;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName() },\n _react2.default.createElement(_header2.default, {\n categories: this.props.route.categoriesMap,\n disabled: !this.state.isLoaded,\n startThread: this.props.options.startThread,\n threads: this.props.threads,\n title: this.getTitle(),\n toggleNav: this.toggleNav,\n route: this.props.route,\n user: this.props.user\n }),\n _react2.default.createElement(\n _container2.default,\n {\n api: this.props.options.api,\n\n route: this.props.route,\n subcategories: this.state.subcategories,\n user: this.props.user,\n\n pageLead: this.props.options.pageLead,\n\n threads: this.props.threads,\n threadsCount: this.state.count,\n\n moderation: this.state.moderation,\n selection: this.props.selection,\n\n busyThreads: this.state.busyThreads,\n addThreads: this.addThreads,\n freezeThread: this.freezeThread,\n deleteThread: this.deleteThread,\n updateThread: this.updateThread,\n\n isLoaded: this.state.isLoaded,\n isBusy: this.state.isBusy\n },\n _react2.default.createElement(\n _threadsList2.default,\n {\n category: this.props.route.category,\n categories: this.props.route.categoriesMap,\n list: this.props.route.list,\n selection: this.props.selection,\n threads: this.props.threads,\n\n diffSize: this.state.diff.results.length,\n applyDiff: this.applyDiff,\n\n showOptions: !!this.props.user.id,\n\n isLoaded: this.state.isLoaded,\n busyThreads: this.state.busyThreads\n },\n _react2.default.createElement(_listEmpty2.default, {\n category: this.props.route.category,\n emptyMessage: this.props.options.emptyMessage,\n list: this.props.route.list\n })\n ),\n this.getMoreButton()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_withDropdown2.default);\n\nexports.default = _class;\n\n},{\"../../index\":291,\"../../reducers/selection\":345,\"../../reducers/threads\":348,\"../../services/ajax\":352,\"../../services/page-title\":360,\"../../services/polls\":361,\"../../services/snackbar\":363,\"../../services/store\":364,\"../../utils/sets\":378,\"../button\":5,\"../threads-list\":227,\"../with-dropdown\":288,\"./compare\":246,\"./container\":247,\"./header\":248,\"./list-empty\":249,\"./utils\":259,\"react\":\"react\"}],258:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _categoryPicker = require('./category-picker');\n\nvar _categoryPicker2 = _interopRequireDefault(_categoryPicker);\n\nvar _controls = require('./moderation/controls');\n\nvar _controls2 = _interopRequireDefault(_controls);\n\nvar _selection = require('./moderation/selection');\n\nvar _selection2 = _interopRequireDefault(_selection);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getCategoryPicker',\n value: function getCategoryPicker() {\n if (!this.props.subcategories.length) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(_categoryPicker2.default, {\n categories: this.props.categoriesMap,\n choices: this.props.subcategories,\n list: this.props.list\n });\n /* jshint ignore:end */\n }\n }, {\n key: 'showModerationOptions',\n value: function showModerationOptions() {\n return this.props.user.id && this.props.moderation.allow;\n }\n }, {\n key: 'getSelectedThreads',\n value: function getSelectedThreads() {\n var _this2 = this;\n\n return this.props.threads.filter(function (thread) {\n return _this2.props.selection.indexOf(thread.id) >= 0;\n });\n }\n }, {\n key: 'getModerationButton',\n value: function getModerationButton() {\n if (!this.showModerationOptions()) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-6 col-sm-3 col-md-2' },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group btn-group-justified' },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group dropdown' },\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: 'btn btn-default btn-outline dropdown-toggle',\n 'data-toggle': 'dropdown',\n 'aria-haspopup': 'true',\n 'aria-expanded': 'false',\n disabled: this.props.disabled || !this.props.selection.length\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'settings'\n ),\n gettext(\"Options\")\n ),\n _react2.default.createElement(_controls2.default, {\n addThreads: this.props.addThreads,\n api: this.props.api,\n categories: this.props.categories,\n categoriesMap: this.props.categoriesMap,\n className: 'dropdown-menu dropdown-menu-right stick-to-bottom',\n deleteThread: this.props.deleteThread,\n freezeThread: this.props.freezeThread,\n moderation: this.props.moderation,\n route: this.props.route,\n threads: this.getSelectedThreads(),\n updateThread: this.props.updateThread,\n user: this.props.user\n })\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getSelectionButton',\n value: function getSelectionButton() {\n if (!this.showModerationOptions()) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'col-xs-3 col-sm-2 col-md-1' },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group btn-group-justified' },\n _react2.default.createElement(\n 'div',\n { className: 'btn-group dropdown' },\n _react2.default.createElement(\n 'button',\n {\n type: 'button',\n className: 'btn btn-default btn-outline btn-icon dropdown-toggle',\n 'data-toggle': 'dropdown',\n 'aria-haspopup': 'true',\n 'aria-expanded': 'false',\n disabled: this.props.disabled\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'select_all'\n )\n ),\n _react2.default.createElement(_selection2.default, {\n className: 'dropdown-menu dropdown-menu-right stick-to-bottom',\n threads: this.props.threads\n })\n )\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'row row-toolbar row-toolbar-bottom-margin' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3 col-sm-3 col-md-2 dropdown' },\n this.getCategoryPicker()\n ),\n _react2.default.createElement('div', { className: 'hidden-xs col-sm-4 col-md-7' }),\n this.getModerationButton(),\n this.getSelectionButton()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./category-picker\":245,\"./moderation/controls\":250,\"./moderation/selection\":254,\"react\":\"react\"}],259:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getPageTitle = getPageTitle;\nexports.getTitle = getTitle;\nexports.isThreadChanged = isThreadChanged;\nexports.diffThreads = diffThreads;\nexports.getModerationActions = getModerationActions;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getPageTitle(route) {\n if (route.category.level) {\n if (route.list.path) {\n return {\n title: route.list.longName,\n parent: route.category.name\n };\n } else {\n return {\n title: route.category.name\n };\n }\n } else if (_index2.default.get('THREADS_ON_INDEX')) {\n if (route.list.path) {\n return {\n title: route.list.longName\n };\n } else {\n return null;\n }\n } else {\n if (route.list.path) {\n return {\n title: route.list.longName,\n parent: gettext(\"Threads\")\n };\n } else {\n return {\n title: gettext(\"Threads\")\n };\n }\n }\n}\n\nfunction getTitle(route) {\n if (route.category.level) {\n return route.category.name;\n } else if (_index2.default.get('THREADS_ON_INDEX')) {\n if (_index2.default.get('SETTINGS').forum_index_title) {\n return _index2.default.get('SETTINGS').forum_index_title;\n } else {\n return _index2.default.get('SETTINGS').forum_name;\n }\n } else {\n return gettext(\"Threads\");\n }\n}\n\nfunction isThreadChanged(current, fromDb) {\n return [current.title === fromDb.title, current.weight === fromDb.weight, current.category === fromDb.category, current.last_post === fromDb.last_post, current.last_poster_name === fromDb.last_poster_name].indexOf(false) >= 0;\n}\n\nfunction diffThreads(current, fromDb) {\n var currentMap = {};\n current.forEach(function (thread) {\n currentMap[thread.id] = thread;\n });\n\n return fromDb.filter(function (thread) {\n if (currentMap[thread.id]) {\n return isThreadChanged(currentMap[thread.id], thread);\n } else {\n return true;\n }\n });\n}\n\nfunction getModerationActions(threads) {\n var moderation = {\n allow: false,\n\n can_approve: 0,\n can_close: 0,\n can_delete: 0,\n can_hide: 0,\n can_merge: 0,\n can_move: 0,\n can_pin: 0,\n can_pin_globally: 0,\n can_unhide: 0\n };\n\n threads.forEach(function (thread) {\n if (thread.is_unapproved && thread.acl.can_approve > moderation.can_approve) {\n moderation.can_approve = thread.acl.can_approve;\n }\n\n if (thread.acl.can_close > moderation.can_close) {\n moderation.can_close = thread.acl.can_close;\n }\n\n if (thread.acl.can_delete > moderation.can_delete) {\n moderation.can_delete = thread.acl.can_delete;\n }\n\n if (thread.acl.can_hide > moderation.can_hide) {\n moderation.can_hide = thread.acl.can_hide;\n }\n\n if (thread.acl.can_merge > moderation.can_merge) {\n moderation.can_merge = thread.acl.can_merge;\n }\n\n if (thread.acl.can_move > moderation.can_move) {\n moderation.can_move = thread.acl.can_move;\n }\n\n if (thread.acl.can_pin > moderation.can_pin) {\n moderation.can_pin = thread.acl.can_pin;\n }\n\n if (thread.acl.can_pin_globally > moderation.can_pin_globally) {\n moderation.can_pin_globally = thread.acl.can_pin_globally;\n }\n\n if (thread.acl.can_unhide > moderation.can_unhide) {\n moderation.can_unhide = thread.acl.can_unhide;\n }\n\n moderation.allow = moderation.can_approve || moderation.can_close || moderation.can_delete || moderation.can_hide || moderation.can_merge || moderation.can_move || moderation.can_pin || moderation.can_pin_globally || moderation.can_unhide;\n });\n\n return moderation;\n}\n\n},{\"../../index\":291}],260:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CompactGuestNav = exports.GuestNav = exports.GuestMenu = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _navbarSearch = require('../navbar-search');\n\nvar _navbarSearch2 = _interopRequireDefault(_navbarSearch);\n\nvar _registerButton = require('../register-button');\n\nvar _registerButton2 = _interopRequireDefault(_registerButton);\n\nvar _signIn = require('../sign-in.js');\n\nvar _signIn2 = _interopRequireDefault(_signIn);\n\nvar _mobileNavbarDropdown = require('../../services/mobile-navbar-dropdown');\n\nvar _mobileNavbarDropdown2 = _interopRequireDefault(_mobileNavbarDropdown);\n\nvar _modal = require('../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar GuestMenu = exports.GuestMenu = function (_React$Component) {\n _inherits(GuestMenu, _React$Component);\n\n function GuestMenu() {\n _classCallCheck(this, GuestMenu);\n\n return _possibleConstructorReturn(this, (GuestMenu.__proto__ || Object.getPrototypeOf(GuestMenu)).apply(this, arguments));\n }\n\n _createClass(GuestMenu, [{\n key: 'showSignInModal',\n value: function showSignInModal() {\n _modal2.default.show(_signIn2.default);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'ul',\n {\n className: 'dropdown-menu user-dropdown dropdown-menu-right',\n role: 'menu'\n },\n _react2.default.createElement(\n 'li',\n { className: 'guest-preview' },\n _react2.default.createElement(\n 'h4',\n null,\n gettext(\"You are browsing as guest.\")\n ),\n _react2.default.createElement(\n 'p',\n null,\n gettext('Sign in or register to start and participate in discussions.')\n ),\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-6' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-sign-in btn-block',\n onClick: this.showSignInModal,\n type: 'button'\n },\n gettext(\"Sign in\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-6' },\n _react2.default.createElement(\n _registerButton2.default,\n { className: 'btn-primary btn-register btn-block' },\n gettext(\"Register\")\n )\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return GuestMenu;\n}(_react2.default.Component);\n\nvar GuestNav = exports.GuestNav = function (_GuestMenu) {\n _inherits(GuestNav, _GuestMenu);\n\n function GuestNav() {\n _classCallCheck(this, GuestNav);\n\n return _possibleConstructorReturn(this, (GuestNav.__proto__ || Object.getPrototypeOf(GuestNav)).apply(this, arguments));\n }\n\n _createClass(GuestNav, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'nav nav-guest' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn navbar-btn btn-default btn-sign-in',\n onClick: this.showSignInModal,\n type: 'button'\n },\n gettext(\"Sign in\")\n ),\n _react2.default.createElement(\n _registerButton2.default,\n { className: 'navbar-btn btn-primary btn-register' },\n gettext(\"Register\")\n ),\n _react2.default.createElement(\n 'div',\n { className: 'navbar-left' },\n _react2.default.createElement(_navbarSearch2.default, null)\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return GuestNav;\n}(GuestMenu);\n\nvar CompactGuestNav = exports.CompactGuestNav = function (_React$Component2) {\n _inherits(CompactGuestNav, _React$Component2);\n\n function CompactGuestNav() {\n _classCallCheck(this, CompactGuestNav);\n\n return _possibleConstructorReturn(this, (CompactGuestNav.__proto__ || Object.getPrototypeOf(CompactGuestNav)).apply(this, arguments));\n }\n\n _createClass(CompactGuestNav, [{\n key: 'showGuestMenu',\n value: function showGuestMenu() {\n _mobileNavbarDropdown2.default.show(GuestMenu);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'button',\n { type: 'button', onClick: this.showGuestMenu },\n _react2.default.createElement(_avatar2.default, { size: '64' })\n );\n /* jshint ignore:end */\n }\n }]);\n\n return CompactGuestNav;\n}(_react2.default.Component);\n\n},{\"../../services/mobile-navbar-dropdown\":357,\"../../services/modal\":358,\"../avatar\":3,\"../navbar-search\":73,\"../register-button\":191,\"../sign-in.js\":204,\"react\":\"react\"}],261:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CompactUserMenu = exports.UserMenu = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.select = select;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _guestNav = require('./guest-nav');\n\nvar _userNav = require('./user-nav');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\n// jshint ignore:line\n\nvar UserMenu = exports.UserMenu = function (_React$Component) {\n _inherits(UserMenu, _React$Component);\n\n function UserMenu() {\n _classCallCheck(this, UserMenu);\n\n return _possibleConstructorReturn(this, (UserMenu.__proto__ || Object.getPrototypeOf(UserMenu)).apply(this, arguments));\n }\n\n _createClass(UserMenu, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n if (this.props.isAuthenticated) {\n return _react2.default.createElement(_userNav.UserNav, { user: this.props.user });\n } else {\n return _react2.default.createElement(_guestNav.GuestNav, null);\n }\n /* jshint ignore:end */\n }\n }]);\n\n return UserMenu;\n}(_react2.default.Component);\n\nvar CompactUserMenu = exports.CompactUserMenu = function (_React$Component2) {\n _inherits(CompactUserMenu, _React$Component2);\n\n function CompactUserMenu() {\n _classCallCheck(this, CompactUserMenu);\n\n return _possibleConstructorReturn(this, (CompactUserMenu.__proto__ || Object.getPrototypeOf(CompactUserMenu)).apply(this, arguments));\n }\n\n _createClass(CompactUserMenu, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n if (this.props.isAuthenticated) {\n return _react2.default.createElement(_userNav.CompactUserNav, { user: this.props.user });\n } else {\n return _react2.default.createElement(_guestNav.CompactGuestNav, null);\n }\n /* jshint ignore:end */\n }\n }]);\n\n return CompactUserMenu;\n}(_react2.default.Component);\n\nfunction select(state) {\n return state.auth;\n}\n\n},{\"./guest-nav\":260,\"./user-nav\":262,\"react\":\"react\"}],262:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CompactUserNav = exports.UserMenu = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.PrivateThreadsBadge = PrivateThreadsBadge;\nexports.UserNav = UserNav;\nexports.UserPrivateThreadsLink = UserPrivateThreadsLink;\nexports.selectUserMenu = selectUserMenu;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRedux = require('react-redux');\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _root = require('../change-avatar/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _navbarSearch = require('../navbar-search');\n\nvar _navbarSearch2 = _interopRequireDefault(_navbarSearch);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _mobileNavbarDropdown = require('../../services/mobile-navbar-dropdown');\n\nvar _mobileNavbarDropdown2 = _interopRequireDefault(_mobileNavbarDropdown);\n\nvar _modal = require('../../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar UserMenu = exports.UserMenu = function (_React$Component) {\n _inherits(UserMenu, _React$Component);\n\n function UserMenu() {\n _classCallCheck(this, UserMenu);\n\n return _possibleConstructorReturn(this, (UserMenu.__proto__ || Object.getPrototypeOf(UserMenu)).apply(this, arguments));\n }\n\n _createClass(UserMenu, [{\n key: 'logout',\n value: function logout() {\n var decision = confirm(gettext(\"Are you sure you want to sign out?\"));\n if (decision) {\n $('#hidden-logout-form').submit();\n }\n }\n }, {\n key: 'changeAvatar',\n value: function changeAvatar() {\n _modal2.default.show((0, _reactRedux.connect)(_root.select)(_root2.default));\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n var user = this.props.user;\n\n\n return _react2.default.createElement(\n 'ul',\n {\n className: 'dropdown-menu user-dropdown dropdown-menu-right',\n role: 'menu'\n },\n _react2.default.createElement(\n 'li',\n { className: 'dropdown-header' },\n _react2.default.createElement(\n 'strong',\n null,\n user.username\n ),\n _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled list-inline user-stats' },\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'message'\n ),\n user.posts\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'forum'\n ),\n user.threads\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'favorite'\n ),\n user.followers\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'favorite_outline'\n ),\n user.following\n )\n )\n ),\n _react2.default.createElement('li', { className: 'divider' }),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n { href: user.url },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'account_circle'\n ),\n gettext(\"See your profile\")\n )\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n { href: _2.default.get('USERCP_URL') },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'done_all'\n ),\n gettext(\"Change options\")\n )\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'button',\n {\n className: 'btn-link',\n onClick: this.changeAvatar,\n type: 'button'\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'portrait'\n ),\n gettext(\"Change avatar\")\n )\n ),\n !!user.acl.can_use_private_threads && _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n { href: _2.default.get('PRIVATE_THREADS_URL') },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'message'\n ),\n gettext(\"Private threads\"),\n _react2.default.createElement(PrivateThreadsBadge, { user: user })\n )\n ),\n _react2.default.createElement('li', { className: 'divider' }),\n _react2.default.createElement(\n 'li',\n { className: 'dropdown-buttons' },\n _react2.default.createElement(\n 'button',\n {\n className: 'btn btn-default btn-block',\n onClick: this.logout,\n type: 'button'\n },\n gettext(\"Log out\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return UserMenu;\n}(_react2.default.Component);\n\nfunction PrivateThreadsBadge(_ref) {\n var user = _ref.user;\n\n if (!user.unread_private_threads) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: 'badge' },\n user.unread_private_threads\n );\n /* jshint ignore:end */\n}\n\n/* jshint ignore:start */\nfunction UserNav(_ref2) {\n var user = _ref2.user;\n\n return _react2.default.createElement(\n 'ul',\n { className: 'ul nav navbar-nav nav-user' },\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(_navbarSearch2.default, null)\n ),\n _react2.default.createElement(UserPrivateThreadsLink, { user: user }),\n _react2.default.createElement(\n 'li',\n { className: 'dropdown' },\n _react2.default.createElement(\n 'a',\n {\n 'aria-haspopup': 'true',\n 'aria-expanded': 'false',\n className: 'dropdown-toggle',\n 'data-toggle': 'dropdown',\n href: user.url,\n role: 'button'\n },\n _react2.default.createElement(_avatar2.default, { user: user, size: '64' })\n ),\n _react2.default.createElement(UserMenu, { user: user })\n )\n );\n}\n/* jshint ignore:end */\n\nfunction UserPrivateThreadsLink(_ref3) {\n var user = _ref3.user;\n\n if (!user.acl.can_use_private_threads) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'a',\n {\n className: 'navbar-icon',\n href: _2.default.get('PRIVATE_THREADS_URL'),\n title: gettext(\"You have unread private threads.\") },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'message'\n ),\n user.unread_private_threads > 0 && _react2.default.createElement(\n 'span',\n { className: 'badge' },\n user.unread_private_threads\n )\n )\n );\n /* jshint ignore:end */\n}\n\nfunction selectUserMenu(state) {\n return {\n user: state.auth.user\n };\n}\n\nvar CompactUserNav = exports.CompactUserNav = function (_React$Component2) {\n _inherits(CompactUserNav, _React$Component2);\n\n function CompactUserNav() {\n _classCallCheck(this, CompactUserNav);\n\n return _possibleConstructorReturn(this, (CompactUserNav.__proto__ || Object.getPrototypeOf(CompactUserNav)).apply(this, arguments));\n }\n\n _createClass(CompactUserNav, [{\n key: 'showUserMenu',\n value: function showUserMenu() {\n _mobileNavbarDropdown2.default.showConnected('user-menu', (0, _reactRedux.connect)(selectUserMenu)(UserMenu));\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'button',\n { type: 'button', onClick: this.showUserMenu },\n _react2.default.createElement(_avatar2.default, { user: this.props.user, size: '50' })\n );\n /* jshint ignore:end */\n }\n }]);\n\n return CompactUserNav;\n}(_react2.default.Component);\n\n},{\"../..\":291,\"../../services/mobile-navbar-dropdown\":357,\"../../services/modal\":358,\"../avatar\":3,\"../change-avatar/root\":22,\"../navbar-search\":73,\"react\":\"react\",\"react-redux\":\"react-redux\"}],263:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.StatusLabel = exports.StatusIcon = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.getStatusClassName = getStatusClassName;\nexports.getStatusDescription = getStatusDescription;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getClass',\n value: function getClass() {\n return getStatusClassName(this.props.status);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: this.getClass() },\n this.props.children\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\nvar StatusIcon = exports.StatusIcon = function (_React$Component2) {\n _inherits(StatusIcon, _React$Component2);\n\n function StatusIcon() {\n _classCallCheck(this, StatusIcon);\n\n return _possibleConstructorReturn(this, (StatusIcon.__proto__ || Object.getPrototypeOf(StatusIcon)).apply(this, arguments));\n }\n\n _createClass(StatusIcon, [{\n key: 'getIcon',\n value: function getIcon() {\n if (this.props.status.is_banned) {\n return 'remove_circle_outline';\n } else if (this.props.status.is_hidden) {\n return 'help_outline';\n } else if (this.props.status.is_online_hidden) {\n return 'label';\n } else if (this.props.status.is_offline_hidden) {\n return 'label_outline';\n } else if (this.props.status.is_online) {\n return 'lens';\n } else if (this.props.status.is_offline) {\n return 'panorama_fish_eye';\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: 'material-icon status-icon' },\n this.getIcon()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return StatusIcon;\n}(_react2.default.Component);\n\nvar StatusLabel = exports.StatusLabel = function (_React$Component3) {\n _inherits(StatusLabel, _React$Component3);\n\n function StatusLabel() {\n _classCallCheck(this, StatusLabel);\n\n return _possibleConstructorReturn(this, (StatusLabel.__proto__ || Object.getPrototypeOf(StatusLabel)).apply(this, arguments));\n }\n\n _createClass(StatusLabel, [{\n key: 'getHelp',\n value: function getHelp() {\n return getStatusDescription(this.props.user, this.props.status);\n }\n }, {\n key: 'getLabel',\n value: function getLabel() {\n if (this.props.status.is_banned) {\n return gettext(\"Banned\");\n } else if (this.props.status.is_hidden) {\n return gettext(\"Hidden\");\n } else if (this.props.status.is_online_hidden) {\n return gettext(\"Online (hidden)\");\n } else if (this.props.status.is_offline_hidden) {\n return gettext(\"Offline (hidden)\");\n } else if (this.props.status.is_online) {\n return gettext(\"Online\");\n } else if (this.props.status.is_offline) {\n return gettext(\"Offline\");\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: this.props.className || \"status-label\",\n title: this.getHelp() },\n this.getLabel()\n );\n /* jshint ignore:end */\n }\n }]);\n\n return StatusLabel;\n}(_react2.default.Component);\n\nfunction getStatusClassName(status) {\n var className = '';\n if (status.is_banned) {\n className = 'banned';\n } else if (status.is_hidden) {\n className = 'offline';\n } else if (status.is_online_hidden) {\n className = 'online';\n } else if (status.is_offline_hidden) {\n className = 'offline';\n } else if (status.is_online) {\n className = 'online';\n } else if (status.is_offline) {\n className = 'offline';\n }\n\n return 'user-status user-' + className;\n}\n\nfunction getStatusDescription(user, status) {\n if (status.is_banned) {\n if (status.banned_until) {\n return interpolate(gettext(\"%(username)s is banned until %(ban_expires)s\"), {\n username: user.username,\n ban_expires: status.banned_until.format('LL, LT')\n }, true);\n } else {\n return interpolate(gettext(\"%(username)s is banned\"), {\n username: user.username\n }, true);\n }\n } else if (status.is_hidden) {\n return interpolate(gettext(\"%(username)s is hiding presence\"), {\n username: user.username\n }, true);\n } else if (status.is_online_hidden) {\n return interpolate(gettext(\"%(username)s is online (hidden)\"), {\n username: user.username\n }, true);\n } else if (status.is_offline_hidden) {\n return interpolate(gettext(\"%(username)s was last seen %(last_click)s (hidden)\"), {\n username: user.username,\n last_click: status.last_click.fromNow()\n }, true);\n } else if (status.is_online) {\n return interpolate(gettext(\"%(username)s is online\"), {\n username: user.username\n }, true);\n } else if (status.is_offline) {\n return interpolate(gettext(\"%(username)s was last seen %(last_click)s\"), {\n username: user.username,\n last_click: status.last_click.fromNow()\n }, true);\n }\n}\n\n},{\"react\":\"react\"}],264:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _random = require('../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.props.hiddenOnMobile) {\n return 'list-group-item hidden-xs hidden-sm';\n } else {\n return 'list-group-item';\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: this.getClassName() },\n _react2.default.createElement(\n 'div',\n { className: 'change-avatar' },\n _react2.default.createElement(\n 'span',\n { className: 'user-avatar' },\n _react2.default.createElement(_avatar2.default, { size: '100' })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'change-author' },\n _react2.default.createElement(\n 'span',\n { className: 'ui-preview-text', style: { width: random.int(30, 100) + \"px\" } },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'change' },\n _react2.default.createElement(\n 'span',\n { className: 'ui-preview-text', style: { width: random.int(30, 70) + \"px\" } },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'arrow_forward'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'ui-preview-text', style: { width: random.int(30, 70) + \"px\" } },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'change-date' },\n _react2.default.createElement(\n 'span',\n { className: 'ui-preview-text', style: { width: random.int(80, 140) + \"px\" } },\n '\\xA0'\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../utils/random\":375,\"../avatar\":3,\"react\":\"react\"}],265:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'renderUserAvatar',\n value: function renderUserAvatar() {\n if (this.props.change.changed_by) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'a',\n { href: this.props.change.changed_by.url, className: 'user-avatar-wrapper' },\n _react2.default.createElement(_avatar2.default, { user: this.props.change.changed_by, size: '100' })\n );\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: 'user-avatar-wrapper' },\n _react2.default.createElement(_avatar2.default, { size: '100' })\n );\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'renderUsername',\n value: function renderUsername() {\n if (this.props.change.changed_by) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'a',\n { href: this.props.change.changed_by.url, className: 'item-title' },\n this.props.change.changed_by.username\n );\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: 'item-title' },\n this.props.change.changed_by_username\n );\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: 'list-group-item', key: this.props.change.id },\n _react2.default.createElement(\n 'div',\n { className: 'change-avatar' },\n this.renderUserAvatar()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'change-author' },\n this.renderUsername()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'change' },\n _react2.default.createElement(\n 'span',\n { className: 'old-username' },\n this.props.change.old_username\n ),\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'arrow_forward'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'new-username' },\n this.props.change.new_username\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'change-date' },\n _react2.default.createElement(\n 'abbr',\n { title: this.props.change.changed_on.format('LLL') },\n this.props.change.changed_on.fromNow()\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../avatar\":3,\"react\":\"react\"}],266:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: \"getEmptyMessage\",\n value: function getEmptyMessage() {\n if (this.props.emptyMessage) {\n return this.props.emptyMessage;\n } else {\n return gettext(\"No name changes have been recorded for your account.\");\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n \"div\",\n { className: \"username-history ui-ready\" },\n _react2.default.createElement(\n \"ul\",\n { className: \"list-group\" },\n _react2.default.createElement(\n \"li\",\n { className: \"list-group-item empty-message\" },\n this.getEmptyMessage()\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],267:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _changePreview = require('./change-preview');\n\nvar _changePreview2 = _interopRequireDefault(_changePreview);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'username-history ui-preview' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-group' },\n [0, 1, 2].map(function (i) {\n return _react2.default.createElement(_changePreview2.default, { hiddenOnMobile: i > 0, key: i });\n })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./change-preview\":264,\"react\":\"react\"}],268:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _change = require('./change');\n\nvar _change2 = _interopRequireDefault(_change);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'username-history ui-ready' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-group' },\n this.props.changes.map(function (change) {\n return _react2.default.createElement(_change2.default, { change: change, key: change.id });\n })\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./change\":265,\"react\":\"react\"}],269:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _listEmpty = require('./list-empty');\n\nvar _listEmpty2 = _interopRequireDefault(_listEmpty);\n\nvar _listReady = require('./list-ready');\n\nvar _listReady2 = _interopRequireDefault(_listReady);\n\nvar _listPreview = require('./list-preview');\n\nvar _listPreview2 = _interopRequireDefault(_listPreview);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n if (this.props.isLoaded) {\n if (this.props.changes.length) {\n /* jshint ignore:start */\n return _react2.default.createElement(_listReady2.default, { changes: this.props.changes });\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_listEmpty2.default, { emptyMessage: this.props.emptyMessage });\n /* jshint ignore:end */\n }\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_listPreview2.default, null);\n /* jshint ignore:end */\n }\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./list-empty\":266,\"./list-preview\":267,\"./list-ready\":268,\"react\":\"react\"}],270:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var showStatus = _ref.showStatus,\n user = _ref.user;\n var rank = user.rank;\n\n\n var className = 'panel user-card';\n if (rank.css_class) {\n className += ' user-card-' + rank.css_class;\n }\n\n return _react2.default.createElement(\n 'div',\n { className: className },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3 user-card-left' },\n _react2.default.createElement(\n 'div',\n { className: 'user-card-small-avatar' },\n _react2.default.createElement(\n 'a',\n { href: user.url },\n _react2.default.createElement(_avatar2.default, {\n size: '50',\n size2x: '80',\n user: user\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-9 col-sm-12 user-card-body' },\n _react2.default.createElement(\n 'div',\n { className: 'user-card-avatar' },\n _react2.default.createElement(\n 'a',\n { href: user.url },\n _react2.default.createElement(_avatar2.default, {\n size: '150',\n size2x: '200',\n user: user\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-card-username' },\n _react2.default.createElement(\n 'a',\n { href: user.url },\n user.username\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-card-title' },\n _react2.default.createElement(_userTitle2.default, {\n rank: rank,\n title: user.title\n })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-card-stats' },\n _react2.default.createElement(_stats2.default, {\n showStatus: showStatus,\n user: user\n })\n )\n )\n )\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _stats = require('./stats');\n\nvar _stats2 = _interopRequireDefault(_stats);\n\nvar _userTitle = require('./user-title');\n\nvar _userTitle2 = _interopRequireDefault(_userTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../avatar\":3,\"./stats\":271,\"./user-title\":272,\"react\":\"react\"}],271:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var showStatus = _ref.showStatus,\n user = _ref.user;\n\n return _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled' },\n _react2.default.createElement(Status, {\n showStatus: showStatus,\n user: user\n }),\n _react2.default.createElement(JoinDate, { user: user }),\n _react2.default.createElement('li', { className: 'user-stat-divider' }),\n _react2.default.createElement(Posts, { user: user }),\n _react2.default.createElement(Threads, { user: user }),\n _react2.default.createElement(Followers, { user: user })\n );\n};\n\nexports.Status = Status;\nexports.JoinDate = JoinDate;\nexports.Posts = Posts;\nexports.Threads = Threads;\nexports.Followers = Followers;\nexports.getStatClassName = getStatClassName;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _userStatus = require('../../user-status');\n\nvar _userStatus2 = _interopRequireDefault(_userStatus);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction Status(_ref2) {\n var showStatus = _ref2.showStatus,\n user = _ref2.user;\n\n if (!showStatus) return null;\n\n return _react2.default.createElement(\n 'li',\n { className: 'user-stat-status' },\n _react2.default.createElement(\n _userStatus2.default,\n { status: user.status },\n _react2.default.createElement(_userStatus.StatusLabel, {\n status: user.status,\n user: user\n })\n )\n );\n} // jshint ignore:start\nfunction JoinDate(_ref3) {\n var user = _ref3.user;\n var joined_on = user.joined_on;\n\n\n var title = interpolate(gettext(\"Joined on %(joined_on)s\"), {\n 'joined_on': joined_on.format('LL, LT')\n }, true);\n\n var message = interpolate(gettext(\"Joined %(joined_on)s\"), {\n 'joined_on': joined_on.fromNow()\n }, true);\n\n return _react2.default.createElement(\n 'li',\n { className: 'user-stat-join-date' },\n _react2.default.createElement(\n 'abbr',\n { title: title },\n message\n )\n );\n}\n\nfunction Posts(_ref4) {\n var user = _ref4.user;\n\n var className = getStatClassName(\"user-stat-posts\", user.posts);\n var message = ngettext(\"%(posts)s post\", \"%(posts)s posts\", user.posts);\n\n return _react2.default.createElement(\n 'li',\n { className: className },\n interpolate(message, {\n 'posts': user.posts\n }, true)\n );\n}\n\nfunction Threads(_ref5) {\n var user = _ref5.user;\n\n var className = getStatClassName(\"user-stat-threads\", user.threads);\n var message = ngettext(\"%(threads)s thread\", \"%(threads)s threads\", user.threads);\n\n return _react2.default.createElement(\n 'li',\n { className: className },\n interpolate(message, {\n 'threads': user.threads\n }, true)\n );\n}\n\nfunction Followers(_ref6) {\n var user = _ref6.user;\n\n var className = getStatClassName(\"user-stat-followers\", user.followers);\n var message = ngettext(\"%(followers)s follower\", \"%(followers)s followers\", user.followers);\n\n return _react2.default.createElement(\n 'li',\n { className: className },\n interpolate(message, {\n 'followers': user.followers\n }, true)\n );\n}\n\nfunction getStatClassName(className, stat) {\n if (stat === 0) {\n return className + ' user-stat-empty';\n }\n return className;\n}\n\n},{\"../../user-status\":263,\"react\":\"react\"}],272:[function(require,module,exports){\narguments[4][123][0].apply(exports,arguments)\n},{\"dup\":123,\"react\":\"react\"}],273:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var cols = _ref.cols,\n isReady = _ref.isReady,\n showStatus = _ref.showStatus,\n users = _ref.users;\n\n var colClassName = 'col-xs-12 col-sm-4';\n if (cols === 4) {\n colClassName += ' col-md-3';\n }\n\n if (!isReady) {\n return _react2.default.createElement(_preview2.default, {\n colClassName: colClassName,\n cols: cols\n });\n }\n\n return _react2.default.createElement(\n 'div',\n { className: 'users-cards-list ui-ready' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n users.map(function (user) {\n return _react2.default.createElement(\n 'div',\n {\n className: colClassName,\n key: user.id\n },\n _react2.default.createElement(_card2.default, {\n showStatus: showStatus,\n user: user\n })\n );\n })\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _card = require('./card');\n\nvar _card2 = _interopRequireDefault(_card);\n\nvar _preview = require('./preview');\n\nvar _preview2 = _interopRequireDefault(_preview);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./card\":270,\"./preview\":275,\"react\":\"react\"}],274:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _random = require('../../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:start\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n { className: 'panel user-card user-card-preview' },\n _react2.default.createElement(\n 'div',\n { className: 'panel-body' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3 user-card-left' },\n _react2.default.createElement(\n 'div',\n { className: 'user-card-small-avatar' },\n _react2.default.createElement(\n 'span',\n null,\n _react2.default.createElement(_avatar2.default, {\n size: '50',\n size2x: '80'\n })\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-9 col-sm-12 user-card-body' },\n _react2.default.createElement(\n 'div',\n { className: 'user-card-avatar' },\n _react2.default.createElement(\n 'span',\n null,\n _react2.default.createElement(_avatar2.default, {\n size: '150',\n size2x: '200'\n })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-card-username' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(60, 150) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-card-title' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(60, 150) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-card-stats' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-unstyled' },\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 70) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 70) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement('li', { className: 'user-stat-divider' }),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 70) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'li',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 70) + \"px\" }\n },\n '\\xA0'\n )\n )\n )\n )\n )\n )\n )\n );\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../utils/random\":375,\"../../avatar\":3,\"react\":\"react\"}],275:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var colClassName = _ref.colClassName,\n cols = _ref.cols;\n\n var list = Array.apply(null, { length: cols }).map(Number.call, Number);\n\n return _react2.default.createElement(\n 'div',\n { className: 'users-cards-list ui-preview' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n list.map(function (i) {\n var className = colClassName;\n if (i !== 0) className += ' hidden-xs';\n if (i === 3) className += ' hidden-sm';\n\n return _react2.default.createElement(\n 'div',\n {\n className: className,\n key: i\n },\n _react2.default.createElement(_card2.default, null)\n );\n })\n )\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _card = require('./card');\n\nvar _card2 = _interopRequireDefault(_card);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"./card\":274,\"react\":\"react\"}],276:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getEmptyMessage',\n value: function getEmptyMessage() {\n return interpolate(gettext(\"No users have posted any new messages during last %(days)s days.\"), { 'days': this.props.trackedPeriod }, true);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'active-posters-list' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.getEmptyMessage()\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],277:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _avatar = require('../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _random = require('../../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.props.hiddenOnMobile) {\n return 'list-group-item hidden-xs hidden-sm';\n } else {\n return 'list-group-item';\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: this.getClassName() },\n _react2.default.createElement(\n 'div',\n { className: 'rank-user-avatar' },\n _react2.default.createElement(\n 'span',\n null,\n _react2.default.createElement(_avatar2.default, { size: '50' })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-user' },\n _react2.default.createElement(\n 'div',\n { className: 'user-name' },\n _react2.default.createElement(\n 'span',\n { className: 'item-title' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 80) + \"px\" }\n },\n '\\xA0'\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-details' },\n _react2.default.createElement(\n 'span',\n { className: 'user-status' },\n _react2.default.createElement(\n 'span',\n { className: 'status-icon ui-preview-text' },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n {\n className: 'status-label ui-preview-text hidden-xs hidden-sm',\n style: { width: random.int(30, 50) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'span',\n { className: 'rank-name' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 50) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'span',\n { className: 'user-title hidden-xs hidden-sm' },\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(30, 50) + \"px\" }\n },\n '\\xA0'\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-compact-stats visible-xs-block' },\n _react2.default.createElement(\n 'span',\n { className: 'rank-position' },\n _react2.default.createElement(\n 'strong',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(20, 30) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Rank\")\n )\n ),\n _react2.default.createElement(\n 'span',\n { className: 'rank-posts-counted' },\n _react2.default.createElement(\n 'strong',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(20, 30) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Ranked posts\")\n )\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-position hidden-xs' },\n _react2.default.createElement(\n 'strong',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(20, 30) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Rank\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-posts-counted hidden-xs' },\n _react2.default.createElement(\n 'strong',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(20, 30) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Ranked posts\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-posts-total hidden-xs' },\n _react2.default.createElement(\n 'strong',\n null,\n _react2.default.createElement(\n 'span',\n {\n className: 'ui-preview-text',\n style: { width: random.int(20, 30) + \"px\" }\n },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Total posts\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../utils/random\":375,\"../../avatar\":3,\"react\":\"react\"}],278:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nvar _avatar = require('../../avatar');\n\nvar _avatar2 = _interopRequireDefault(_avatar);\n\nvar _userStatus = require('../../user-status');\n\nvar _userStatus2 = _interopRequireDefault(_userStatus);\n\nvar _index = require('../../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _random = require('../../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getClassName',\n value: function getClassName() {\n if (this.props.rank.css_class) {\n return \"list-group-item list-group-rank-\" + this.props.rank.css_class;\n } else {\n return \"list-group-item\";\n }\n }\n }, {\n key: 'getUserStatus',\n value: function getUserStatus() {\n if (this.props.user.status) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n _userStatus2.default,\n { user: this.props.user, status: this.props.user.status },\n _react2.default.createElement(_userStatus.StatusIcon, { user: this.props.user,\n status: this.props.user.status }),\n _react2.default.createElement(_userStatus.StatusLabel, { user: this.props.user,\n status: this.props.user.status,\n className: 'status-label hidden-xs hidden-sm' })\n );\n /* jshint ignore:end */\n }\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: 'user-status' },\n _react2.default.createElement(\n 'span',\n { className: 'status-icon ui-preview-text' },\n '\\xA0'\n ),\n _react2.default.createElement(\n 'span',\n { className: 'status-label ui-preview-text hidden-xs hidden-sm',\n style: { width: random.int(30, 50) + \"px\" } },\n '\\xA0'\n )\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getRankName',\n value: function getRankName() {\n if (!this.props.rank.is_tab) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: 'rank-name item-title' },\n this.props.rank.name\n );\n /* jshint ignore:end */\n }\n\n /* jshint ignore:start */\n var rankUrl = _index2.default.get('USERS_LIST_URL') + this.props.rank.slug + '/';\n return _react2.default.createElement(\n _reactRouter.Link,\n { to: rankUrl, className: 'rank-name item-title' },\n this.props.rank.name\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'getUserTitle',\n value: function getUserTitle() {\n if (!this.props.user.title) return null;\n\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'span',\n { className: 'user-title hidden-xs hidden-sm' },\n this.props.user.title\n );\n /* jshint ignore:end */\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'li',\n { className: this.getClassName() },\n _react2.default.createElement(\n 'div',\n { className: 'rank-user-avatar' },\n _react2.default.createElement(\n 'a',\n { href: this.props.user.url },\n _react2.default.createElement(_avatar2.default, { user: this.props.user, size: 50, size2x: 64 })\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-user' },\n _react2.default.createElement(\n 'div',\n { className: 'user-name' },\n _react2.default.createElement(\n 'a',\n { href: this.props.user.url, className: 'item-title' },\n this.props.user.username\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-details' },\n this.getUserStatus(),\n this.getRankName(),\n this.getUserTitle()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'user-compact-stats visible-xs-block' },\n _react2.default.createElement(\n 'span',\n { className: 'rank-position' },\n _react2.default.createElement(\n 'strong',\n null,\n '#',\n this.props.counter\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Rank\")\n )\n ),\n _react2.default.createElement(\n 'span',\n { className: 'rank-posts-counted' },\n _react2.default.createElement(\n 'strong',\n null,\n this.props.user.meta.score\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Ranked posts\")\n )\n )\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-position hidden-xs' },\n _react2.default.createElement(\n 'strong',\n null,\n '#',\n this.props.counter\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Rank\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-posts-counted hidden-xs' },\n _react2.default.createElement(\n 'strong',\n null,\n this.props.user.meta.score\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Ranked posts\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'rank-posts-total hidden-xs' },\n _react2.default.createElement(\n 'strong',\n null,\n this.props.user.posts\n ),\n _react2.default.createElement(\n 'small',\n null,\n gettext(\"Total posts\")\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../index\":291,\"../../../utils/random\":375,\"../../avatar\":3,\"../../user-status\":263,\"react\":\"react\",\"react-router\":\"react-router\"}],279:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _listItemPreview = require('./list-item-preview');\n\nvar _listItemPreview2 = _interopRequireDefault(_listItemPreview);\n\nvar _random = require('../../../utils/random');\n\nvar random = _interopRequireWildcard(_random);\n\nfunction _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)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'active-posters-list' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'p',\n { className: 'lead ui-preview' },\n _react2.default.createElement(\n 'span',\n { className: 'ui-preview-text',\n style: { width: random.int(50, 220) + \"px\" } },\n '\\xA0'\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'active-posters ui-preview' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-group' },\n [0, 1, 2].map(function (i) {\n return _react2.default.createElement(_listItemPreview2.default, { hiddenOnMobile: i > 0, key: i });\n })\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../utils/random\":375,\"./list-item-preview\":277,\"react\":\"react\"}],280:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _listItem = require('./list-item');\n\nvar _listItem2 = _interopRequireDefault(_listItem);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'getLeadMessage',\n value: function getLeadMessage() {\n var message = ngettext(\"%(posters)s most active poster from last %(days)s days.\", \"%(posters)s most active posters from last %(days)s days.\", this.props.count);\n\n return interpolate(message, {\n posters: this.props.count,\n days: this.props.trackedPeriod\n }, true);\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'active-posters-list' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'p',\n { className: 'lead' },\n this.getLeadMessage()\n ),\n _react2.default.createElement(\n 'div',\n { className: 'active-posters ui-ready' },\n _react2.default.createElement(\n 'ul',\n { className: 'list-group' },\n this.props.users.map(function (user, i) {\n return _react2.default.createElement(_listItem2.default, { user: user,\n rank: user.rank,\n counter: i + 1,\n key: user.id });\n })\n )\n )\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"./list-item\":278,\"react\":\"react\"}],281:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _listEmpty = require('./list-empty');\n\nvar _listEmpty2 = _interopRequireDefault(_listEmpty);\n\nvar _listPreview = require('./list-preview');\n\nvar _listPreview2 = _interopRequireDefault(_listPreview);\n\nvar _listReady = require('./list-ready');\n\nvar _listReady2 = _interopRequireDefault(_listReady);\n\nvar _index = require('../../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _users = require('../../../reducers/users');\n\nvar _polls = require('../../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _pageTitle = require('../../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.update = function (data) {\n _store2.default.dispatch((0, _users.hydrate)(data.results));\n\n _this.setState({\n isLoaded: true,\n\n trackedPeriod: data.tracked_period,\n count: data.count\n });\n };\n\n if (_index2.default.has('USERS')) {\n _this.initWithPreloadedData(_index2.default.pop('USERS'));\n } else {\n _this.initWithoutPreloadedData();\n }\n\n _this.startPolling();\n return _this;\n }\n\n _createClass(_class, [{\n key: 'initWithPreloadedData',\n value: function initWithPreloadedData(data) {\n this.state = {\n isLoaded: true,\n\n trackedPeriod: data.tracked_period,\n count: data.count\n };\n\n _store2.default.dispatch((0, _users.hydrate)(data.results));\n }\n }, {\n key: 'initWithoutPreloadedData',\n value: function initWithoutPreloadedData() {\n this.state = {\n isLoaded: false\n };\n }\n }, {\n key: 'startPolling',\n value: function startPolling() {\n _polls2.default.start({\n poll: 'active-posters',\n url: _index2.default.get('USERS_API'),\n data: {\n list: 'active'\n },\n frequency: 90 * 1000,\n update: this.update\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'componentDidMount',\n\n /* jshint ignore:end */\n\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: this.props.route.extra.name,\n parent: gettext(\"Users\")\n });\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n _polls2.default.stop('active-posters');\n }\n }, {\n key: 'render',\n value: function render() {\n if (this.state.isLoaded) {\n if (this.state.count > 0) {\n /* jshint ignore:start */\n return _react2.default.createElement(_listReady2.default, { users: this.props.users,\n trackedPeriod: this.state.trackedPeriod,\n count: this.state.count });\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_listEmpty2.default, { trackedPeriod: this.state.trackedPeriod });\n /* jshint ignore:end */\n }\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_listPreview2.default, null);\n /* jshint ignore:end */\n }\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../index\":291,\"../../../reducers/users\":351,\"../../../services/page-title\":360,\"../../../services/polls\":361,\"../../../services/store\":364,\"./list-empty\":276,\"./list-preview\":279,\"./list-ready\":280,\"react\":\"react\"}],282:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (_ref) {\n var baseUrl = _ref.baseUrl,\n lists = _ref.lists;\n\n return _react2.default.createElement(\n 'ul',\n { className: 'nav nav-pills' },\n lists.map(function (list) {\n var url = listUrl(baseUrl, list);\n return _react2.default.createElement(\n _li2.default,\n { path: url, key: url },\n _react2.default.createElement(\n _reactRouter.Link,\n { to: url },\n list.name\n )\n );\n })\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nvar _li = require('../li');\n\nvar _li2 = _interopRequireDefault(_li);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar listUrl = function listUrl(baseUrl, list) {\n var url = baseUrl;\n if (list.component === 'rank') {\n url += list.slug;\n } else {\n url += list.component;\n }\n return url + '/';\n}; // jshint ignore:start\n\n},{\"../../index\":291,\"../li\":53,\"react\":\"react\",\"react-router\":\"react-router\"}],283:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _usersList = require('../../users-list');\n\nvar _usersList2 = _interopRequireDefault(_usersList);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n// jshint ignore:line\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'shouldComponentUpdate',\n value: function shouldComponentUpdate() {\n return false;\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_usersList2.default, {\n cols: 4,\n isReady: false\n })\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../users-list\":273,\"react\":\"react\"}],284:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n return _react2.default.createElement(\n 'div',\n null,\n _react2.default.createElement(_usersList2.default, {\n cols: 4,\n isReady: true,\n showStatus: true,\n users: props.users\n }),\n _react2.default.createElement(_pager2.default, props)\n );\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _pager = require('./pager');\n\nvar _pager2 = _interopRequireDefault(_pager);\n\nvar _usersList = require('../../users-list');\n\nvar _usersList2 = _interopRequireDefault(_usersList);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../../users-list\":273,\"./pager\":285,\"react\":\"react\"}],285:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (props) {\n if (props.pages === 1) return null;\n\n return _react2.default.createElement(\n 'div',\n { className: 'row row-toolbar' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-12 text-center visible-xs-block' },\n _react2.default.createElement(More, { more: props.more }),\n _react2.default.createElement('div', { className: 'toolbar-vertical-spacer' })\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-md-7' },\n _react2.default.createElement(\n 'div',\n { className: 'row' },\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-4 col-md-5' },\n _react2.default.createElement(Pager, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-sm-8 col-md-7 hidden-xs' },\n _react2.default.createElement(More, { more: props.more })\n )\n )\n )\n );\n};\n\nexports.Pager = Pager;\nexports.FirstPage = FirstPage;\nexports.PreviousPage = PreviousPage;\nexports.NextPage = NextPage;\nexports.LastPage = LastPage;\nexports.More = More;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRouter = require('react-router');\n\nvar _resetScroll = require('../../../utils/reset-scroll');\n\nvar _resetScroll2 = _interopRequireDefault(_resetScroll);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* jshint ignore:start */\nfunction Pager(props) {\n return _react2.default.createElement(\n 'div',\n { className: 'row row-paginator' },\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(FirstPage, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(PreviousPage, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(NextPage, props)\n ),\n _react2.default.createElement(\n 'div',\n { className: 'col-xs-3' },\n _react2.default.createElement(LastPage, props)\n )\n );\n}\n\nfunction FirstPage(props) {\n if (props.isLoaded && props.first) {\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-icon btn-outline',\n onClick: _resetScroll2.default,\n to: props.baseUrl,\n title: gettext(\"Go to first page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'first_page'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-icon btn-outline disabled',\n title: gettext(\"Go to first page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'first_page'\n )\n );\n }\n}\n\nfunction PreviousPage(props) {\n if (props.isLoaded && props.page > 1) {\n var previousUrl = '';\n if (props.previous) {\n previousUrl = props.previous + '/';\n }\n\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-icon btn-outline',\n onClick: _resetScroll2.default,\n to: props.baseUrl + previousUrl,\n title: gettext(\"Go to previous page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_left'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-icon btn-outline disabled',\n title: gettext(\"Go to previous page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_left'\n )\n );\n }\n}\n\nfunction NextPage(props) {\n if (props.isLoaded && props.more) {\n var nextUrl = '';\n if (props.next) {\n nextUrl = props.next + '/';\n }\n\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-icon btn-outline',\n onClick: _resetScroll2.default,\n to: props.baseUrl + nextUrl,\n title: gettext(\"Go to next page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_right'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-icon btn-outline disabled',\n title: gettext(\"Go to next page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'chevron_right'\n )\n );\n }\n}\n\nfunction LastPage(props) {\n if (props.isLoaded && props.last) {\n return _react2.default.createElement(\n _reactRouter.Link,\n {\n className: 'btn btn-default btn-block btn-icon btn-outline',\n onClick: _resetScroll2.default,\n to: props.baseUrl + props.last + '/',\n title: gettext(\"Go to last page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'last_page'\n )\n );\n } else {\n return _react2.default.createElement(\n 'span',\n {\n className: 'btn btn-default btn-block btn-icon btn-outline disabled',\n title: gettext(\"Go to last page\")\n },\n _react2.default.createElement(\n 'span',\n { className: 'material-icon' },\n 'last_page'\n )\n );\n }\n}\n\nfunction More(props) {\n var message = null;\n if (props.more) {\n message = ngettext(\"There is %(more)s more member with this role.\", \"There are %(more)s more members with this role.\", props.more);\n message = interpolate(message, { 'more': props.more }, true);\n } else {\n message = gettext(\"There are no more members with this role.\");\n }\n\n return _react2.default.createElement(\n 'p',\n null,\n message\n );\n}\n\n},{\"../../../utils/reset-scroll\":376,\"react\":\"react\",\"react-router\":\"react-router\"}],286:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _pageLead = require('../../page-lead');\n\nvar _pageLead2 = _interopRequireDefault(_pageLead);\n\nvar _list = require('./list');\n\nvar _list2 = _interopRequireDefault(_list);\n\nvar _listLoading = require('./list-loading');\n\nvar _listLoading2 = _interopRequireDefault(_listLoading);\n\nvar _index = require('../../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _users = require('../../../reducers/users');\n\nvar _polls = require('../../../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nvar _store = require('../../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _pageTitle = require('../../../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.update = function (data) {\n _store2.default.dispatch((0, _users.hydrate)(data.results));\n\n data.isLoaded = true;\n _this.setState(data);\n };\n\n if (_index2.default.has('USERS')) {\n _this.initWithPreloadedData(_index2.default.pop('USERS'));\n } else {\n _this.initWithoutPreloadedData();\n }\n\n _this.startPolling(props.params.page || 1);\n return _this;\n }\n\n _createClass(_class, [{\n key: 'initWithPreloadedData',\n value: function initWithPreloadedData(data) {\n this.state = Object.assign(data, {\n isLoaded: true\n });\n _store2.default.dispatch((0, _users.hydrate)(data.results));\n }\n }, {\n key: 'initWithoutPreloadedData',\n value: function initWithoutPreloadedData() {\n this.state = {\n isLoaded: false\n };\n }\n }, {\n key: 'startPolling',\n value: function startPolling(page) {\n _polls2.default.start({\n poll: 'rank-users',\n url: _index2.default.get('USERS_API'),\n data: {\n rank: this.props.route.rank.id,\n page: page\n },\n frequency: 90 * 1000,\n update: this.update\n });\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'componentDidMount',\n\n /* jshint ignore:end */\n\n value: function componentDidMount() {\n _pageTitle2.default.set({\n title: this.props.route.rank.name,\n page: this.props.params.page || null,\n parent: gettext(\"Users\")\n });\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n _polls2.default.stop('rank-users');\n }\n }, {\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n if (this.props.params.page !== nextProps.params.page) {\n _pageTitle2.default.set({\n title: this.props.route.rank.name,\n page: nextProps.params.page || null,\n parent: gettext(\"Users\")\n });\n\n this.setState({\n isLoaded: false\n });\n\n _polls2.default.stop('rank-users');\n this.startPolling(nextProps.params.page);\n }\n }\n }, {\n key: 'getClassName',\n value: function getClassName() {\n if (this.props.route.rank.css_class) {\n return 'rank-users-list rank-users-' + this.props.route.rank.css_class;\n } else {\n return 'rank-users-list';\n }\n }\n }, {\n key: 'getRankDescription',\n value: function getRankDescription() {\n if (this.props.route.rank.description) {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'rank-description' },\n _react2.default.createElement(_pageLead2.default, { copy: this.props.route.rank.description.html })\n );\n /* jshint ignore:end */\n } else {\n return null;\n }\n }\n }, {\n key: 'getComponent',\n value: function getComponent() {\n if (this.state.isLoaded) {\n if (this.state.count > 0) {\n /* jshint ignore:start */\n var baseUrl = _index2.default.get('USERS_LIST_URL') + this.props.route.rank.slug + '/';\n return _react2.default.createElement(_list2.default, _extends({ baseUrl: baseUrl,\n users: this.props.users\n }, this.state));\n /* jshint ignore:end */\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'p',\n { className: 'lead' },\n gettext(\"There are no users with this rank at the moment.\")\n );\n /* jshint ignore:end */\n }\n } else {\n /* jshint ignore:start */\n return _react2.default.createElement(_listLoading2.default, null);\n /* jshint ignore:end */\n }\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: this.getClassName() },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n this.getRankDescription(),\n this.getComponent()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../../../index\":291,\"../../../reducers/users\":351,\"../../../services/page-title\":360,\"../../../services/polls\":361,\"../../../services/store\":364,\"../../page-lead\":85,\"./list\":284,\"./list-loading\":283,\"react\":\"react\"}],287:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.select = select;\nexports.paths = paths;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactRedux = require('react-redux');\n\nvar _dropdownToggle = require('../dropdown-toggle');\n\nvar _dropdownToggle2 = _interopRequireDefault(_dropdownToggle);\n\nvar _nav = require('./nav');\n\nvar _nav2 = _interopRequireDefault(_nav);\n\nvar _root = require('./active-posters/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _root3 = require('./rank/root');\n\nvar _root4 = _interopRequireDefault(_root3);\n\nvar _withDropdown = require('../with-dropdown');\n\nvar _withDropdown2 = _interopRequireDefault(_withDropdown);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _class = function (_WithDropdown) {\n _inherits(_class, _WithDropdown);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n 'div',\n { className: 'page page-users-lists' },\n _react2.default.createElement(\n 'div',\n { className: 'page-header-bg' },\n _react2.default.createElement(\n 'div',\n { className: 'page-header' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(\n 'h1',\n null,\n gettext(\"Users\")\n )\n ),\n _react2.default.createElement(\n 'div',\n { className: 'page-tabs' },\n _react2.default.createElement(\n 'div',\n { className: 'container' },\n _react2.default.createElement(_nav2.default, {\n lists: _index2.default.get('USERS_LISTS'),\n baseUrl: _index2.default.get('USERS_LIST_URL')\n })\n )\n )\n )\n ),\n this.props.children\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_withDropdown2.default);\n\nexports.default = _class;\nfunction select(store) {\n return {\n 'tick': store.tick.tick,\n 'user': store.auth.user,\n 'users': store.users\n };\n}\n\nfunction paths() {\n var paths = [];\n\n _index2.default.get('USERS_LISTS').forEach(function (item) {\n if (item.component === 'rank') {\n paths.push({\n path: _index2.default.get('USERS_LIST_URL') + item.slug + '/:page/',\n component: (0, _reactRedux.connect)(select)(_root4.default),\n rank: item\n });\n paths.push({\n path: _index2.default.get('USERS_LIST_URL') + item.slug + '/',\n component: (0, _reactRedux.connect)(select)(_root4.default),\n rank: item\n });\n } else if (item.component === 'active-posters') {\n paths.push({\n path: _index2.default.get('USERS_LIST_URL') + item.component + '/',\n component: (0, _reactRedux.connect)(select)(_root2.default),\n extra: {\n name: item.name\n }\n });\n }\n });\n\n return paths;\n}\n\n},{\"../../index\":291,\"../dropdown-toggle\":24,\"../with-dropdown\":288,\"./active-posters/root\":281,\"./nav\":282,\"./rank/root\":286,\"react\":\"react\",\"react-redux\":\"react-redux\"}],288:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n _classCallCheck(this, _class);\n\n var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).call(this, props));\n\n _this.toggleNav = function () {\n _this.setState({\n dropdown: !_this.state.dropdown\n });\n };\n\n _this.hideNav = function () {\n _this.setState({\n dropdown: false\n });\n };\n\n _this.state = {\n dropdown: false\n };\n return _this;\n }\n\n /* jshint ignore:start */\n\n\n _createClass(_class, [{\n key: 'getCompactNavClassName',\n\n /* jshint ignore:end */\n\n value: function getCompactNavClassName() {\n if (this.state.dropdown) {\n return 'compact-nav open';\n } else {\n return 'compact-nav';\n }\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],289:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require(\"react\");\n\nvar _react2 = _interopRequireDefault(_react);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, _class);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = _class.__proto__ || Object.getPrototypeOf(_class)).call.apply(_ref, [this].concat(args))), _this), _this.toggle = function () {\n _this.props.onChange({\n target: {\n value: !_this.props.value\n }\n });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(_class, [{\n key: \"getClassName\",\n value: function getClassName() {\n if (this.props.value) {\n return \"btn btn-yes-no btn-yes-no-on\";\n } else {\n return \"btn btn-yes-no btn-yes-no-off\";\n }\n }\n }, {\n key: \"getIcon\",\n value: function getIcon() {\n if (!!this.props.value) {\n return this.props.iconOn || 'check_box';\n } else {\n return this.props.iconOff || 'check_box_outline_blank';\n }\n }\n }, {\n key: \"getLabel\",\n value: function getLabel() {\n if (!!this.props.value) {\n return this.props.labelOn || gettext(\"yes\");\n } else {\n return this.props.labelOff || gettext(\"no\");\n }\n }\n\n /* jshint ignore:start */\n\n }, {\n key: \"render\",\n\n /* jshint ignore:end */\n\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement(\n \"button\",\n {\n type: \"button\",\n onClick: this.toggle,\n className: this.getClassName(),\n id: this.props.id || null,\n \"aria-describedby\": this.props['aria-describedby'] || null,\n disabled: this.props.disabled || false\n },\n _react2.default.createElement(\n \"span\",\n { className: \"material-icon\" },\n this.getIcon()\n ),\n _react2.default.createElement(\n \"span\",\n { className: \"btn-text\" },\n this.getLabel()\n )\n );\n /* jshint ignore:end */\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"react\":\"react\"}],290:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _profileDetails = require('../reducers/profile-details');\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; } /* jshint ignore:start */\n\n\nvar _class = function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments));\n }\n\n _createClass(_class, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _props = this.props,\n data = _props.data,\n dispatch = _props.dispatch,\n user = _props.user;\n\n if (data && data.id === user.id) return;\n\n _ajax2.default.get(this.props.user.api.details).then(function (data) {\n dispatch((0, _profileDetails.load)(data));\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n });\n }\n }, {\n key: 'render',\n value: function render() {\n return this.props.children;\n }\n }]);\n\n return _class;\n}(_react2.default.Component);\n\nexports.default = _class;\n\n},{\"../reducers/profile-details\":342,\"../services/ajax\":352,\"../services/snackbar\":363,\"react\":\"react\"}],291:[function(require,module,exports){\n(function (global){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Misago = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _orderedList = require('./utils/ordered-list');\n\nvar _orderedList2 = _interopRequireDefault(_orderedList);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Misago = exports.Misago = function () {\n function Misago() {\n _classCallCheck(this, Misago);\n\n this._initializers = [];\n this._context = {};\n }\n\n _createClass(Misago, [{\n key: 'addInitializer',\n value: function addInitializer(initializer) {\n this._initializers.push({\n key: initializer.name,\n\n item: initializer.initializer,\n\n after: initializer.after,\n before: initializer.before\n });\n }\n }, {\n key: 'init',\n value: function init(context) {\n var _this = this;\n\n this._context = context;\n\n var initOrder = new _orderedList2.default(this._initializers).orderedValues();\n initOrder.forEach(function (initializer) {\n initializer(_this);\n });\n }\n\n // context accessors\n\n }, {\n key: 'has',\n value: function has(key) {\n return !!this._context[key];\n }\n }, {\n key: 'get',\n value: function get(key, fallback) {\n if (this.has(key)) {\n return this._context[key];\n } else {\n return fallback || undefined;\n }\n }\n }, {\n key: 'pop',\n value: function pop(key) {\n if (this.has(key)) {\n var value = this._context[key];\n this._context[key] = null;\n return value;\n } else {\n return undefined;\n }\n }\n }]);\n\n return Misago;\n}();\n\n// create singleton\n\n\nvar misago = new Misago();\n\n// expose it globally\nglobal.misago = misago;\n\n// and export it for tests and stuff\nexports.default = misago;\n\n}).call(this,typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n},{\"./utils/ordered-list\":374}],292:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _ajax2.default.init(_index2.default.get('CSRF_COOKIE_NAME'));\n}\n\n_index2.default.addInitializer({\n name: 'ajax',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/ajax\":352}],293:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _auth = require('../reducers/auth');\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar AUTH_SYNC_RATE = 45; // sync user with backend every 45 seconds\n\nfunction initializer(context) {\n if (context.get('isAuthenticated')) {\n window.setInterval(function () {\n _ajax2.default.get(context.get('AUTH_API')).then(function (data) {\n _store2.default.dispatch((0, _auth.patch)(data));\n }, function (rejection) {\n _snackbar2.default.apiError(rejection);\n });\n }, AUTH_SYNC_RATE * 1000);\n }\n}\n\n_index2.default.addInitializer({\n name: 'auth-sync',\n initializer: initializer,\n after: 'auth'\n});\n\n},{\"../index\":291,\"../reducers/auth\":337,\"../services/ajax\":352,\"../services/snackbar\":363,\"../services/store\":364}],294:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _auth = require('../services/auth');\n\nvar _auth2 = _interopRequireDefault(_auth);\n\nvar _modal = require('../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nvar _localStorage = require('../services/local-storage');\n\nvar _localStorage2 = _interopRequireDefault(_localStorage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _auth2.default.init(_store2.default, _localStorage2.default, _modal2.default);\n}\n\n_index2.default.addInitializer({\n name: 'auth',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../index\":291,\"../services/auth\":353,\"../services/local-storage\":356,\"../services/modal\":358,\"../services/store\":364}],295:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _captcha = require('../services/captcha');\n\nvar _captcha2 = _interopRequireDefault(_captcha);\n\nvar _include = require('../services/include');\n\nvar _include2 = _interopRequireDefault(_include);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n _captcha2.default.init(context, _ajax2.default, _include2.default, _snackbar2.default);\n}\n\n_index2.default.addInitializer({\n name: 'captcha',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/ajax\":352,\"../services/captcha\":354,\"../services/include\":355,\"../services/snackbar\":363}],296:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _reactRedux = require('react-redux');\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _authMessage = require('../../components/auth-message');\n\nvar _authMessage2 = _interopRequireDefault(_authMessage);\n\nvar _mountComponent = require('../../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n (0, _mountComponent2.default)((0, _reactRedux.connect)(_authMessage.select)(_authMessage2.default), 'auth-message-mount');\n}\n\n_index2.default.addInitializer({\n name: 'component:auth-message',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/auth-message\":2,\"../../index\":291,\"../../utils/mount-component\":373,\"react-redux\":\"react-redux\"}],297:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _bannedPage = require('../../utils/banned-page');\n\nvar _bannedPage2 = _interopRequireDefault(_bannedPage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n if (context.has('BAN_MESSAGE')) {\n (0, _bannedPage2.default)(context.get('BAN_MESSAGE'), false);\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:banmed-page',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../index\":291,\"../../utils/banned-page\":366}],298:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _reactRedux = require('react-redux');\n\nvar _categories = require('../../components/categories');\n\nvar _categories2 = _interopRequireDefault(_categories);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _mountComponent = require('../../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n if (document.getElementById('categories-mount')) {\n (0, _mountComponent2.default)((0, _reactRedux.connect)(_categories.select)(_categories2.default), 'categories-mount');\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:categories',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/categories\":17,\"../../index\":291,\"../../utils/mount-component\":373,\"react-redux\":\"react-redux\"}],299:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _root = require('../../components/options/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _routedComponent = require('../../utils/routed-component');\n\nvar _routedComponent2 = _interopRequireDefault(_routedComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n if (context.has('USER_OPTIONS')) {\n (0, _routedComponent2.default)({\n root: _index2.default.get('USERCP_URL'),\n component: _root2.default,\n paths: (0, _root.paths)()\n });\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:options',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/options/root\":81,\"../../index\":291,\"../../utils/routed-component\":377}],300:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _reactRedux = require('react-redux');\n\nvar _root = require('../../components/profile/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _routedComponent = require('../../utils/routed-component');\n\nvar _routedComponent2 = _interopRequireDefault(_routedComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n if (context.has('PROFILE') && context.has('PROFILE_PAGES')) {\n (0, _routedComponent2.default)({\n root: _index2.default.get('PROFILE').url,\n component: (0, _reactRedux.connect)(_root.select)(_root2.default),\n paths: (0, _root.paths)()\n });\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:profile',\n initializer: initializer,\n after: 'reducer:profile-hydrate'\n});\n\n},{\"../../components/profile/root\":188,\"../../index\":291,\"../../utils/routed-component\":377,\"react-redux\":\"react-redux\"}],301:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _requestActivationLink = require('../../components/request-activation-link');\n\nvar _requestActivationLink2 = _interopRequireDefault(_requestActivationLink);\n\nvar _mountComponent = require('../../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n if (document.getElementById('request-activation-link-mount')) {\n (0, _mountComponent2.default)(_requestActivationLink2.default, 'request-activation-link-mount', false);\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:request-activation-link',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/request-activation-link\":193,\"../../index\":291,\"../../utils/mount-component\":373}],302:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _requestPasswordReset = require('../../components/request-password-reset');\n\nvar _requestPasswordReset2 = _interopRequireDefault(_requestPasswordReset);\n\nvar _mountComponent = require('../../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n if (document.getElementById('request-password-reset-mount')) {\n (0, _mountComponent2.default)(_requestPasswordReset2.default, 'request-password-reset-mount', false);\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:request-password-reset',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/request-password-reset\":194,\"../../index\":291,\"../../utils/mount-component\":373}],303:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _resetPasswordForm = require('../../components/reset-password-form');\n\nvar _resetPasswordForm2 = _interopRequireDefault(_resetPasswordForm);\n\nvar _mountComponent = require('../../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n if (document.getElementById('reset-password-form-mount')) {\n (0, _mountComponent2.default)(_resetPasswordForm2.default, 'reset-password-form-mount', false);\n }\n}\n\n_2.default.addInitializer({\n name: 'component:reset-password-form',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../..\":291,\"../../components/reset-password-form\":195,\"../../utils/mount-component\":373}],304:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _search = require('../../components/search');\n\nvar _search2 = _interopRequireDefault(_search);\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _routedComponent = require('../../utils/routed-component');\n\nvar _routedComponent2 = _interopRequireDefault(_routedComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n if (context.get('CURRENT_LINK') === 'misago:search') {\n (0, _routedComponent2.default)({\n paths: (0, _search2.default)(_2.default.get('SEARCH_PROVIDERS'))\n });\n }\n}\n\n_2.default.addInitializer({\n name: 'component:search',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../..\":291,\"../../components/search\":197,\"../../utils/routed-component\":377}],305:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _reactRedux = require('react-redux');\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _snackbar = require('../../components/snackbar');\n\nvar _mountComponent = require('../../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n (0, _mountComponent2.default)((0, _reactRedux.connect)(_snackbar.select)(_snackbar.Snackbar), 'snackbar-mount');\n}\n\n_index2.default.addInitializer({\n name: 'component:snackbar',\n initializer: initializer,\n after: 'snackbar'\n});\n\n},{\"../../components/snackbar\":205,\"../../index\":291,\"../../utils/mount-component\":373,\"react-redux\":\"react-redux\"}],306:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _root = require('../../components/thread/root');\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _routedComponent = require('../../utils/routed-component');\n\nvar _routedComponent2 = _interopRequireDefault(_routedComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n if (context.has('THREAD') && context.has('POSTS')) {\n (0, _routedComponent2.default)({\n paths: (0, _root.paths)()\n });\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:thread',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/thread/root\":222,\"../../index\":291,\"../../utils/routed-component\":377}],307:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\nexports.getListOptions = getListOptions;\n\nvar _root = require('../../components/threads/root');\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _routedComponent = require('../../utils/routed-component');\n\nvar _routedComponent2 = _interopRequireDefault(_routedComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar PRIVATE_THREADS_LIST = 'misago:private-threads';\n\nfunction initializer(context) {\n if (context.has('THREADS') && context.has('CATEGORIES')) {\n (0, _routedComponent2.default)({\n paths: (0, _root.paths)(context.get('user'), getListOptions(context))\n });\n }\n}\n\nfunction getListOptions(context) {\n var currentLink = context.get('CURRENT_LINK');\n if (currentLink.substr(0, PRIVATE_THREADS_LIST.length) === PRIVATE_THREADS_LIST) {\n return {\n api: context.get('PRIVATE_THREADS_API'),\n startThread: {\n mode: 'START_PRIVATE',\n submit: _index2.default.get('PRIVATE_THREADS_API')\n },\n title: gettext(\"Private threads\"),\n pageLead: gettext(\"Private threads are threads which only those that started them and those they have invited may see and participate in.\"),\n emptyMessage: gettext(\"You aren't participating in any private threads.\")\n };\n }\n\n return {\n 'api': context.get('THREADS_API')\n };\n}\n\n_index2.default.addInitializer({\n name: 'component:threads',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/threads/root\":256,\"../../index\":291,\"../../utils/routed-component\":377}],308:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _reactRedux = require('react-redux');\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _root = require('../../components/user-menu/root');\n\nvar _mountComponent = require('../../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n (0, _mountComponent2.default)((0, _reactRedux.connect)(_root.select)(_root.UserMenu), 'user-menu-mount');\n (0, _mountComponent2.default)((0, _reactRedux.connect)(_root.select)(_root.CompactUserMenu), 'user-menu-compact-mount');\n}\n\n_index2.default.addInitializer({\n name: 'component:user-menu',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/user-menu/root\":261,\"../../index\":291,\"../../utils/mount-component\":373,\"react-redux\":\"react-redux\"}],309:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _root = require('../../components/users/root');\n\nvar _root2 = _interopRequireDefault(_root);\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _routedComponent = require('../../utils/routed-component');\n\nvar _routedComponent2 = _interopRequireDefault(_routedComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n if (context.has('USERS_LISTS')) {\n (0, _routedComponent2.default)({\n root: _index2.default.get('USERS_LIST_URL'),\n component: _root2.default,\n paths: (0, _root.paths)()\n });\n }\n}\n\n_index2.default.addInitializer({\n name: 'component:users',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../components/users/root\":287,\"../../index\":291,\"../../utils/routed-component\":377}],310:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _include = require('../services/include');\n\nvar _include2 = _interopRequireDefault(_include);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n _include2.default.init(context.get('STATIC_URL'));\n}\n\n_index2.default.addInitializer({\n name: 'include',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/include\":355}],311:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _localStorage = require('../services/local-storage');\n\nvar _localStorage2 = _interopRequireDefault(_localStorage);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _localStorage2.default.init('misago_');\n}\n\n_index2.default.addInitializer({\n name: 'local-storage',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/local-storage\":356}],312:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _mobileNavbarDropdown = require('../services/mobile-navbar-dropdown');\n\nvar _mobileNavbarDropdown2 = _interopRequireDefault(_mobileNavbarDropdown);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n var element = document.getElementById('mobile-navbar-dropdown-mount');\n if (element) {\n _mobileNavbarDropdown2.default.init(element);\n }\n}\n\n_index2.default.addInitializer({\n name: 'dropdown',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../index\":291,\"../services/mobile-navbar-dropdown\":357}],313:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _modal = require('../services/modal');\n\nvar _modal2 = _interopRequireDefault(_modal);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n var element = document.getElementById('modal-mount');\n if (element) {\n _modal2.default.init(element);\n }\n}\n\n_index2.default.addInitializer({\n name: 'modal',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../index\":291,\"../services/modal\":358}],314:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _moment2.default.locale($('html').attr('lang'));\n}\n\n_index2.default.addInitializer({\n name: 'moment',\n initializer: initializer\n});\n\n},{\"../index\":291,\"moment\":\"moment\"}],315:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _pageTitle = require('../services/page-title');\n\nvar _pageTitle2 = _interopRequireDefault(_pageTitle);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n _pageTitle2.default.init(context.get('SETTINGS').forum_index_title, context.get('SETTINGS').forum_name);\n}\n\n_index2.default.addInitializer({\n name: 'page-title',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/page-title\":360}],316:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _polls = require('../services/polls');\n\nvar _polls2 = _interopRequireDefault(_polls);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _polls2.default.init(_ajax2.default, _snackbar2.default);\n}\n\n_index2.default.addInitializer({\n name: 'polls',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/ajax\":352,\"../services/polls\":361,\"../services/snackbar\":363}],317:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _ajax = require('../services/ajax');\n\nvar _ajax2 = _interopRequireDefault(_ajax);\n\nvar _posting = require('../services/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _posting2.default.init(_ajax2.default, _snackbar2.default, document.getElementById('posting-placeholder'));\n}\n\n_index2.default.addInitializer({\n name: 'posting',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/ajax\":352,\"../services/posting\":362,\"../services/snackbar\":363}],318:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _auth = require('../../reducers/auth');\n\nvar _auth2 = _interopRequireDefault(_auth);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer(context) {\n _store2.default.addReducer('auth', _auth2.default, Object.assign({\n isAuthenticated: context.get('isAuthenticated'),\n isAnonymous: !context.get('isAuthenticated'),\n\n user: context.get('user')\n }, _auth.initialState));\n}\n\n_index2.default.addInitializer({\n name: 'reducer:auth',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/auth\":337,\"../../services/store\":364}],319:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _participants = require('../../reducers/participants');\n\nvar _participants2 = _interopRequireDefault(_participants);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n var initialState = null;\n if (_index2.default.has('THREAD')) {\n initialState = _index2.default.get('THREAD').participants;\n }\n\n _store2.default.addReducer('participants', _participants2.default, initialState || []);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:participants',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/participants\":338,\"../../services/store\":364}],320:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _poll = require('../../reducers/poll');\n\nvar _poll2 = _interopRequireDefault(_poll);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n var initialState = null;\n if (_index2.default.has('THREAD') && _index2.default.get('THREAD').poll) {\n initialState = (0, _poll.hydrate)(_index2.default.get('THREAD').poll);\n } else {\n initialState = {\n isBusy: false\n };\n }\n\n _store2.default.addReducer('poll', _poll2.default, initialState);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:poll',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/poll\":339,\"../../services/store\":364}],321:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _posts = require('../../reducers/posts');\n\nvar _posts2 = _interopRequireDefault(_posts);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n var initialState = null;\n if (_index2.default.has('POSTS')) {\n initialState = (0, _posts.hydrate)(_index2.default.get('POSTS'));\n } else {\n initialState = {\n isLoaded: false,\n isBusy: false\n };\n }\n\n _store2.default.addReducer('posts', _posts2.default, initialState);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:posts',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/posts\":341,\"../../services/store\":364}],322:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _profileDetails = require('../../reducers/profile-details');\n\nvar _profileDetails2 = _interopRequireDefault(_profileDetails);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n var initialState = null;\n if (_index2.default.has('PROFILE_DETAILS')) {\n initialState = _index2.default.get('PROFILE_DETAILS');\n }\n\n _store2.default.addReducer('profile-details', _profileDetails2.default, initialState || {});\n}\n\n_index2.default.addInitializer({\n name: 'reducer:profile-details',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/profile-details\":342,\"../../services/store\":364}],323:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _profile = require('../../reducers/profile');\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n if (_index2.default.has('PROFILE')) {\n _store2.default.dispatch((0, _profile.hydrate)(_index2.default.get('PROFILE')));\n }\n}\n\n_index2.default.addInitializer({\n name: 'reducer:profile-hydrate',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/profile\":343,\"../../services/store\":364}],324:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _profile = require('../../reducers/profile');\n\nvar _profile2 = _interopRequireDefault(_profile);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('profile', _profile2.default, {});\n}\n\n_index2.default.addInitializer({\n name: 'reducer:profile',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/profile\":343,\"../../services/store\":364}],325:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _ = require('../..');\n\nvar _2 = _interopRequireDefault(_);\n\nvar _search = require('../../reducers/search');\n\nvar _search2 = _interopRequireDefault(_search);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('search', _search2.default, Object.assign({}, _search.initialState, {\n providers: _2.default.get('SEARCH_PROVIDERS') || [],\n query: _2.default.get('SEARCH_QUERY') || ''\n }));\n}\n\n_2.default.addInitializer({\n name: 'reducer:search',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../..\":291,\"../../reducers/search\":344,\"../../services/store\":364}],326:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _selection = require('../../reducers/selection');\n\nvar _selection2 = _interopRequireDefault(_selection);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('selection', _selection2.default, []);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:selection',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/selection\":345,\"../../services/store\":364}],327:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _snackbar = require('../../reducers/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('snackbar', _snackbar2.default, _snackbar.initialState);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:snackbar',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/snackbar\":346,\"../../services/store\":364}],328:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _thread = require('../../reducers/thread');\n\nvar _thread2 = _interopRequireDefault(_thread);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n var initialState = null;\n if (_index2.default.has('THREAD')) {\n initialState = (0, _thread.hydrate)(_index2.default.get('THREAD'));\n } else {\n initialState = {\n isBusy: false\n };\n }\n\n _store2.default.addReducer('thread', _thread2.default, initialState);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:thread',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/thread\":347,\"../../services/store\":364}],329:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _threads = require('../../reducers/threads');\n\nvar _threads2 = _interopRequireDefault(_threads);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('threads', _threads2.default, []);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:threads',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/threads\":348,\"../../services/store\":364}],330:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _tick = require('../../reducers/tick');\n\nvar _tick2 = _interopRequireDefault(_tick);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('tick', _tick2.default, _tick.initialState);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:tick',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/tick\":349,\"../../services/store\":364}],331:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _usernameHistory = require('../../reducers/username-history');\n\nvar _usernameHistory2 = _interopRequireDefault(_usernameHistory);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('username-history', _usernameHistory2.default, []);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:username-history',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/username-history\":350,\"../../services/store\":364}],332:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _users = require('../../reducers/users');\n\nvar _users2 = _interopRequireDefault(_users);\n\nvar _store = require('../../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.addReducer('users', _users2.default, []);\n}\n\n_index2.default.addInitializer({\n name: 'reducer:users',\n initializer: initializer,\n before: 'store'\n});\n\n},{\"../../index\":291,\"../../reducers/users\":351,\"../../services/store\":364}],333:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _snackbar = require('../services/snackbar');\n\nvar _snackbar2 = _interopRequireDefault(_snackbar);\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _snackbar2.default.init(_store2.default);\n}\n\n_index2.default.addInitializer({\n name: 'snackbar',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../index\":291,\"../services/snackbar\":363,\"../services/store\":364}],334:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _store2.default.init();\n}\n\n_index2.default.addInitializer({\n name: 'store',\n initializer: initializer,\n before: '_end'\n});\n\n},{\"../index\":291,\"../services/store\":364}],335:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _tick = require('../reducers/tick');\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar TICK_PERIOD = 50 * 1000; //do the tick every 50s\n\nfunction initializer() {\n window.setInterval(function () {\n _store2.default.dispatch((0, _tick.doTick)());\n }, TICK_PERIOD);\n}\n\n_index2.default.addInitializer({\n name: 'tick-start',\n initializer: initializer,\n after: 'store'\n});\n\n},{\"../index\":291,\"../reducers/tick\":349,\"../services/store\":364}],336:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = initializer;\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _include = require('../services/include');\n\nvar _include2 = _interopRequireDefault(_include);\n\nvar _zxcvbn = require('../services/zxcvbn');\n\nvar _zxcvbn2 = _interopRequireDefault(_zxcvbn);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction initializer() {\n _zxcvbn2.default.init(_include2.default);\n}\n\n_index2.default.addInitializer({\n name: 'zxcvbn',\n initializer: initializer\n});\n\n},{\"../index\":291,\"../services/include\":355,\"../services/zxcvbn\":365}],337:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SIGN_OUT = exports.SIGN_IN = exports.PATCH_USER = exports.initialState = undefined;\nexports.patch = patch;\nexports.signIn = signIn;\nexports.signOut = signOut;\nexports.default = auth;\n\nvar _users = require('./users');\n\nvar initialState = exports.initialState = {\n signedIn: false,\n signedOut: false\n};\n\nvar PATCH_USER = exports.PATCH_USER = 'PATCH_USER';\nvar SIGN_IN = exports.SIGN_IN = 'SIGN_IN';\nvar SIGN_OUT = exports.SIGN_OUT = 'SIGN_OUT';\n\nfunction patch(patch) {\n return {\n type: PATCH_USER,\n patch: patch\n };\n}\n\nfunction signIn(user) {\n return {\n type: SIGN_IN,\n user: user\n };\n}\n\nfunction signOut() {\n var soft = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n return {\n type: SIGN_OUT,\n soft: soft\n };\n}\n\nfunction auth() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case PATCH_USER:\n var newState = Object.assign({}, state);\n newState.user = Object.assign({}, state.user, action.patch);\n return newState;\n\n case SIGN_IN:\n return Object.assign({}, state, {\n signedIn: action.user\n });\n\n case SIGN_OUT:\n return Object.assign({}, state, {\n isAuthenticated: false,\n isAnonymous: true,\n signedOut: !action.soft\n });\n\n case _users.UPDATE_AVATAR:\n if (state.isAuthenticated && state.user.id === action.userId) {\n var _newState = Object.assign({}, state);\n _newState.user = Object.assign({}, state.user, {\n 'avatars': action.avatars\n });\n return _newState;\n }\n return state;\n\n case _users.UPDATE_USERNAME:\n if (state.isAuthenticated && state.user.id === action.userId) {\n var _newState2 = Object.assign({}, state);\n _newState2.user = Object.assign({}, state.user, {\n username: action.username,\n slug: action.slug\n });\n return _newState2;\n }\n return state;\n\n default:\n return state;\n }\n}\n\n},{\"./users\":351}],338:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.replace = replace;\nexports.default = participants;\nvar REPLACE_PARTICIPANTS = exports.REPLACE_PARTICIPANTS = 'REPLACE_PARTICIPANTS';\n\nfunction replace(newState) {\n return {\n type: REPLACE_PARTICIPANTS,\n state: newState\n };\n}\n\nfunction participants() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case REPLACE_PARTICIPANTS:\n return action.state;\n\n default:\n return state;\n }\n}\n\n},{}],339:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.UPDATE_POLL = exports.REPLACE_POLL = exports.REMOVE_POLL = exports.RELEASE_POLL = exports.BUSY_POLL = undefined;\nexports.hydrate = hydrate;\nexports.busy = busy;\nexports.release = release;\nexports.replace = replace;\nexports.update = update;\nexports.remove = remove;\nexports.default = poll;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar BUSY_POLL = exports.BUSY_POLL = 'BUSY_POLL';\nvar RELEASE_POLL = exports.RELEASE_POLL = 'RELEASE_POLL';\nvar REMOVE_POLL = exports.REMOVE_POLL = 'REMOVE_POLL';\nvar REPLACE_POLL = exports.REPLACE_POLL = 'REPLACE_POLL';\nvar UPDATE_POLL = exports.UPDATE_POLL = 'UPDATE_POLL';\n\nfunction hydrate(json) {\n var hasSelectedChoices = false;\n for (var i in json.choices) {\n var choice = json.choices[i];\n if (choice.selected) {\n hasSelectedChoices = true;\n break;\n }\n }\n\n return Object.assign({}, json, {\n posted_on: (0, _moment2.default)(json.posted_on),\n\n hasSelectedChoices: hasSelectedChoices,\n endsOn: json.length ? (0, _moment2.default)(json.posted_on).add(json.length, 'days') : null,\n\n isBusy: false\n });\n}\n\nfunction busy() {\n return {\n type: BUSY_POLL\n };\n}\n\nfunction release() {\n return {\n type: RELEASE_POLL\n };\n}\n\nfunction replace(newState) {\n var hydrated = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n return {\n type: REPLACE_POLL,\n state: hydrated ? newState : hydrate(newState)\n };\n}\n\nfunction update(data) {\n return {\n type: UPDATE_POLL,\n data: data\n };\n}\n\nfunction remove() {\n return {\n type: REMOVE_POLL\n };\n}\n\nfunction poll() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case BUSY_POLL:\n return Object.assign({}, state, { isBusy: true });\n\n case RELEASE_POLL:\n return Object.assign({}, state, { isBusy: false });\n\n case REMOVE_POLL:\n return {\n isBusy: false\n };\n\n case REPLACE_POLL:\n return action.state;\n\n case UPDATE_POLL:\n return Object.assign({}, state, action.data);\n\n default:\n return state;\n }\n}\n\n},{\"moment\":\"moment\"}],340:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.PATCH_POST = undefined;\nexports.hydrate = hydrate;\nexports.hydrateAttachment = hydrateAttachment;\nexports.patch = patch;\nexports.default = post;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _users = require('./users');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar PATCH_POST = exports.PATCH_POST = 'PATCH_POST';\n\nfunction hydrate(json) {\n return Object.assign({}, json, {\n posted_on: (0, _moment2.default)(json.posted_on),\n updated_on: (0, _moment2.default)(json.updated_on),\n hidden_on: (0, _moment2.default)(json.hidden_on),\n\n attachments: json.attachments ? json.attachments.map(hydrateAttachment) : null,\n poster: json.poster ? (0, _users.hydrateUser)(json.poster) : null,\n\n isSelected: false,\n isBusy: false,\n isDeleted: false\n });\n}\n\nfunction hydrateAttachment(json) {\n return Object.assign({}, json, {\n uploaded_on: (0, _moment2.default)(json.uploaded_on)\n });\n}\n\nfunction patch(post, patch) {\n return {\n type: PATCH_POST,\n post: post,\n patch: patch\n };\n}\n\nfunction post() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case PATCH_POST:\n if (state.id == action.post.id) {\n return Object.assign({}, state, action.patch);\n }\n return state;\n\n default:\n return state;\n }\n}\n\n},{\"./users\":351,\"moment\":\"moment\"}],341:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.UPDATE_POSTS = exports.UNLOAD_POSTS = exports.LOAD_POSTS = exports.DESELECT_POSTS = exports.DESELECT_POST = exports.SELECT_POST = exports.APPEND_POSTS = undefined;\nexports.select = select;\nexports.deselect = deselect;\nexports.deselectAll = deselectAll;\nexports.hydrate = hydrate;\nexports.load = load;\nexports.append = append;\nexports.unload = unload;\nexports.update = update;\nexports.default = posts;\n\nvar _post = require('./post');\n\nvar _post2 = _interopRequireDefault(_post);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar APPEND_POSTS = exports.APPEND_POSTS = 'APPEND_POSTS';\nvar SELECT_POST = exports.SELECT_POST = 'SELECT_POST';\nvar DESELECT_POST = exports.DESELECT_POST = 'DESELECT_POST';\nvar DESELECT_POSTS = exports.DESELECT_POSTS = 'DESELECT_POSTS';\nvar LOAD_POSTS = exports.LOAD_POSTS = 'LOAD_POSTS';\nvar UNLOAD_POSTS = exports.UNLOAD_POSTS = 'UNLOAD_POSTS';\nvar UPDATE_POSTS = exports.UPDATE_POSTS = 'UPDATE_POSTS';\n\nfunction select(post) {\n return {\n type: SELECT_POST,\n post: post\n };\n}\n\nfunction deselect(post) {\n return {\n type: DESELECT_POST,\n post: post\n };\n}\n\nfunction deselectAll() {\n return {\n type: DESELECT_POSTS\n };\n}\n\nfunction hydrate(json) {\n return Object.assign({}, json, {\n results: json.results.map(_post.hydrate),\n isLoaded: true,\n isBusy: false,\n isSelected: false\n });\n}\n\nfunction load(newState) {\n var hydrated = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n return {\n type: LOAD_POSTS,\n state: hydrated ? newState : hydrate(newState)\n };\n}\n\nfunction append(newState) {\n var hydrated = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n return {\n type: APPEND_POSTS,\n state: hydrated ? newState : hydrate(newState)\n };\n}\n\nfunction unload() {\n return {\n type: UNLOAD_POSTS\n };\n}\n\nfunction update(newState) {\n return {\n type: UPDATE_POSTS,\n update: newState\n };\n}\n\nfunction posts() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case SELECT_POST:\n var selectedPosts = state.results.map(function (post) {\n if (post.id == action.post.id) {\n return Object.assign({}, post, {\n isSelected: true\n });\n } else {\n return post;\n }\n });\n\n return Object.assign({}, state, {\n results: selectedPosts\n });\n\n case DESELECT_POST:\n var deseletedPosts = state.results.map(function (post) {\n if (post.id == action.post.id) {\n return Object.assign({}, post, {\n isSelected: false\n });\n } else {\n return post;\n }\n });\n\n return Object.assign({}, state, {\n results: deseletedPosts\n });\n\n case DESELECT_POSTS:\n var deseletedAllPosts = state.results.map(function (post) {\n return Object.assign({}, post, {\n isSelected: false\n });\n });\n\n return Object.assign({}, state, {\n results: deseletedAllPosts\n });\n\n case APPEND_POSTS:\n var results = state.results.slice();\n var resultsIds = state.results.map(function (post) {\n return post.id;\n });\n\n action.state.results.map(function (post) {\n if (resultsIds.indexOf(post.id) === -1) {\n results.push(post);\n }\n });\n\n return Object.assign({}, action.state, {\n results: results\n });\n\n case LOAD_POSTS:\n return action.state;\n\n case UNLOAD_POSTS:\n return Object.assign({}, state, {\n isLoaded: false\n });\n\n case UPDATE_POSTS:\n return Object.assign({}, state, action.update);\n\n case _post.PATCH_POST:\n var reducedPosts = state.results.map(function (post) {\n return (0, _post2.default)(post, action);\n });\n\n return Object.assign({}, state, {\n results: reducedPosts\n });\n\n default:\n return state;\n }\n}\n\n},{\"./post\":340}],342:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.load = load;\nexports.default = details;\nvar LOAD_DETAILS = exports.LOAD_DETAILS = 'LOAD_DETAILS';\n\nfunction load(newState) {\n return {\n type: LOAD_DETAILS,\n\n newState: newState\n };\n}\n\nfunction details() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case LOAD_DETAILS:\n return action.newState;\n\n default:\n return state;\n }\n}\n\n},{}],343:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.PATCH_PROFILE = exports.HYDRATE_PROFILE = undefined;\nexports.hydrate = hydrate;\nexports.patch = patch;\nexports.default = auth;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _users = require('./users');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar HYDRATE_PROFILE = exports.HYDRATE_PROFILE = 'HYDRATE_PROFILE';\nvar PATCH_PROFILE = exports.PATCH_PROFILE = 'PATCH_PROFILE';\n\nfunction hydrate(profile) {\n return {\n type: HYDRATE_PROFILE,\n profile: profile\n };\n}\n\nfunction patch(patch) {\n return {\n type: PATCH_PROFILE,\n patch: patch\n };\n}\n\nfunction auth() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case HYDRATE_PROFILE:\n return Object.assign({}, action.profile, {\n joined_on: (0, _moment2.default)(action.profile.joined_on),\n status: (0, _users.hydrateStatus)(action.profile.status)\n });\n\n case PATCH_PROFILE:\n return Object.assign({}, state, action.patch);\n\n case _users.UPDATE_AVATAR:\n if (state.id === action.userId) {\n return Object.assign({}, state, {\n avatars: action.avatars\n });\n }\n return state;\n\n case _users.UPDATE_USERNAME:\n if (state.id === action.userId) {\n return Object.assign({}, state, {\n username: action.username,\n slug: action.slug\n });\n }\n return state;\n\n default:\n return state;\n }\n}\n\n},{\"./users\":351,\"moment\":\"moment\"}],344:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.replace = replace;\nexports.update = update;\nexports.updateProvider = updateProvider;\nexports.default = participants;\nvar REPLACE_SEARCH = exports.REPLACE_SEARCH = 'REPLACE_SEARCH';\nvar UPDATE_SEARCH = exports.UPDATE_SEARCH = 'UPDATE_SEARCH';\nvar UPDATE_SEARCH_PROVIDER = exports.UPDATE_SEARCH_PROVIDER = 'UPDATE_SEARCH_PROVIDER';\n\nvar initialState = exports.initialState = {\n isLoading: false,\n query: '',\n providers: []\n};\n\nfunction replace(newState) {\n return {\n type: REPLACE_SEARCH,\n state: {\n isLoading: false,\n providers: newState\n }\n };\n}\n\nfunction update(newState) {\n return {\n type: UPDATE_SEARCH,\n update: newState\n };\n}\n\nfunction updateProvider(provider) {\n return {\n type: UPDATE_SEARCH_PROVIDER,\n provider: provider\n };\n}\n\nfunction participants() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case REPLACE_SEARCH:\n return action.state;\n\n case UPDATE_SEARCH:\n return Object.assign({}, state, action.update);\n\n case UPDATE_SEARCH_PROVIDER:\n return Object.assign({}, state, {\n providers: state.providers.map(function (provider) {\n if (provider.id === action.provider.id) {\n return action.provider;\n } else {\n return provider;\n }\n })\n });\n\n default:\n return state;\n }\n}\n\n},{}],345:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SELECT_ITEM = exports.SELECT_NONE = exports.SELECT_ALL = undefined;\nexports.all = all;\nexports.none = none;\nexports.item = item;\nexports.default = selection;\n\nvar _sets = require('../utils/sets');\n\nvar SELECT_ALL = exports.SELECT_ALL = 'SELECT_ALL';\nvar SELECT_NONE = exports.SELECT_NONE = 'SELECT_NONE';\nvar SELECT_ITEM = exports.SELECT_ITEM = 'SELECT_ITEM';\n\nfunction all(itemsIds) {\n return {\n type: SELECT_ALL,\n items: itemsIds\n };\n}\n\nfunction none() {\n return {\n type: SELECT_NONE\n };\n}\n\nfunction item(itemId) {\n return {\n type: SELECT_ITEM,\n item: itemId\n };\n}\n\nfunction selection() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case SELECT_ALL:\n return action.items;\n\n case SELECT_NONE:\n return [];\n\n case SELECT_ITEM:\n return (0, _sets.toggle)(state, action.item);\n\n default:\n return state;\n }\n}\n\n},{\"../utils/sets\":378}],346:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.showSnackbar = showSnackbar;\nexports.hideSnackbar = hideSnackbar;\nexports.default = snackbar;\nvar initialState = exports.initialState = {\n type: 'info',\n message: '',\n isVisible: false\n};\n\nvar SHOW_SNACKBAR = exports.SHOW_SNACKBAR = 'SHOW_SNACKBAR';\nvar HIDE_SNACKBAR = exports.HIDE_SNACKBAR = 'HIDE_SNACKBAR';\n\nfunction showSnackbar(message, type) {\n return {\n type: SHOW_SNACKBAR,\n message: message,\n messageType: type\n };\n}\n\nfunction hideSnackbar() {\n return {\n type: HIDE_SNACKBAR\n };\n}\n\nfunction snackbar() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n if (action.type === SHOW_SNACKBAR) {\n return {\n type: action.messageType,\n message: action.message,\n isVisible: true\n };\n } else if (action.type === HIDE_SNACKBAR) {\n return Object.assign({}, state, {\n isVisible: false\n });\n } else {\n return state;\n }\n}\n\n},{}],347:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.UPDATE_THREAD_ACL = exports.UPDATE_THREAD = exports.REPLACE_THREAD = exports.RELEASE_THREAD = exports.BUSY_THREAD = undefined;\nexports.hydrate = hydrate;\nexports.busy = busy;\nexports.release = release;\nexports.replace = replace;\nexports.update = update;\nexports.updateAcl = updateAcl;\nexports.default = thread;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _poll = require('./poll');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar BUSY_THREAD = exports.BUSY_THREAD = 'BUSY_THREAD';\nvar RELEASE_THREAD = exports.RELEASE_THREAD = 'RELEASE_THREAD';\nvar REPLACE_THREAD = exports.REPLACE_THREAD = 'REPLACE_THREAD';\nvar UPDATE_THREAD = exports.UPDATE_THREAD = 'UPDATE_THREAD';\nvar UPDATE_THREAD_ACL = exports.UPDATE_THREAD_ACL = 'UPDATE_THREAD_ACL';\n\nfunction hydrate(json) {\n return Object.assign({}, json, {\n started_on: (0, _moment2.default)(json.started_on),\n last_post_on: (0, _moment2.default)(json.last_post_on),\n\n isBusy: false\n });\n}\n\nfunction busy() {\n return {\n type: BUSY_THREAD\n };\n}\n\nfunction release() {\n return {\n type: RELEASE_THREAD\n };\n}\n\nfunction replace(newState) {\n var hydrated = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n return {\n type: REPLACE_THREAD,\n state: hydrated ? newState : hydrate(newState)\n };\n}\n\nfunction update(data) {\n return {\n type: UPDATE_THREAD,\n data: data\n };\n}\n\nfunction updateAcl(data) {\n return {\n type: UPDATE_THREAD_ACL,\n data: data\n };\n}\n\nfunction thread() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case BUSY_THREAD:\n return Object.assign({}, state, { isBusy: true });\n\n case RELEASE_THREAD:\n return Object.assign({}, state, { isBusy: false });\n\n case _poll.REMOVE_POLL:\n return Object.assign({}, state, { poll: null });\n\n case _poll.REPLACE_POLL:\n return Object.assign({}, state, { poll: action.state });\n\n case REPLACE_THREAD:\n return action.state;\n\n case UPDATE_THREAD:\n return Object.assign({}, state, action.data);\n\n case UPDATE_THREAD_ACL:\n var acl = Object.assign({}, state.acl, action.data);\n return Object.assign({}, state, { acl: acl });\n\n default:\n return state;\n }\n}\n\n},{\"./poll\":339,\"moment\":\"moment\"}],348:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.MODERATION_PERMISSIONS = exports.SORT_THREADS = exports.PATCH_THREAD = exports.HYDRATE_THREADS = exports.FILTER_THREADS = exports.DELETE_THREAD = exports.APPEND_THREADS = undefined;\nexports.append = append;\nexports.deleteThread = deleteThread;\nexports.filterThreads = filterThreads;\nexports.hydrate = hydrate;\nexports.patch = patch;\nexports.sort = sort;\nexports.getThreadModerationOptions = getThreadModerationOptions;\nexports.hydrateThread = hydrateThread;\nexports.default = thread;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _concatUnique = require('../utils/concat-unique');\n\nvar _concatUnique2 = _interopRequireDefault(_concatUnique);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar APPEND_THREADS = exports.APPEND_THREADS = 'APPEND_THREADS';\nvar DELETE_THREAD = exports.DELETE_THREAD = 'DELETE_THREAD';\nvar FILTER_THREADS = exports.FILTER_THREADS = 'FILTER_THREADS';\nvar HYDRATE_THREADS = exports.HYDRATE_THREADS = 'HYDRATE_THREADS';\nvar PATCH_THREAD = exports.PATCH_THREAD = 'PATCH_THREAD';\nvar SORT_THREADS = exports.SORT_THREADS = 'SORT_THREADS';\n\nvar MODERATION_PERMISSIONS = exports.MODERATION_PERMISSIONS = ['can_announce', 'can_approve', 'can_close', 'can_hide', 'can_move', 'can_merge', 'can_pin', 'can_review'];\n\nfunction append(items, sorting) {\n return {\n type: APPEND_THREADS,\n items: items,\n sorting: sorting\n };\n}\n\nfunction deleteThread(thread) {\n return {\n type: DELETE_THREAD,\n thread: thread\n };\n}\n\nfunction filterThreads(category, categoriesMap) {\n return {\n type: FILTER_THREADS,\n category: category,\n categoriesMap: categoriesMap\n };\n}\n\nfunction hydrate(items) {\n return {\n type: HYDRATE_THREADS,\n items: items\n };\n}\n\nfunction patch(thread, patch) {\n var sorting = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n\n return {\n type: PATCH_THREAD,\n thread: thread,\n patch: patch,\n sorting: sorting\n };\n}\n\nfunction sort(sorting) {\n return {\n type: SORT_THREADS,\n sorting: sorting\n };\n}\n\nfunction getThreadModerationOptions(thread_acl) {\n var options = [];\n MODERATION_PERMISSIONS.forEach(function (perm) {\n if (thread_acl[perm]) {\n options.push(perm);\n }\n });\n return options;\n}\n\nfunction hydrateThread(thread) {\n return Object.assign({}, thread, {\n started_on: (0, _moment2.default)(thread.started_on),\n last_post_on: (0, _moment2.default)(thread.last_post_on),\n moderation: getThreadModerationOptions(thread.acl)\n });\n}\n\nfunction thread() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case APPEND_THREADS:\n var mergedState = (0, _concatUnique2.default)(action.items.map(hydrateThread), state);\n return mergedState.sort(action.sorting);\n\n case DELETE_THREAD:\n return state.filter(function (item) {\n return item.id !== action.thread.id;\n });\n\n case FILTER_THREADS:\n return state.filter(function (item) {\n var itemCategory = action.categoriesMap[item.category];\n if (itemCategory.lft >= action.category.lft && itemCategory.rght <= action.category.rght) {\n // same or sub category\n return true;\n } else if (item.weight == 2) {\n // globally pinned\n return true;\n } else {\n // thread moved outside displayed scope, hide it\n return false;\n }\n });\n\n case HYDRATE_THREADS:\n return action.items.map(hydrateThread);\n\n case PATCH_THREAD:\n var patchedState = state.map(function (item) {\n if (item.id === action.thread.id) {\n return Object.assign({}, item, action.patch);\n } else {\n return item;\n }\n });\n\n if (action.sorting) {\n return patchedState.sort(action.sorting);\n }\n return patchedState;\n\n case SORT_THREADS:\n return state.sort(action.sorting);\n\n default:\n return state;\n }\n}\n\n},{\"../utils/concat-unique\":368,\"moment\":\"moment\"}],349:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.doTick = doTick;\nexports.default = tick;\nvar initialState = exports.initialState = {\n tick: 0\n};\n\nvar TICK = exports.TICK = 'TICK';\n\nfunction doTick() {\n return {\n type: TICK\n };\n}\n\nfunction tick() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n if (action.type === TICK) {\n return Object.assign({}, state, {\n tick: state.tick + 1\n });\n } else {\n return state;\n }\n}\n\n},{}],350:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.HYDRATE_HISTORY = exports.APPEND_HISTORY = exports.ADD_NAME_CHANGE = undefined;\nexports.addNameChange = addNameChange;\nexports.append = append;\nexports.hydrate = hydrate;\nexports.hydrateNamechange = hydrateNamechange;\nexports.default = username;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _users = require('./users');\n\nvar _concatUnique = require('../utils/concat-unique');\n\nvar _concatUnique2 = _interopRequireDefault(_concatUnique);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar ADD_NAME_CHANGE = exports.ADD_NAME_CHANGE = 'ADD_NAME_CHANGE';\nvar APPEND_HISTORY = exports.APPEND_HISTORY = 'APPEND_HISTORY';\nvar HYDRATE_HISTORY = exports.HYDRATE_HISTORY = 'HYDRATE_HISTORY';\n\nfunction addNameChange(change, user, changedBy) {\n return {\n type: ADD_NAME_CHANGE,\n change: change,\n user: user,\n changedBy: changedBy\n };\n}\n\nfunction append(items) {\n return {\n type: APPEND_HISTORY,\n items: items\n };\n}\n\nfunction hydrate(items) {\n return {\n type: HYDRATE_HISTORY,\n items: items\n };\n}\n\nfunction hydrateNamechange(namechange) {\n return Object.assign({}, namechange, {\n changed_on: (0, _moment2.default)(namechange.changed_on)\n });\n}\n\nfunction username() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case ADD_NAME_CHANGE:\n var newState = state.slice();\n newState.unshift({\n id: Math.floor(Date.now() / 1000), // just small hax for getting id\n changed_by: action.changedBy,\n changed_by_username: action.changedBy.username,\n changed_on: (0, _moment2.default)(),\n new_username: action.change.username,\n old_username: action.user.username\n });\n return newState;\n\n case APPEND_HISTORY:\n return (0, _concatUnique2.default)(state, action.items.map(hydrateNamechange));\n\n case HYDRATE_HISTORY:\n return action.items.map(hydrateNamechange);\n\n case _users.UPDATE_AVATAR:\n return state.map(function (item) {\n item = Object.assign({}, item);\n if (item.changed_by && item.changed_by.id === action.userId) {\n item.changed_by = Object.assign({}, item.changed_by, {\n avatars: action.avatars\n });\n }\n\n return item;\n });\n\n case _users.UPDATE_USERNAME:\n return state.map(function (item) {\n item = Object.assign({}, item);\n if (item.changed_by && item.changed_by.id === action.userId) {\n item.changed_by = Object.assign({}, item.changed_by, {\n username: action.username,\n slug: action.slug\n });\n }\n\n return Object.assign({}, item);\n });\n\n default:\n return state;\n }\n}\n\n},{\"../utils/concat-unique\":368,\"./users\":351,\"moment\":\"moment\"}],351:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.UPDATE_USERNAME = exports.UPDATE_AVATAR = exports.HYDRATE_USERS = exports.APPEND_USERS = undefined;\nexports.append = append;\nexports.hydrate = hydrate;\nexports.hydrateStatus = hydrateStatus;\nexports.hydrateUser = hydrateUser;\nexports.updateAvatar = updateAvatar;\nexports.updateUsername = updateUsername;\nexports.default = user;\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _concatUnique = require('../utils/concat-unique');\n\nvar _concatUnique2 = _interopRequireDefault(_concatUnique);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar APPEND_USERS = exports.APPEND_USERS = 'APPEND_USERS';\nvar HYDRATE_USERS = exports.HYDRATE_USERS = 'HYDRATE_USERS';\nvar UPDATE_AVATAR = exports.UPDATE_AVATAR = 'UPDATE_AVATAR';\nvar UPDATE_USERNAME = exports.UPDATE_USERNAME = 'UPDATE_USERNAME';\n\nfunction append(items) {\n return {\n type: APPEND_USERS,\n items: items\n };\n}\n\nfunction hydrate(items) {\n return {\n type: HYDRATE_USERS,\n items: items\n };\n}\n\nfunction hydrateStatus(status) {\n if (status) {\n return Object.assign({}, status, {\n last_click: status.last_click ? (0, _moment2.default)(status.last_click) : null,\n banned_until: status.banned_until ? (0, _moment2.default)(status.banned_until) : null\n });\n } else {\n return null;\n }\n}\n\nfunction hydrateUser(user) {\n return Object.assign({}, user, {\n joined_on: (0, _moment2.default)(user.joined_on),\n status: hydrateStatus(user.status)\n });\n}\n\nfunction updateAvatar(user, avatars) {\n return {\n type: UPDATE_AVATAR,\n userId: user.id,\n avatars: avatars\n };\n}\n\nfunction updateUsername(user, username, slug) {\n return {\n type: UPDATE_USERNAME,\n userId: user.id,\n username: username,\n slug: slug\n };\n}\n\nfunction user() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n switch (action.type) {\n case APPEND_USERS:\n return (0, _concatUnique2.default)(state, action.items.map(hydrateUser));\n\n case HYDRATE_USERS:\n return action.items.map(hydrateUser);\n\n case UPDATE_AVATAR:\n return state.map(function (item) {\n item = Object.assign({}, item);\n if (item.id === action.userId) {\n item.avatars = action.avatars;\n }\n\n return item;\n });\n\n default:\n return state;\n }\n}\n\n},{\"../utils/concat-unique\":368,\"moment\":\"moment\"}],352:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Ajax = exports.Ajax = function () {\n function Ajax() {\n _classCallCheck(this, Ajax);\n\n this._cookieName = null;\n this._csrfToken = null;\n this._locks = {};\n }\n\n _createClass(Ajax, [{\n key: 'init',\n value: function init(cookieName) {\n this._cookieName = cookieName;\n }\n }, {\n key: 'getCsrfToken',\n value: function getCsrfToken() {\n if (document.cookie.indexOf(this._cookieName) !== -1) {\n var cookieRegex = new RegExp(this._cookieName + '\\=([^;]*)');\n var cookie = document.cookie.match(cookieRegex)[0];\n return cookie ? cookie.split('=')[1] : null;\n } else {\n return null;\n }\n }\n }, {\n key: 'request',\n value: function request(method, url, data) {\n var self = this;\n return new Promise(function (resolve, reject) {\n var xhr = {\n url: url,\n method: method,\n headers: {\n 'X-CSRFToken': self.getCsrfToken()\n },\n\n data: data ? JSON.stringify(data) : null,\n contentType: \"application/json; charset=utf-8\",\n dataType: 'json',\n\n success: function success(data) {\n resolve(data);\n },\n\n error: function error(jqXHR) {\n var rejection = jqXHR.responseJSON || {};\n\n rejection.status = jqXHR.status;\n\n if (rejection.status === 0) {\n rejection.detail = gettext(\"Lost connection with application.\");\n }\n\n if (rejection.status === 404) {\n if (!rejection.detail || rejection.detail === 'NOT FOUND') {\n rejection.detail = gettext(\"Action link is invalid.\");\n }\n }\n\n if (rejection.status === 500 && !rejection.detail) {\n rejection.detail = gettext(\"Unknown error has occured.\");\n }\n\n rejection.statusText = jqXHR.statusText;\n\n reject(rejection);\n }\n };\n\n $.ajax(xhr);\n });\n }\n }, {\n key: 'get',\n value: function get(url, params, lock) {\n if (params) {\n url += '?' + $.param(params);\n }\n\n if (lock) {\n var self = this;\n\n // update url in existing lock?\n if (this._locks[lock]) {\n this._locks[lock].url = url;\n }\n\n // immediately dereference promise handlers without doing anything\n // we are already waiting for existing response to resolve\n if (this._locks[lock] && this._locks[lock].waiter) {\n return {\n then: function then() {\n return;\n }\n };\n\n // return promise that will begin when original one resolves\n } else if (this._locks[lock] && this._locks[lock].wait) {\n this._locks[lock].waiter = true;\n\n return new Promise(function (resolve, reject) {\n var wait = function wait(url) {\n // keep waiting on promise\n if (self._locks[lock].wait) {\n window.setTimeout(function () {\n wait(url);\n }, 300);\n\n // poll for new url\n } else if (self._locks[lock].url !== url) {\n wait(self._locks[lock].url);\n\n // ajax backend for response\n } else {\n self._locks[lock].waiter = false;\n self.request('GET', self._locks[lock].url).then(function (data) {\n if (self._locks[lock].url === url) {\n resolve(data);\n } else {\n self._locks[lock].waiter = true;\n wait(self._locks[lock].url);\n }\n }, function (rejection) {\n if (self._locks[lock].url === url) {\n reject(rejection);\n } else {\n self._locks[lock].waiter = true;\n wait(self._locks[lock].url);\n }\n });\n }\n };\n\n window.setTimeout(function () {\n wait(url);\n }, 300);\n });\n\n // setup new lock without waiter\n } else {\n this._locks[lock] = {\n url: url,\n wait: true,\n waiter: false\n };\n\n return new Promise(function (resolve, reject) {\n self.request('GET', url).then(function (data) {\n self._locks[lock].wait = false;\n if (self._locks[lock].url === url) {\n resolve(data);\n }\n }, function (rejection) {\n self._locks[lock].wait = false;\n if (self._locks[lock].url === url) {\n reject(rejection);\n }\n });\n });\n }\n } else {\n return this.request('GET', url);\n }\n }\n }, {\n key: 'post',\n value: function post(url, data) {\n return this.request('POST', url, data);\n }\n }, {\n key: 'patch',\n value: function patch(url, data) {\n return this.request('PATCH', url, data);\n }\n }, {\n key: 'put',\n value: function put(url, data) {\n return this.request('PUT', url, data);\n }\n }, {\n key: 'delete',\n value: function _delete(url, data) {\n return this.request('DELETE', url, data);\n }\n }, {\n key: 'upload',\n value: function upload(url, data, progress) {\n var self = this;\n return new Promise(function (resolve, reject) {\n var xhr = {\n url: url,\n method: 'POST',\n headers: {\n 'X-CSRFToken': self.getCsrfToken()\n },\n\n data: data,\n contentType: false,\n processData: false,\n\n xhr: function xhr() {\n var xhr = new window.XMLHttpRequest();\n xhr.upload.addEventListener(\"progress\", function (evt) {\n if (evt.lengthComputable) {\n progress(Math.round(evt.loaded / evt.total * 100));\n }\n }, false);\n return xhr;\n },\n\n success: function success(response) {\n resolve(response);\n },\n\n error: function error(jqXHR) {\n var rejection = jqXHR.responseJSON || {};\n\n rejection.status = jqXHR.status;\n\n if (rejection.status === 0) {\n rejection.detail = gettext(\"Lost connection with application.\");\n }\n\n if (rejection.status === 413 && !rejection.detail) {\n rejection.detail = gettext(\"Upload was rejected by server as too large.\");\n }\n\n if (rejection.status === 404) {\n if (!rejection.detail || rejection.detail === 'NOT FOUND') {\n rejection.detail = gettext(\"Action link is invalid.\");\n }\n }\n\n if (rejection.status === 500 && !rejection.detail) {\n rejection.detail = gettext(\"Unknown error has occured.\");\n }\n\n rejection.statusText = jqXHR.statusText;\n\n reject(rejection);\n }\n };\n\n $.ajax(xhr);\n });\n }\n }]);\n\n return Ajax;\n}();\n\nexports.default = new Ajax();\n\n},{}],353:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Auth = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _auth = require('../reducers/auth');\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n// jshint ignore:line\n\nvar Auth = exports.Auth = function () {\n function Auth() {\n _classCallCheck(this, Auth);\n }\n\n _createClass(Auth, [{\n key: 'init',\n value: function init(store, local, modal) {\n this._store = store;\n this._local = local;\n this._modal = modal;\n\n // tell other tabs what auth state is because we are most current with it\n this.syncSession();\n\n // listen for other tabs to tell us that state changed\n this.watchState();\n }\n }, {\n key: 'syncSession',\n value: function syncSession() {\n var state = this._store.getState().auth;\n if (state.isAuthenticated) {\n this._local.set('auth', {\n isAuthenticated: true,\n username: state.user.username\n });\n } else {\n this._local.set('auth', {\n isAuthenticated: false\n });\n }\n }\n }, {\n key: 'watchState',\n value: function watchState() {\n var _this = this;\n\n this._local.watch('auth', function (newState) {\n if (newState.isAuthenticated) {\n _this._store.dispatch((0, _auth.signIn)({\n username: newState.username\n }));\n } else {\n _this._store.dispatch((0, _auth.signOut)());\n }\n });\n this._modal.hide();\n }\n }, {\n key: 'signIn',\n value: function signIn(user) {\n this._store.dispatch((0, _auth.signIn)(user));\n this._local.set('auth', {\n isAuthenticated: true,\n username: user.username\n });\n this._modal.hide();\n }\n }, {\n key: 'signOut',\n value: function signOut() {\n this._store.dispatch((0, _auth.signOut)());\n this._local.set('auth', {\n isAuthenticated: false\n });\n this._modal.hide();\n }\n }, {\n key: 'softSignOut',\n value: function softSignOut() {\n this._store.dispatch((0, _auth.signOut)(true));\n this._local.set('auth', {\n isAuthenticated: false\n });\n this._modal.hide();\n }\n }]);\n\n return Auth;\n}();\n\nexports.default = new Auth();\n\n},{\"../reducers/auth\":337}],354:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Captcha = exports.ReCaptcha = exports.ReCaptchaComponent = exports.QACaptcha = exports.NoCaptcha = exports.BaseCaptcha = undefined;\n\nvar _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; }; }(); /* global grecaptcha */\n// jshint ignore:line\n\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _formGroup = require('../components/form-group');\n\nvar _formGroup2 = _interopRequireDefault(_formGroup);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _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; }\n\nfunction _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; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n// jshint ignore:line\n\nvar BaseCaptcha = exports.BaseCaptcha = function () {\n function BaseCaptcha() {\n _classCallCheck(this, BaseCaptcha);\n }\n\n _createClass(BaseCaptcha, [{\n key: 'init',\n value: function init(context, ajax, include, snackbar) {\n this._context = context;\n this._ajax = ajax;\n this._include = include;\n this._snackbar = snackbar;\n }\n }]);\n\n return BaseCaptcha;\n}();\n\nvar NoCaptcha = exports.NoCaptcha = function (_BaseCaptcha) {\n _inherits(NoCaptcha, _BaseCaptcha);\n\n function NoCaptcha() {\n _classCallCheck(this, NoCaptcha);\n\n return _possibleConstructorReturn(this, (NoCaptcha.__proto__ || Object.getPrototypeOf(NoCaptcha)).apply(this, arguments));\n }\n\n _createClass(NoCaptcha, [{\n key: 'load',\n value: function load() {\n return new Promise(function (resolve) {\n // immediately resolve as we don't have anything to validate\n resolve();\n });\n }\n }, {\n key: 'validator',\n value: function validator() {\n return null;\n }\n }, {\n key: 'component',\n value: function component() {\n return null;\n }\n }]);\n\n return NoCaptcha;\n}(BaseCaptcha);\n\nvar QACaptcha = exports.QACaptcha = function (_BaseCaptcha2) {\n _inherits(QACaptcha, _BaseCaptcha2);\n\n function QACaptcha() {\n _classCallCheck(this, QACaptcha);\n\n return _possibleConstructorReturn(this, (QACaptcha.__proto__ || Object.getPrototypeOf(QACaptcha)).apply(this, arguments));\n }\n\n _createClass(QACaptcha, [{\n key: 'load',\n value: function load() {\n var self = this;\n return new Promise(function (resolve, reject) {\n self._ajax.get(self._context.get('CAPTCHA_API')).then(function (data) {\n self.question = data.question;\n self.helpText = data.help_text;\n resolve();\n }, function () {\n self._snackbar.error(gettext(\"Failed to load CAPTCHA.\"));\n reject();\n });\n });\n }\n }, {\n key: 'validator',\n value: function validator() {\n return [];\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'component',\n value: function component(kwargs) {\n return _react2.default.createElement(\n _formGroup2.default,\n {\n label: this.question,\n 'for': 'id_captcha',\n labelClass: kwargs.labelClass || \"\",\n controlClass: kwargs.controlClass || \"\",\n validation: kwargs.form.state.errors.captcha,\n helpText: this.helpText || null\n },\n _react2.default.createElement('input', {\n 'aria-describedby': 'id_captcha_status',\n className: 'form-control',\n disabled: kwargs.form.state.isLoading,\n id: 'id_captcha',\n onChange: kwargs.form.bindInput('captcha'),\n type: 'text',\n value: kwargs.form.state.captcha\n })\n );\n }\n /* jshint ignore:end */\n\n }]);\n\n return QACaptcha;\n}(BaseCaptcha);\n\nvar ReCaptchaComponent = exports.ReCaptchaComponent = function (_React$Component) {\n _inherits(ReCaptchaComponent, _React$Component);\n\n function ReCaptchaComponent() {\n _classCallCheck(this, ReCaptchaComponent);\n\n return _possibleConstructorReturn(this, (ReCaptchaComponent.__proto__ || Object.getPrototypeOf(ReCaptchaComponent)).apply(this, arguments));\n }\n\n _createClass(ReCaptchaComponent, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this4 = this;\n\n grecaptcha.render('recaptcha', {\n 'sitekey': this.props.siteKey,\n 'callback': function callback(response) {\n // fire fakey event to binding\n _this4.props.binding({\n target: {\n value: response\n }\n });\n }\n });\n }\n }, {\n key: 'render',\n value: function render() {\n /* jshint ignore:start */\n return _react2.default.createElement('div', { id: 'recaptcha' });\n /* jshint ignore:end */\n }\n }]);\n\n return ReCaptchaComponent;\n}(_react2.default.Component);\n\nvar ReCaptcha = exports.ReCaptcha = function (_BaseCaptcha3) {\n _inherits(ReCaptcha, _BaseCaptcha3);\n\n function ReCaptcha() {\n _classCallCheck(this, ReCaptcha);\n\n return _possibleConstructorReturn(this, (ReCaptcha.__proto__ || Object.getPrototypeOf(ReCaptcha)).apply(this, arguments));\n }\n\n _createClass(ReCaptcha, [{\n key: 'load',\n value: function load() {\n this._include.include('https://www.google.com/recaptcha/api.js', true);\n\n return new Promise(function (resolve) {\n var wait = function wait() {\n if (typeof grecaptcha === \"undefined\") {\n window.setTimeout(function () {\n wait();\n }, 200);\n } else {\n resolve();\n }\n };\n wait();\n });\n }\n }, {\n key: 'validator',\n value: function validator() {\n return [];\n }\n\n /* jshint ignore:start */\n\n }, {\n key: 'component',\n value: function component(kwargs) {\n return _react2.default.createElement(\n _formGroup2.default,\n {\n label: gettext(\"Please solve the quick test\"),\n 'for': 'id_captcha',\n labelClass: kwargs.labelClass || \"\",\n controlClass: kwargs.controlClass || \"\",\n validation: kwargs.form.state.errors.captcha,\n helpText: gettext(\"This test helps us prevent automated spam registrations on our site.\")\n },\n _react2.default.createElement(ReCaptchaComponent, {\n binding: kwargs.form.bindInput('captcha'),\n siteKey: this._context.get('SETTINGS').recaptcha_site_key\n })\n );\n }\n /* jshint ignore:end */\n\n }]);\n\n return ReCaptcha;\n}(BaseCaptcha);\n\nvar Captcha = exports.Captcha = function () {\n function Captcha() {\n _classCallCheck(this, Captcha);\n }\n\n _createClass(Captcha, [{\n key: 'init',\n value: function init(context, ajax, include, snackbar) {\n switch (context.get('SETTINGS').captcha_type) {\n case 'no':\n this._captcha = new NoCaptcha();\n break;\n\n case 'qa':\n this._captcha = new QACaptcha();\n break;\n\n case 're':\n this._captcha = new ReCaptcha();\n break;\n }\n\n this._captcha.init(context, ajax, include, snackbar);\n }\n\n // accessors for underlying strategy\n\n }, {\n key: 'load',\n value: function load() {\n return this._captcha.load();\n }\n }, {\n key: 'validator',\n value: function validator() {\n return this._captcha.validator();\n }\n }, {\n key: 'component',\n value: function component(kwargs) {\n return this._captcha.component(kwargs);\n }\n }]);\n\n return Captcha;\n}();\n\nexports.default = new Captcha();\n\n},{\"../components/form-group\":51,\"react\":\"react\"}],355:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Include = exports.Include = function () {\n function Include() {\n _classCallCheck(this, Include);\n }\n\n _createClass(Include, [{\n key: 'init',\n value: function init(staticUrl) {\n this._staticUrl = staticUrl;\n this._included = [];\n }\n }, {\n key: 'include',\n value: function include(script) {\n var remote = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (this._included.indexOf(script) === -1) {\n this._included.push(script);\n this._include(script, remote);\n }\n }\n }, {\n key: '_include',\n value: function _include(script, remote) {\n $.ajax({\n url: (!remote ? this._staticUrl : '') + script,\n cache: true,\n dataType: 'script'\n });\n }\n }]);\n\n return Include;\n}();\n\nexports.default = new Include();\n\n},{}],356:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar storage = window.localStorage;\n\nvar LocalStorage = exports.LocalStorage = function () {\n function LocalStorage() {\n _classCallCheck(this, LocalStorage);\n }\n\n _createClass(LocalStorage, [{\n key: 'init',\n value: function init(prefix) {\n var _this = this;\n\n this._prefix = prefix;\n this._watchers = [];\n\n window.addEventListener('storage', function (e) {\n var newValueJson = JSON.parse(e.newValue);\n _this._watchers.forEach(function (watcher) {\n if (watcher.key === e.key && e.oldValue !== e.newValue) {\n watcher.callback(newValueJson);\n }\n });\n });\n }\n }, {\n key: 'set',\n value: function set(key, value) {\n storage.setItem(this._prefix + key, JSON.stringify(value));\n }\n }, {\n key: 'get',\n value: function get(key) {\n var itemString = storage.getItem(this._prefix + key);\n if (itemString) {\n return JSON.parse(itemString);\n } else {\n return null;\n }\n }\n }, {\n key: 'watch',\n value: function watch(key, callback) {\n this._watchers.push({\n key: this._prefix + key,\n callback: callback\n });\n }\n }]);\n\n return LocalStorage;\n}();\n\nexports.default = new LocalStorage();\n\n},{}],357:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.MobileNavbarDropdown = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _mountComponent = require('../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar MobileNavbarDropdown = exports.MobileNavbarDropdown = function () {\n function MobileNavbarDropdown() {\n _classCallCheck(this, MobileNavbarDropdown);\n }\n\n _createClass(MobileNavbarDropdown, [{\n key: 'init',\n value: function init(element) {\n this._element = element;\n this._component = null;\n }\n }, {\n key: 'show',\n value: function show(component) {\n if (this._component === component) {\n this.hide();\n } else {\n this._component = component;\n (0, _mountComponent2.default)(component, this._element.id);\n $(this._element).addClass('open');\n }\n }\n }, {\n key: 'showConnected',\n value: function showConnected(name, component) {\n if (this._component === name) {\n this.hide();\n } else {\n this._component = name;\n (0, _mountComponent2.default)(component, this._element.id, true);\n $(this._element).addClass('open');\n }\n }\n }, {\n key: 'hide',\n value: function hide() {\n $(this._element).removeClass('open');\n this._component = null;\n }\n }]);\n\n return MobileNavbarDropdown;\n}();\n\nexports.default = new MobileNavbarDropdown();\n\n},{\"../utils/mount-component\":373}],358:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Modal = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _mountComponent = require('../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Modal = exports.Modal = function () {\n function Modal() {\n _classCallCheck(this, Modal);\n }\n\n _createClass(Modal, [{\n key: 'init',\n value: function init(element) {\n var _this = this;\n\n this._element = element;\n\n this._modal = $(element).modal({ show: false });\n\n this._modal.on('hidden.bs.modal', function () {\n _reactDom2.default.unmountComponentAtNode(_this._element);\n });\n }\n }, {\n key: 'show',\n value: function show(component) {\n (0, _mountComponent2.default)(component, this._element.id);\n this._modal.modal('show');\n }\n }, {\n key: 'hide',\n value: function hide() {\n this._modal.modal('hide');\n }\n }]);\n\n return Modal;\n}();\n\nexports.default = new Modal();\n\n},{\"../utils/mount-component\":373,\"react-dom\":\"react-dom\"}],359:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.parseYoutubeUrl = parseYoutubeUrl;\nexports.cleanUrl = cleanUrl;\nexports.getVideoIdFromUrl = getVideoIdFromUrl;\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar ytRegExp = new RegExp('^.*(?:(?:youtu\\.be\\/|v\\/|vi\\/|u\\/\\w\\/|embed\\/)|(?:(?:watch)?\\?v(?:i)?=|\\&v(?:i)?=))([^#\\&\\?]*).*');\n\nvar OneBox = exports.OneBox = function () {\n function OneBox() {\n var _this = this;\n\n _classCallCheck(this, OneBox);\n\n this.render = function (domnode) {\n if (!domnode) return;\n _this.highlightCode(domnode);\n _this.embedYoutubePlayers(domnode);\n };\n\n this._youtube = {};\n }\n\n // jshint ignore:start\n\n\n _createClass(OneBox, [{\n key: 'highlightCode',\n\n // jshint ignore:end\n\n value: function highlightCode(domnode) {\n var codeblocks = domnode.querySelectorAll('pre>code');\n for (var i = 0; i < codeblocks.length; i++) {\n var code = codeblocks[i];\n hljs.highlightBlock(code);\n }\n }\n }, {\n key: 'embedYoutubePlayers',\n value: function embedYoutubePlayers(domnode) {\n var anchors = domnode.querySelectorAll('p>a');\n for (var i = 0; i < anchors.length; i++) {\n var a = anchors[i];\n var p = a.parentNode;\n var onlyChild = p.childNodes.length === 1;\n\n if (!this._youtube[a.href]) {\n this._youtube[a.href] = parseYoutubeUrl(a.href);\n }\n\n var youtubeMovie = this._youtube[a.href];\n if (onlyChild && !!youtubeMovie && youtubeMovie.data !== false) {\n this.swapYoutubePlayer(a, youtubeMovie);\n }\n }\n }\n }, {\n key: 'swapYoutubePlayer',\n value: function swapYoutubePlayer(element, youtube) {\n var url = 'https://www.youtube.com/embed/';\n url += youtube.video;\n url += '?rel=0';\n if (youtube.start) {\n url += '&start=' + youtube.start;\n }\n\n var player = $('');\n $(element).replaceWith(player);\n player.wrap('
    ');\n }\n }]);\n\n return OneBox;\n}();\n\nexports.default = new OneBox();\nfunction parseYoutubeUrl(url) {\n var cleanedUrl = cleanUrl(url);\n var video = getVideoIdFromUrl(cleanedUrl);\n\n if (!video) return null;\n\n var start = 0;\n if (cleanedUrl.indexOf('?') > 0) {\n var query = cleanedUrl.substr(cleanedUrl.indexOf('?') + 1);\n var timebit = query.split('&').filter(function (i) {\n return i.substr(0, 2) === 't=';\n })[0];\n\n if (timebit) {\n var bits = timebit.substr(2).split('m');\n if (bits[0].substr(-1) === 's') {\n start += parseInt(bits[0].substr(0, bits[0].length - 1));\n } else {\n start += parseInt(bits[0]) * 60;\n if (!!bits[1] && bits[1].substr(-1) === 's') {\n start += parseInt(bits[1].substr(0, bits[1].length - 1));\n }\n }\n }\n }\n\n return {\n start: start,\n video: video\n };\n}\n\nfunction cleanUrl(url) {\n var clean = url;\n\n if (url.substr(0, 8) === 'https://') {\n clean = clean.substr(8);\n } else if (url.substr(0, 7) === 'http://') {\n clean = clean.substr(7);\n }\n\n if (clean.substr(0, 4) === 'www.') {\n clean = clean.substr(4);\n }\n\n return clean;\n}\n\nfunction getVideoIdFromUrl(url) {\n if (url.indexOf('youtu') === -1) return null;\n\n var video = url.match(ytRegExp);\n if (video) {\n return video[1];\n }\n return null;\n}\n\n},{}],360:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar PageTitle = exports.PageTitle = function () {\n function PageTitle() {\n _classCallCheck(this, PageTitle);\n }\n\n _createClass(PageTitle, [{\n key: 'init',\n value: function init(indexTitle, forumName) {\n this._indexTitle = indexTitle;\n this._forumName = forumName;\n }\n }, {\n key: 'set',\n value: function set(title) {\n if (!title) {\n document.title = this._indexTitle || this._forumName;\n return;\n }\n\n if (typeof title === 'string') {\n title = { title: title };\n }\n\n var finalTitle = title.title;\n\n if (title.page > 1) {\n var pageLabel = interpolate(gettext('page: %(page)s'), {\n page: title.page\n }, true);\n\n finalTitle += ' (' + pageLabel + ')';\n }\n\n if (title.parent) {\n finalTitle += ' | ' + title.parent;\n }\n\n document.title = finalTitle + ' | ' + this._forumName;\n }\n }]);\n\n return PageTitle;\n}();\n\nexports.default = new PageTitle();\n\n},{}],361:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Polls = exports.Polls = function () {\n function Polls() {\n _classCallCheck(this, Polls);\n }\n\n _createClass(Polls, [{\n key: \"init\",\n value: function init(ajax, snackbar) {\n this._ajax = ajax;\n this._snackbar = snackbar;\n\n this._polls = {};\n }\n }, {\n key: \"start\",\n value: function start(kwargs) {\n var _this = this;\n\n this.stop(kwargs.poll);\n\n var poolServer = function poolServer() {\n _this._polls[kwargs.poll] = kwargs;\n\n _this._ajax.get(kwargs.url, kwargs.data || null).then(function (data) {\n if (!_this._polls[kwargs.poll]._stopped) {\n kwargs.update(data);\n\n _this._polls[kwargs.poll].timeout = window.setTimeout(poolServer, kwargs.frequency);\n }\n }, function (rejection) {\n if (!_this._polls[kwargs.poll]._stopped) {\n if (kwargs.error) {\n kwargs.error(rejection);\n } else {\n _this._snackbar.apiError(rejection);\n }\n }\n });\n };\n\n if (kwargs.delayed) {\n this._polls[kwargs.poll] = {\n timeout: window.setTimeout(poolServer, kwargs.frequency)\n };\n } else {\n poolServer();\n }\n }\n }, {\n key: \"stop\",\n value: function stop(pollId) {\n if (this._polls[pollId]) {\n window.clearTimeout(this._polls[pollId].timeout);\n this._polls[pollId]._stopped = true;\n }\n }\n }]);\n\n return Polls;\n}();\n\nexports.default = new Polls();\n\n},{}],362:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Posting = undefined;\n\nvar _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; }; }(); // jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n// jshint ignore:line\n\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _poll = require('../components/poll');\n\nvar _posting = require('../components/posting');\n\nvar _posting2 = _interopRequireDefault(_posting);\n\nvar _mountComponent = require('../utils/mount-component');\n\nvar _mountComponent2 = _interopRequireDefault(_mountComponent);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n// jshint ignore:line\n\nvar Posting = exports.Posting = function () {\n function Posting() {\n var _this = this;\n\n _classCallCheck(this, Posting);\n\n this.close = function () {\n if (_this._isOpen && !_this._isClosing) {\n _this._isClosing = true;\n _this._placeholder.removeClass('slide-in');\n\n window.setTimeout(function () {\n _reactDom2.default.unmountComponentAtNode(document.getElementById('posting-mount'));\n _this._isClosing = false;\n _this._isOpen = false;\n }, 300);\n }\n };\n }\n\n _createClass(Posting, [{\n key: 'init',\n value: function init(ajax, snackbar, placeholder) {\n this._ajax = ajax;\n this._snackbar = snackbar;\n this._placeholder = $(placeholder);\n\n this._mode = null;\n\n this._isOpen = false;\n this._isClosing = false;\n }\n }, {\n key: 'open',\n value: function open(props) {\n if (this._isOpen === false) {\n this._mode = props.mode;\n this._isOpen = props.submit;\n this._realOpen(props);\n } else if (this._isOpen !== props.submit) {\n var message = gettext(\"You are already working on other message. Do you want to discard it?\");\n if (this._mode == 'POLL') {\n message = gettext(\"You are already working on a poll. Do you want to discard it?\");\n }\n\n var changeForm = confirm(message);\n if (changeForm) {\n this._mode = props.mode;\n this._isOpen = props.submit;\n this._realOpen(props);\n }\n } else if (this._mode == 'REPLY' && props.mode == 'REPLY') {\n this._realOpen(props);\n }\n }\n\n // jshint ignore:start\n\n }, {\n key: '_realOpen',\n\n // jshint ignore:end\n value: function _realOpen(props) {\n if (props.mode == 'POLL') {\n (0, _mountComponent2.default)(_react2.default.createElement(_poll.PollForm, props), 'posting-mount');\n } else {\n (0, _mountComponent2.default)(_react2.default.createElement(_posting2.default, props), 'posting-mount');\n }\n\n this._placeholder.addClass('slide-in');\n\n $('html, body').animate({\n scrollTop: this._placeholder.offset().top\n }, 1000);\n }\n }]);\n\n return Posting;\n}();\n\nexports.default = new Posting();\n\n},{\"../components/poll\":99,\"../components/posting\":127,\"../utils/mount-component\":373,\"react\":\"react\",\"react-dom\":\"react-dom\"}],363:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Snackbar = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _snackbar = require('../reducers/snackbar');\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar HIDE_ANIMATION_LENGTH = 300;\nvar MESSAGE_SHOW_LENGTH = 5000;\n\nvar Snackbar = exports.Snackbar = function () {\n function Snackbar() {\n _classCallCheck(this, Snackbar);\n }\n\n _createClass(Snackbar, [{\n key: 'init',\n value: function init(store) {\n this._store = store;\n this._timeout = null;\n }\n }, {\n key: 'alert',\n value: function alert(message, type) {\n var _this = this;\n\n if (this._timeout) {\n window.clearTimeout(this._timeout);\n this._store.dispatch((0, _snackbar.hideSnackbar)());\n\n this._timeout = window.setTimeout(function () {\n _this._timeout = null;\n _this.alert(message, type);\n }, HIDE_ANIMATION_LENGTH);\n } else {\n this._store.dispatch((0, _snackbar.showSnackbar)(message, type));\n this._timeout = window.setTimeout(function () {\n _this._store.dispatch((0, _snackbar.hideSnackbar)());\n _this._timeout = null;\n }, MESSAGE_SHOW_LENGTH);\n }\n }\n\n // shorthands for message types\n\n }, {\n key: 'info',\n value: function info(message) {\n this.alert(message, 'info');\n }\n }, {\n key: 'success',\n value: function success(message) {\n this.alert(message, 'success');\n }\n }, {\n key: 'warning',\n value: function warning(message) {\n this.alert(message, 'warning');\n }\n }, {\n key: 'error',\n value: function error(message) {\n this.alert(message, 'error');\n }\n\n // shorthand for api errors\n\n }, {\n key: 'apiError',\n value: function apiError(rejection) {\n var message = rejection.detail;\n\n if (!message) {\n if (rejection.status === 404) {\n message = gettext(\"Action link is invalid.\");\n } else {\n message = gettext(\"Unknown error has occured.\");\n }\n }\n\n if (rejection.status === 403 && message === \"Permission denied\") {\n message = gettext(\"You don't have permission to perform this action.\");\n }\n\n this.error(message);\n }\n }]);\n\n return Snackbar;\n}();\n\nexports.default = new Snackbar();\n\n},{\"../reducers/snackbar\":346}],364:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.StoreWrapper = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _redux = require('redux');\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar StoreWrapper = exports.StoreWrapper = function () {\n function StoreWrapper() {\n _classCallCheck(this, StoreWrapper);\n\n this._store = null;\n this._reducers = {};\n this._initialState = {};\n }\n\n _createClass(StoreWrapper, [{\n key: 'addReducer',\n value: function addReducer(name, reducer, initialState) {\n this._reducers[name] = reducer;\n this._initialState[name] = initialState;\n }\n }, {\n key: 'init',\n value: function init() {\n this._store = (0, _redux.createStore)((0, _redux.combineReducers)(this._reducers), this._initialState);\n }\n }, {\n key: 'getStore',\n value: function getStore() {\n return this._store;\n }\n\n // Store API\n\n }, {\n key: 'getState',\n value: function getState() {\n return this._store.getState();\n }\n }, {\n key: 'dispatch',\n value: function dispatch(action) {\n return this._store.dispatch(action);\n }\n }]);\n\n return StoreWrapper;\n}();\n\nexports.default = new StoreWrapper();\n\n},{\"redux\":\"redux\"}],365:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n/* global zxcvbn */\nvar Zxcvbn = exports.Zxcvbn = function () {\n function Zxcvbn() {\n _classCallCheck(this, Zxcvbn);\n }\n\n _createClass(Zxcvbn, [{\n key: \"init\",\n value: function init(include) {\n this._include = include;\n this._isLoaded = false;\n }\n }, {\n key: \"scorePassword\",\n value: function scorePassword(password, inputs) {\n // 0-4 score, the more the stronger password\n if (this._isLoaded) {\n return zxcvbn(password, inputs).score;\n }\n\n return 0;\n }\n }, {\n key: \"load\",\n value: function load() {\n if (!this._isLoaded) {\n this._include.include('misago/js/zxcvbn.js');\n return this._loadingPromise();\n } else {\n return this._loadedPromise();\n }\n }\n }, {\n key: \"_loadingPromise\",\n value: function _loadingPromise() {\n var self = this;\n\n return new Promise(function (resolve, reject) {\n var wait = function wait() {\n var tries = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n\n tries += 1;\n if (tries > 200) {\n reject();\n } else if (typeof zxcvbn === \"undefined\") {\n window.setTimeout(function () {\n wait(tries);\n }, 200);\n } else {\n self._isLoaded = true;\n resolve();\n }\n };\n wait();\n });\n }\n }, {\n key: \"_loadedPromise\",\n value: function _loadedPromise() {\n // we have already loaded zxcvbn.js, resolve away!\n return new Promise(function (resolve) {\n resolve();\n });\n }\n }]);\n\n return Zxcvbn;\n}();\n\nexports.default = new Zxcvbn();\n\n},{}],366:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (ban, changeState) {\n _reactDom2.default.render(\n /* jshint ignore:start */\n _react2.default.createElement(\n _reactRedux.Provider,\n { store: _store2.default.getStore() },\n _react2.default.createElement(RedrawedBannedPage, { message: ban.message,\n expires: ban.expires_on ? (0, _moment2.default)(ban.expires_on) : null })\n ),\n /* jshint ignore:end */\n document.getElementById('page-mount'));\n\n if (typeof changeState === 'undefined' || changeState) {\n var forumName = _index2.default.get('SETTINGS').forum_name;\n document.title = gettext(\"You are banned\") + ' | ' + forumName;\n window.history.pushState({}, \"\", _index2.default.get('BANNED_URL'));\n }\n};\n\nvar _moment = require('moment');\n\nvar _moment2 = _interopRequireDefault(_moment);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _reactRedux = require('react-redux');\n\nvar _bannedPage = require('../components/banned-page');\n\nvar _bannedPage2 = _interopRequireDefault(_bannedPage);\n\nvar _index = require('../index');\n\nvar _index2 = _interopRequireDefault(_index);\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// jshint ignore:line\n\n/* jshint ignore:start */\n// jshint ignore:line\n// jshint ignore:line\nvar select = function select(state) {\n return state.tick;\n}; // jshint ignore:line\n// jshint ignore:line\n\n\nvar RedrawedBannedPage = (0, _reactRedux.connect)(select)(_bannedPage2.default);\n/* jshint ignore:end */\n\n},{\"../components/banned-page\":4,\"../index\":291,\"../services/store\":364,\"moment\":\"moment\",\"react\":\"react\",\"react-dom\":\"react-dom\",\"react-redux\":\"react-redux\"}],367:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (list, rowWidth) {\n var padding = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var rows = [];\n var row = [];\n\n list.forEach(function (element) {\n row.push(element);\n if (row.length === rowWidth) {\n rows.push(row);\n row = [];\n }\n });\n\n // pad row to required length?\n if (padding !== false && row.length > 0 && row.length < rowWidth) {\n for (var i = row.length; i < rowWidth; i++) {\n row.push(padding);\n }\n }\n\n if (row.length) {\n rows.push(row);\n }\n\n return rows;\n};\n\n},{}],368:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (a, b) {\n var ids = [];\n return a.concat(b).filter(function (item) {\n if (ids.indexOf(item.id) === -1) {\n ids.push(item.id);\n return true;\n } else {\n return false;\n }\n });\n};\n\n},{}],369:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar _class = function () {\n function _class(callback, count) {\n _classCallCheck(this, _class);\n\n this._callback = callback;\n this._count = count;\n }\n\n _createClass(_class, [{\n key: \"count\",\n value: function count() {\n this._count -= 1;\n if (this._count === 0) {\n this._callback();\n }\n }\n }]);\n\n return _class;\n}();\n\nexports.default = _class;\n\n},{}],370:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (text) {\n return text.replace(/[&<>\"']/g, function (m) {\n return map[m];\n });\n};\n\nvar map = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": '''\n};\n\n},{}],371:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (bytes) {\n if (bytes > 1024 * 1024 * 1024) {\n return roundSize(bytes / (1024 * 1024 * 1024)) + ' GB';\n } else if (bytes > 1024 * 1024) {\n return roundSize(bytes / (1024 * 1024)) + ' MB';\n } else if (bytes > 1024) {\n return roundSize(bytes / 1024) + ' KB';\n } else {\n return roundSize(bytes) + ' B';\n }\n};\n\nexports.roundSize = roundSize;\nfunction roundSize(value) {\n return value.toFixed(1);\n}\n\n},{}],372:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (str) {\n return URL_PATTERN.test($.trim(str));\n};\n\nvar URL_PATTERN = new RegExp('^(https?:\\\\/\\\\/)?((([a-z\\\\d]([a-z\\\\d-]*[a-z\\\\d])*)\\\\.)+[a-z]{2,}|((\\\\d{1,3}\\\\.){3}\\\\d{1,3}))(\\\\:\\\\d+)?(\\\\/[-a-z\\\\d%_.~+]*)*(\\\\?[;&a-z\\\\d%_.~+=-]*)?(\\\\#[-a-z\\\\d_]*)?$', 'i');\n\n},{}],373:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (Component, rootElementId) {\n var connected = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;\n\n var rootElement = document.getElementById(rootElementId);\n\n /* jshint ignore:start */\n var finalComponent = Component.props ? Component : _react2.default.createElement(Component, null);\n /* jshint ignore:end */\n\n if (rootElement) {\n if (connected) {\n _reactDom2.default.render(\n /* jshint ignore:start */\n _react2.default.createElement(\n _reactRedux.Provider,\n { store: _store2.default.getStore() },\n finalComponent\n ),\n /* jshint ignore:end */\n rootElement);\n } else {\n /* jshint ignore:start */\n _reactDom2.default.render(finalComponent, rootElement);\n /* jshint ignore:end */\n }\n }\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _reactRedux = require('react-redux');\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n},{\"../services/store\":364,\"react\":\"react\",\"react-dom\":\"react-dom\",\"react-redux\":\"react-redux\"}],374:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar OrderedList = function () {\n function OrderedList(items) {\n _classCallCheck(this, OrderedList);\n\n this.isOrdered = false;\n this._items = items || [];\n }\n\n _createClass(OrderedList, [{\n key: \"add\",\n value: function add(key, item, order) {\n this._items.push({\n key: key,\n item: item,\n\n after: order ? order.after || null : null,\n before: order ? order.before || null : null\n });\n }\n }, {\n key: \"get\",\n value: function get(key, value) {\n for (var i = 0; i < this._items.length; i++) {\n if (this._items[i].key === key) {\n return this._items[i].item;\n }\n }\n\n return value;\n }\n }, {\n key: \"has\",\n value: function has(key) {\n return this.get(key) !== undefined;\n }\n }, {\n key: \"values\",\n value: function values() {\n var values = [];\n for (var i = 0; i < this._items.length; i++) {\n values.push(this._items[i].item);\n }\n return values;\n }\n }, {\n key: \"order\",\n value: function order(values_only) {\n if (!this.isOrdered) {\n this._items = this._order(this._items);\n this.isOrdered = true;\n }\n\n if (values_only || typeof values_only === 'undefined') {\n return this.values();\n } else {\n return this._items;\n }\n }\n }, {\n key: \"orderedValues\",\n value: function orderedValues() {\n return this.order(true);\n }\n }, {\n key: \"_order\",\n value: function _order(unordered) {\n // Index of unordered items\n var index = [];\n unordered.forEach(function (item) {\n index.push(item.key);\n });\n\n // Ordered items\n var ordered = [];\n var ordering = [];\n\n // First pass: register items that\n // don't specify their order\n unordered.forEach(function (item) {\n if (!item.after && !item.before) {\n ordered.push(item);\n ordering.push(item.key);\n }\n });\n\n // Second pass: register items that\n // specify their before to \"_end\"\n unordered.forEach(function (item) {\n if (item.before === \"_end\") {\n ordered.push(item);\n ordering.push(item.key);\n }\n });\n\n // Third pass: keep iterating items\n // until we hit iterations limit or finish\n // ordering list\n function insertItem(item) {\n var insertAt = -1;\n if (ordering.indexOf(item.key) === -1) {\n if (item.after) {\n insertAt = ordering.indexOf(item.after);\n if (insertAt !== -1) {\n insertAt += 1;\n }\n } else if (item.before) {\n insertAt = ordering.indexOf(item.before);\n }\n\n if (insertAt !== -1) {\n ordered.splice(insertAt, 0, item);\n ordering.splice(insertAt, 0, item.key);\n }\n }\n }\n\n var iterations = 200;\n while (iterations > 0 && index.length !== ordering.length) {\n iterations -= 1;\n unordered.forEach(insertItem);\n }\n\n return ordered;\n }\n }]);\n\n return OrderedList;\n}();\n\nexports.default = OrderedList;\n\n},{}],375:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.int = int;\nexports.range = range;\nfunction int(min, max) {\n return Math.floor(Math.random() * (max - min + 1)) + min;\n}\n\nfunction range(min, max) {\n var array = new Array(int(min, max));\n for (var i = 0; i < array.length; i++) {\n array[i] = i;\n }\n\n return array;\n}\n\n},{}],376:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function () {\n window.scrollTo(0, 0);\n};\n\n},{}],377:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (options) {\n var routes = {\n component: options.component || null,\n childRoutes: []\n };\n\n if (options.root) {\n routes.childRoutes = [{\n path: options.root,\n onEnter: function onEnter(nextState, replaceState) {\n replaceState(null, options.paths[0].path);\n }\n }].concat(options.paths);\n } else {\n routes.childRoutes = options.paths;\n }\n\n _reactDom2.default.render(_react2.default.createElement(\n _reactRedux.Provider,\n { store: _store2.default.getStore() },\n _react2.default.createElement(_reactRouter.Router, { routes: routes, history: _reactRouter.browserHistory })\n ), rootElement);\n};\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _reactRedux = require('react-redux');\n\nvar _reactRouter = require('react-router');\n\nvar _store = require('../services/store');\n\nvar _store2 = _interopRequireDefault(_store);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar rootElement = document.getElementById('page-mount'); // jshint ignore:start\n\n},{\"../services/store\":364,\"react\":\"react\",\"react-dom\":\"react-dom\",\"react-redux\":\"react-redux\",\"react-router\":\"react-router\"}],378:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.push = push;\nexports.remove = remove;\nexports.toggle = toggle;\nfunction push(array, value) {\n if (array.indexOf(value) === -1) {\n var copy = array.slice();\n copy.push(value);\n return copy;\n } else {\n return array;\n }\n}\n\nfunction remove(array, value) {\n if (array.indexOf(value) >= 0) {\n return array.filter(function (i) {\n return i !== value;\n });\n } else {\n return array;\n }\n}\n\nfunction toggle(array, value) {\n if (array.indexOf(value) === -1) {\n var copy = array.slice();\n copy.push(value);\n return copy;\n } else {\n return array.filter(function (i) {\n return i !== value;\n });\n }\n}\n\n},{}],379:[function(require,module,exports){\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = function (string, subString) {\n string = (string + \"\").toLowerCase();\n subString = (subString + \"\").toLowerCase();\n\n if (subString.length <= 0) return 0;\n\n var n = 0;\n var pos = 0;\n var step = subString.length;\n\n while (true) {\n pos = string.indexOf(subString, pos);\n if (pos >= 0) {\n n += 1;\n pos += step;\n } else {\n break;\n }\n }\n\n return n;\n};\n\n},{}],380:[function(require,module,exports){\n'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.required = required;\nexports.email = email;\nexports.minLength = minLength;\nexports.maxLength = maxLength;\nexports.usernameMinLength = usernameMinLength;\nexports.usernameMaxLength = usernameMaxLength;\nexports.usernameContent = usernameContent;\nexports.passwordMinLength = passwordMinLength;\nvar EMAIL = /^(([^<>()[\\]\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\nvar USERNAME = new RegExp('^[0-9a-z]+$', 'i');\n\nfunction required() {\n return function (value) {\n if ($.trim(value).length === 0) {\n return gettext(\"This field is required.\");\n }\n };\n}\n\nfunction email(message) {\n return function (value) {\n if (!EMAIL.test(value)) {\n return message || gettext(\"Enter a valid email address.\");\n }\n };\n}\n\nfunction minLength(limitValue, message) {\n return function (value) {\n var returnMessage = '';\n var length = $.trim(value).length;\n\n if (length < limitValue) {\n if (message) {\n returnMessage = message(limitValue, length);\n } else {\n returnMessage = ngettext(\"Ensure this value has at least %(limit_value)s character (it has %(show_value)s).\", \"Ensure this value has at least %(limit_value)s characters (it has %(show_value)s).\", limitValue);\n }\n return interpolate(returnMessage, {\n limit_value: limitValue,\n show_value: length\n }, true);\n }\n };\n}\n\nfunction maxLength(limitValue, message) {\n return function (value) {\n var returnMessage = '';\n var length = $.trim(value).length;\n\n if (length > limitValue) {\n if (message) {\n returnMessage = message(limitValue, length);\n } else {\n returnMessage = ngettext(\"Ensure this value has at most %(limit_value)s character (it has %(show_value)s).\", \"Ensure this value has at most %(limit_value)s characters (it has %(show_value)s).\", limitValue);\n }\n return interpolate(returnMessage, {\n limit_value: limitValue,\n show_value: length\n }, true);\n }\n };\n}\n\nfunction usernameMinLength(lengthMin) {\n var message = function message(lengthMin) {\n return ngettext(\"Username must be at least %(limit_value)s character long.\", \"Username must be at least %(limit_value)s characters long.\", lengthMin);\n };\n return minLength(lengthMin, message);\n}\n\nfunction usernameMaxLength(lengthMax) {\n var message = function message(lengthMax) {\n return ngettext(\"Username cannot be longer than %(limit_value)s character.\", \"Username cannot be longer than %(limit_value)s characters.\", lengthMax);\n };\n return maxLength(lengthMax, message);\n}\n\nfunction usernameContent() {\n return function (value) {\n if (!USERNAME.test($.trim(value))) {\n return gettext(\"Username can only contain latin alphabet letters and digits.\");\n }\n };\n}\n\nfunction passwordMinLength(limitValue) {\n return function (value) {\n var length = value.length;\n\n if (length < limitValue) {\n var returnMessage = ngettext(\"Valid password must be at least %(limit_value)s character long.\", \"Valid password must be at least %(limit_value)s characters long.\", limitValue);\n\n return interpolate(returnMessage, {\n limit_value: limitValue,\n show_value: length\n }, true);\n }\n };\n}\n\n},{}]},{},[291,292,293,294,295,310,311,312,313,314,315,316,317,333,334,335,336,296,297,298,299,300,301,302,303,304,305,306,307,308,309,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332]);\n"]} \ No newline at end of file diff --git a/misago/static/misago/js/vendor.js b/misago/static/misago/js/vendor.js index 0029bca3dc..72cf2fbdb7 100644 --- a/misago/static/misago/js/vendor.js +++ b/misago/static/misago/js/vendor.js @@ -1,17 +1,17 @@ -require=function e(t,n,r){function o(a,s){if(!n[a]){if(!t[a]){var u="function"==typeof require&&require;if(!s&&u)return u(a,!0);if(i)return i(a,!0);var l=new Error("Cannot find module '"+a+"'");throw l.code="MODULE_NOT_FOUND",l}var c=n[a]={exports:{}};t[a][0].call(c.exports,function(e){var n=t[a][1][e];return o(n?n:e)},c,c.exports,e,t,n,r)}return n[a].exports}for(var i="function"==typeof require&&require,a=0;a]/gm,function(e){return M[e]})}function n(e){return e.nodeName.toLowerCase()}function r(e,t){var n=e&&e.exec(t);return n&&0===n.index}function o(e){return S.test(e)}function i(e){var t,n,r,i,a=e.className+" ";if(a+=e.parentNode?e.parentNode.className:"",n=T.exec(a))return w(n[1])?n[1]:"no-highlight";for(a=a.split(/\s+/),t=0,r=a.length;r>t;t++)if(i=a[t],o(i)||w(i))return i}function a(e,t){var n,r={};for(n in e)r[n]=e[n];if(t)for(n in t)r[n]=t[n];return r}function s(e){var t=[];return function r(e,o){for(var i=e.firstChild;i;i=i.nextSibling)3===i.nodeType?o+=i.nodeValue.length:1===i.nodeType&&(t.push({event:"start",offset:o,node:i}),o=r(i,o),n(i).match(/br|hr|img|input/)||t.push({event:"stop",offset:o,node:i}));return o}(e,0),t}function u(e,r,o){function i(){return e.length&&r.length?e[0].offset!==r[0].offset?e[0].offset"}function s(e){c+=""}function u(e){("start"===e.event?a:s)(e.node)}for(var l=0,c="",d=[];e.length||r.length;){var f=i();if(c+=t(o.substring(l,f[0].offset)),l=f[0].offset,f===e){d.reverse().forEach(s);do u(f.splice(0,1)[0]),f=i();while(f===e&&f.length&&f[0].offset===l);d.reverse().forEach(a)}else"start"===f[0].event?d.push(f[0].node):d.pop(),u(f.splice(0,1)[0])}return c+t(o.substr(l))}function l(e){function t(e){return e&&e.source||e}function n(n,r){return new RegExp(t(n),"m"+(e.cI?"i":"")+(r?"g":""))}function r(o,i){if(!o.compiled){if(o.compiled=!0,o.k=o.k||o.bK,o.k){var s={},u=function(t,n){e.cI&&(n=n.toLowerCase()),n.split(" ").forEach(function(e){var n=e.split("|");s[n[0]]=[t,n[1]?Number(n[1]):1]})};"string"==typeof o.k?u("keyword",o.k):x(o.k).forEach(function(e){u(e,o.k[e])}),o.k=s}o.lR=n(o.l||/\w+/,!0),i&&(o.bK&&(o.b="\\b("+o.bK.split(" ").join("|")+")\\b"),o.b||(o.b=/\B|\b/),o.bR=n(o.b),o.e||o.eW||(o.e=/\B|\b/),o.e&&(o.eR=n(o.e)),o.tE=t(o.e)||"",o.eW&&i.tE&&(o.tE+=(o.e?"|":"")+i.tE)),o.i&&(o.iR=n(o.i)),null==o.r&&(o.r=1),o.c||(o.c=[]);var l=[];o.c.forEach(function(e){e.v?e.v.forEach(function(t){l.push(a(e,t))}):l.push("self"===e?o:e)}),o.c=l,o.c.forEach(function(e){r(e,o)}),o.starts&&r(o.starts,i);var c=o.c.map(function(e){return e.bK?"\\.?("+e.b+")\\.?":e.b}).concat([o.tE,o.i]).map(t).filter(Boolean);o.t=c.length?n(c.join("|"),!0):{exec:function(){return null}}}}r(e)}function c(e,n,o,i){function a(e,t){var n,o;for(n=0,o=t.c.length;o>n;n++)if(r(t.c[n].bR,e))return t.c[n]}function s(e,t){if(r(e.eR,t)){for(;e.endsParent&&e.parent;)e=e.parent;return e}return e.eW?s(e.parent,t):void 0}function u(e,t){return!o&&r(t.iR,e)}function f(e,t){var n=b.cI?t[0].toLowerCase():t[0];return e.k.hasOwnProperty(n)&&e.k[n]}function p(e,t,n,r){var o=r?"":P.classPrefix,i='',i+t+a}function h(){var e,n,r,o;if(!x.k)return t(T);for(o="",n=0,x.lR.lastIndex=0,r=x.lR.exec(T);r;)o+=t(T.substring(n,r.index)),e=f(x,r),e?(R+=e[1],o+=p(e[0],t(r[0]))):o+=t(r[0]),n=x.lR.lastIndex,r=x.lR.exec(T);return o+t(T.substr(n))}function m(){var e="string"==typeof x.sL;if(e&&!C[x.sL])return t(T);var n=e?c(x.sL,T,!0,E[x.sL]):d(T,x.sL.length?x.sL:void 0);return x.r>0&&(R+=n.r),e&&(E[x.sL]=n.top),p(n.language,n.value,!1,!0)}function g(){S+=null!=x.sL?m():h(),T=""}function v(e){S+=e.cN?p(e.cN,"",!0):"",x=Object.create(e,{parent:{value:x}})}function y(e,t){if(T+=e,null==t)return g(),0;var n=a(t,x);if(n)return n.skip?T+=t:(n.eB&&(T+=t),g(),n.rB||n.eB||(T=t)),v(n,t),n.rB?0:t.length;var r=s(x,t);if(r){var o=x;o.skip?T+=t:(o.rE||o.eE||(T+=t),g(),o.eE&&(T=t));do x.cN&&(S+=k),x.skip||(R+=x.r),x=x.parent;while(x!==r.parent);return r.starts&&v(r.starts,""),o.rE?0:t.length}if(u(t,x))throw new Error('Illegal lexeme "'+t+'" for mode "'+(x.cN||"")+'"');return T+=t,t.length||1}var b=w(e);if(!b)throw new Error('Unknown language: "'+e+'"');l(b);var _,x=i||b,E={},S="";for(_=x;_!==b;_=_.parent)_.cN&&(S=p(_.cN,"",!0)+S);var T="",R=0;try{for(var M,O,D=0;x.t.lastIndex=D,M=x.t.exec(n),M;)O=y(n.substring(D,M.index),M[0]),D=M.index+O;for(y(n.substr(D)),_=x;_.parent;_=_.parent)_.cN&&(S+=k);return{r:R,value:S,language:e,top:x}}catch(N){if(N.message&&-1!==N.message.indexOf("Illegal"))return{r:0,value:t(n)};throw N}}function d(e,n){n=n||P.languages||x(C);var r={r:0,value:t(e)},o=r;return n.filter(w).forEach(function(t){var n=c(t,e,!1);n.language=t,n.r>o.r&&(o=n),n.r>r.r&&(o=r,r=n)}),o.language&&(r.second_best=o),r}function f(e){return P.tabReplace||P.useBR?e.replace(R,function(e,t){return P.useBR&&"\n"===e?"
    ":P.tabReplace?t.replace(/\t/g,P.tabReplace):void 0}):e}function p(e,t,n){var r=t?E[t]:n,o=[e.trim()];return e.match(/\bhljs\b/)||o.push("hljs"),-1===e.indexOf(r)&&o.push(r),o.join(" ").trim()}function h(e){var t,n,r,a,l,h=i(e);o(h)||(P.useBR?(t=document.createElementNS("http://www.w3.org/1999/xhtml","div"),t.innerHTML=e.innerHTML.replace(/\n/g,"").replace(//g,"\n")):t=e,l=t.textContent,r=h?c(h,l,!0):d(l),n=s(t),n.length&&(a=document.createElementNS("http://www.w3.org/1999/xhtml","div"),a.innerHTML=r.value,r.value=u(n,s(a),l)),r.value=f(r.value),e.innerHTML=r.value,e.className=p(e.className,h,r.language),e.result={language:r.language,re:r.r},r.second_best&&(e.second_best={language:r.second_best.language,re:r.second_best.r}))}function m(e){P=a(P,e)}function g(){if(!g.called){g.called=!0;var e=document.querySelectorAll("pre code");_.forEach.call(e,h)}}function v(){addEventListener("DOMContentLoaded",g,!1),addEventListener("load",g,!1)}function y(t,n){var r=C[t]=n(e);r.aliases&&r.aliases.forEach(function(e){E[e]=t})}function b(){return x(C)}function w(e){return e=(e||"").toLowerCase(),C[e]||C[E[e]]}var _=[],x=Object.keys,C={},E={},S=/^(no-?highlight|plain|text)$/i,T=/\blang(?:uage)?-([\w-]+)\b/i,R=/((^(<[^>]+>|\t|)+|(?:\n)))/gm,k="
    ",P={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0},M={"&":"&","<":"<",">":">"};return e.highlight=c,e.highlightAuto=d,e.fixMarkup=f,e.highlightBlock=h,e.configure=m,e.initHighlighting=g,e.initHighlightingOnLoad=v,e.registerLanguage=y,e.listLanguages=b,e.getLanguage=w,e.inherit=a,e.IR="[a-zA-Z]\\w*",e.UIR="[a-zA-Z_]\\w*",e.NR="\\b\\d+(\\.\\d+)?",e.CNR="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",e.BNR="\\b(0b[01]+)",e.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",e.BE={b:"\\\\[\\s\\S]",r:0},e.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[e.BE]},e.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[e.BE]},e.PWM={b:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|like)\b/},e.C=function(t,n,r){var o=e.inherit({cN:"comment",b:t,e:n,c:[]},r||{});return o.c.push(e.PWM),o.c.push({cN:"doctag",b:"(?:TODO|FIXME|NOTE|BUG|XXX):",r:0}),o},e.CLCM=e.C("//","$"),e.CBCM=e.C("/\\*","\\*/"),e.HCM=e.C("#","$"),e.NM={cN:"number",b:e.NR,r:0},e.CNM={cN:"number",b:e.CNR,r:0},e.BNM={cN:"number",b:e.BNR,r:0},e.CSSNM={cN:"number",b:e.NR+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",r:0},e.RM={cN:"regexp",b:/\//,e:/\/[gimuy]*/,i:/\n/,c:[e.BE,{b:/\[/,e:/\]/,r:0,c:[e.BE]}]},e.TM={cN:"title",b:e.IR,r:0},e.UTM={cN:"title",b:e.UIR,r:0},e.METHOD_GUARD={b:"\\.\\s*"+e.UIR,r:0},e}),hljs.registerLanguage("xml",function(e){var t="[A-Za-z0-9\\._:-]+",n={eW:!0,i:/`]+/}]}]}]};return{aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist"],cI:!0,c:[{cN:"meta",b:"",r:10,c:[{b:"\\[",e:"\\]"}]},e.C("",{r:10}),{b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{b:/<\?(php)?/,e:/\?>/,sL:"php",c:[{b:"/\\*",e:"\\*/",skip:!0}]},{cN:"tag",b:"|$)",e:">",k:{name:"style"},c:[n],starts:{e:"",rE:!0,sL:["css","xml"]}},{cN:"tag",b:"|$)",e:">",k:{name:"script"},c:[n],starts:{e:"",rE:!0,sL:["actionscript","javascript","handlebars","xml"]}},{cN:"meta",v:[{b:/<\?xml/,e:/\?>/,r:10},{b:/<\?\w+/,e:/\?>/}]},{cN:"tag",b:"",c:[{cN:"name",b:/[^\/><\s]+/,r:0},n]}]}}),hljs.registerLanguage("markdown",function(e){return{aliases:["md","mkdown","mkd"],c:[{cN:"section",v:[{b:"^#{1,6}",e:"$"},{b:"^.+?\\n[=-]{2,}$"}]},{b:"<",e:">",sL:"xml",r:0},{cN:"bullet",b:"^([*+-]|(\\d+\\.))\\s+"},{cN:"strong",b:"[*_]{2}.+?[*_]{2}"},{cN:"emphasis",v:[{b:"\\*.+?\\*"},{b:"_.+?_",r:0}]},{cN:"quote",b:"^>\\s+",e:"$"},{cN:"code",v:[{b:"^```w*s*$",e:"^```s*$"},{b:"`.+?`"},{b:"^( {4}|\t)",e:"$",r:0}]},{b:"^[-\\*]{3,}",e:"$"},{b:"\\[.+?\\][\\(\\[].*?[\\)\\]]",rB:!0,c:[{cN:"string",b:"\\[",e:"\\]",eB:!0,rE:!0,r:0},{cN:"link",b:"\\]\\(",e:"\\)",eB:!0,eE:!0},{cN:"symbol",b:"\\]\\[",e:"\\]",eB:!0,eE:!0}],r:10},{b:/^\[[^\n]+\]:/,rB:!0,c:[{cN:"symbol",b:/\[/,e:/\]/,eB:!0,eE:!0},{cN:"link",b:/:\s*/,e:/$/,eB:!0}]}]}}),hljs.registerLanguage("ini",function(e){var t={cN:"string",c:[e.BE],v:[{b:"'''",e:"'''",r:10},{b:'"""',e:'"""',r:10},{b:'"',e:'"'},{b:"'",e:"'"}]};return{aliases:["toml"],cI:!0,i:/\S/,c:[e.C(";","$"),e.HCM,{cN:"section",b:/^\s*\[+/,e:/\]+/},{b:/^[a-z0-9\[\]_-]+\s*=\s*/,e:"$",rB:!0,c:[{cN:"attr",b:/[a-z0-9\[\]_-]+/},{b:/=/,eW:!0,r:0,c:[{cN:"literal",b:/\bon|off|true|false|yes|no\b/},{cN:"variable",v:[{b:/\$[\w\d"][\w\d_]*/},{b:/\$\{(.*?)}/}]},t,{cN:"number",b:/([\+\-]+)?[\d]+_[\d_]+/},e.NM]}]}]}}),hljs.registerLanguage("python",function(e){var t={cN:"meta",b:/^(>>>|\.\.\.) /},n={cN:"string",c:[e.BE],v:[{b:/(u|b)?r?'''/,e:/'''/,c:[t],r:10},{b:/(u|b)?r?"""/,e:/"""/,c:[t],r:10},{b:/(u|r|ur)'/,e:/'/,r:10},{b:/(u|r|ur)"/,e:/"/,r:10},{b:/(b|br)'/,e:/'/},{b:/(b|br)"/,e:/"/},e.ASM,e.QSM]},r={cN:"number",r:0,v:[{b:e.BNR+"[lLjJ]?"},{b:"\\b(0o[0-7]+)[lLjJ]?"},{b:e.CNR+"[lLjJ]?"}]},o={cN:"params",b:/\(/,e:/\)/,c:["self",t,r,n]};return{aliases:["py","gyp"],k:{keyword:"and elif is global as in if from raise for except finally print import pass return exec else break not with class assert yield try while continue del or def lambda async await nonlocal|10 None True False",built_in:"Ellipsis NotImplemented"},i:/(<\/|->|\?)|=>/,c:[t,r,n,e.HCM,{v:[{cN:"function",bK:"def"},{cN:"class",bK:"class"}],e:/:/,i:/[${=;\n,]/,c:[e.UTM,o,{b:/->/,eW:!0,k:"None"}]},{cN:"meta",b:/^[\t ]*@/,e:/$/},{b:/\b(print|exec)\(/}]}}),hljs.registerLanguage("css",function(e){var t="[a-zA-Z-][a-zA-Z0-9_-]*",n={b:/[A-Z\_\.\-]+\s*:/,rB:!0,e:";",eW:!0,c:[{cN:"attribute",b:/\S/,e:":",eE:!0,starts:{eW:!0,eE:!0,c:[{b:/[\w-]+\(/,rB:!0,c:[{cN:"built_in",b:/[\w-]+/},{b:/\(/,e:/\)/,c:[e.ASM,e.QSM]}]},e.CSSNM,e.QSM,e.ASM,e.CBCM,{cN:"number",b:"#[0-9A-Fa-f]+"},{cN:"meta",b:"!important"}]}}]};return{cI:!0,i:/[=\/|'\$]/,c:[e.CBCM,{cN:"selector-id",b:/#[A-Za-z0-9_-]+/},{cN:"selector-class",b:/\.[A-Za-z0-9_-]+/},{cN:"selector-attr",b:/\[/,e:/\]/,i:"$"},{cN:"selector-pseudo",b:/:(:)?[a-zA-Z0-9\_\-\+\(\)"'.]+/},{b:"@(font-face|page)",l:"[a-z-]+",k:"font-face page"},{b:"@",e:"[{;]",i:/:/,c:[{cN:"keyword",b:/\w+/},{b:/\s/,eW:!0,eE:!0,r:0,c:[e.ASM,e.QSM,e.CSSNM]}]},{cN:"selector-tag",b:t,r:0},{b:"{",e:"}",i:/\S/,c:[e.CBCM,n]}]}}),hljs.registerLanguage("less",function(e){var t="[\\w-]+",n="("+t+"|@{"+t+"})",r=[],o=[],i=function(e){return{cN:"string",b:"~?"+e+".*?"+e}},a=function(e,t,n){return{cN:e,b:t,r:n}},s={b:"\\(",e:"\\)",c:o,r:0};o.push(e.CLCM,e.CBCM,i("'"),i('"'),e.CSSNM,{b:"(url|data-uri)\\(",starts:{cN:"string",e:"[\\)\\n]",eE:!0}},a("number","#[0-9A-Fa-f]+\\b"),s,a("variable","@@?"+t,10),a("variable","@{"+t+"}"),a("built_in","~?`[^`]*?`"),{cN:"attribute",b:t+"\\s*:",e:":",rB:!0,eE:!0},{cN:"meta",b:"!important"});var u=o.concat({b:"{",e:"}",c:r}),l={bK:"when",eW:!0,c:[{bK:"and not"}].concat(o)},c={b:n+"\\s*:",rB:!0,e:"[;}]",r:0,c:[{cN:"attribute",b:n,e:":",eE:!0,starts:{eW:!0,i:"[<=$]",r:0,c:o}}]},d={cN:"keyword",b:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{e:"[;{}]",rE:!0,c:o,r:0}},f={cN:"variable",v:[{b:"@"+t+"\\s*:",r:15},{b:"@"+t}],starts:{e:"[;}]",rE:!0,c:u}},p={v:[{b:"[\\.#:&\\[>]",e:"[;{}]"},{b:n,e:"{"}],rB:!0,rE:!0,i:"[<='$\"]",r:0,c:[e.CLCM,e.CBCM,l,a("keyword","all\\b"),a("variable","@{"+t+"}"),a("selector-tag",n+"%?",0),a("selector-id","#"+n),a("selector-class","\\."+n,0),a("selector-tag","&",0),{cN:"selector-attr",b:"\\[",e:"\\]"},{cN:"selector-pseudo",b:/:(:)?[a-zA-Z0-9\_\-\+\(\)"'.]+/},{b:"\\(",e:"\\)",c:u},{b:"!important"}]};return r.push(e.CLCM,e.CBCM,d,f,c,p),{cI:!0,i:"[=>'/<($\"]",c:r}}),hljs.registerLanguage("scss",function(e){var t="[a-zA-Z-][a-zA-Z0-9_-]*",n={cN:"variable",b:"(\\$"+t+")\\b"},r={cN:"number",b:"#[0-9A-Fa-f]+"};return{cN:"attribute",b:"[A-Z\\_\\.\\-]+",e:":",eE:!0,i:"[^\\s]",starts:{eW:!0,eE:!0,c:[r,e.CSSNM,e.QSM,e.ASM,e.CBCM,{cN:"meta",b:"!important"}]}},{cI:!0,i:"[=/|']",c:[e.CLCM,e.CBCM,{cN:"selector-id",b:"\\#[A-Za-z0-9_-]+",r:0},{cN:"selector-class",b:"\\.[A-Za-z0-9_-]+",r:0},{cN:"selector-attr",b:"\\[",e:"\\]",i:"$"},{cN:"selector-tag",b:"\\b(a|abbr|acronym|address|area|article|aside|audio|b|base|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|div|dl|dt|em|embed|fieldset|figcaption|figure|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|map|mark|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|samp|script|section|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|ul|var|video)\\b",r:0},{b:":(visited|valid|root|right|required|read-write|read-only|out-range|optional|only-of-type|only-child|nth-of-type|nth-last-of-type|nth-last-child|nth-child|not|link|left|last-of-type|last-child|lang|invalid|indeterminate|in-range|hover|focus|first-of-type|first-line|first-letter|first-child|first|enabled|empty|disabled|default|checked|before|after|active)"},{b:"::(after|before|choices|first-letter|first-line|repeat-index|repeat-item|selection|value)"},n,{cN:"attribute",b:"\\b(z-index|word-wrap|word-spacing|word-break|width|widows|white-space|visibility|vertical-align|unicode-bidi|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform-style|transform-origin|transform|top|text-underline-position|text-transform|text-shadow|text-rendering|text-overflow|text-indent|text-decoration-style|text-decoration-line|text-decoration-color|text-decoration|text-align-last|text-align|tab-size|table-layout|right|resize|quotes|position|pointer-events|perspective-origin|perspective|page-break-inside|page-break-before|page-break-after|padding-top|padding-right|padding-left|padding-bottom|padding|overflow-y|overflow-x|overflow-wrap|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|order|opacity|object-position|object-fit|normal|none|nav-up|nav-right|nav-left|nav-index|nav-down|min-width|min-height|max-width|max-height|mask|marks|margin-top|margin-right|margin-left|margin-bottom|margin|list-style-type|list-style-position|list-style-image|list-style|line-height|letter-spacing|left|justify-content|initial|inherit|ime-mode|image-orientation|image-resolution|image-rendering|icon|hyphens|height|font-weight|font-variant-ligatures|font-variant|font-style|font-stretch|font-size-adjust|font-size|font-language-override|font-kerning|font-feature-settings|font-family|font|float|flex-wrap|flex-shrink|flex-grow|flex-flow|flex-direction|flex-basis|flex|filter|empty-cells|display|direction|cursor|counter-reset|counter-increment|content|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|columns|color|clip-path|clip|clear|caption-side|break-inside|break-before|break-after|box-sizing|box-shadow|box-decoration-break|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-left-width|border-left-style|border-left-color|border-left|border-image-width|border-image-source|border-image-slice|border-image-repeat|border-image-outset|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-attachment|background-blend-mode|background|backface-visibility|auto|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation|align-self|align-items|align-content)\\b",i:"[^\\s]"},{b:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{b:":",e:";",c:[n,r,e.CSSNM,e.QSM,e.ASM,{cN:"meta",b:"!important"}]},{b:"@",e:"[{;]",k:"mixin include extend for if else each while charset import debug media page content font-face namespace warn",c:[n,e.QSM,e.ASM,r,e.CSSNM,{b:"\\s[A-Za-z0-9_.-]+",r:0}]}]}}),hljs.registerLanguage("json",function(e){var t={literal:"true false null"},n=[e.QSM,e.CNM],r={e:",",eW:!0,eE:!0,c:n,k:t},o={b:"{",e:"}",c:[{cN:"attr",b:/"/,e:/"/,c:[e.BE],i:"\\n"},e.inherit(r,{b:/:/})],i:"\\S"},i={b:"\\[",e:"\\]",c:[e.inherit(r)],i:"\\S"};return n.splice(n.length,0,o,i),{c:n,k:t,i:"\\S"}}),hljs.registerLanguage("javascript",function(e){var t="[A-Za-z$_][0-9A-Za-z$_]*",n={keyword:"in of if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await static import from as",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Promise"},r={cN:"number",v:[{b:"\\b(0[bB][01]+)"},{b:"\\b(0[oO][0-7]+)"},{b:e.CNR}],r:0},o={cN:"subst",b:"\\$\\{",e:"\\}",k:n,c:[]},i={cN:"string",b:"`",e:"`",c:[e.BE,o]};o.c=[e.ASM,e.QSM,i,r,e.RM];var a=o.c.concat([e.CBCM,e.CLCM]);return{aliases:["js","jsx"],k:n,c:[{cN:"meta",r:10,b:/^\s*['"]use (strict|asm)['"]/},{cN:"meta",b:/^#!/,e:/$/},e.ASM,e.QSM,i,e.CLCM,e.CBCM,r,{b:/[{,]\s*/,r:0,c:[{b:t+"\\s*:",rB:!0,r:0,c:[{cN:"attr",b:t,r:0}]}]},{b:"("+e.RSR+"|\\b(case|return|throw)\\b)\\s*",k:"return throw case",c:[e.CLCM,e.CBCM,e.RM,{cN:"function",b:"(\\(.*?\\)|"+t+")\\s*=>",rB:!0,e:"\\s*=>",c:[{cN:"params",v:[{b:t},{b:/\(\s*\)/},{b:/\(/,e:/\)/,eB:!0,eE:!0,k:n,c:a}]}]},{b://,sL:"xml",c:[{b:/<\w+\s*\/>/,skip:!0},{b:/<\w+/,e:/(\/\w+|\w+\/)>/,skip:!0,c:[{b:/<\w+\s*\/>/,skip:!0},"self"]}]}],r:0},{cN:"function",bK:"function",e:/\{/,eE:!0,c:[e.inherit(e.TM,{b:t}),{cN:"params",b:/\(/,e:/\)/,eB:!0,eE:!0,c:a}],i:/\[|%/},{b:/\$[(.]/},e.METHOD_GUARD,{cN:"class",bK:"class",e:/[{;=]/,eE:!0,i:/[:"\[\]]/,c:[{bK:"extends"},e.UTM]},{bK:"constructor",e:/\{/,eE:!0}],i:/#(?!!)/}}),hljs.registerLanguage("bash",function(e){var t={cN:"variable",v:[{b:/\$[\w\d#@][\w\d_]*/},{b:/\$\{(.*?)}/}]},n={cN:"string",b:/"/,e:/"/,c:[e.BE,t,{cN:"variable",b:/\$\(/,e:/\)/,c:[e.BE]}]},r={cN:"string",b:/'/,e:/'/};return{aliases:["sh","zsh"],l:/-?[a-z\._]+/,k:{keyword:"if then else elif fi for while in do done case esac function",literal:"true false",built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp",_:"-ne -eq -lt -gt -f -d -e -s -l -a"},c:[{cN:"meta",b:/^#![^\n]+sh\s*$/,r:10},{cN:"function",b:/\w[\w\d_]*\s*\(\s*\)\s*\{/,rB:!0,c:[e.inherit(e.TM,{b:/\w[\w\d_]*/})],r:0},e.HCM,n,r,t]}})},{}],2:[function(e,t,n){!function(r,o){"function"==typeof define&&define.amd?define(["jquery"],function(e){return o(e)}):"object"==typeof n?t.exports=o(e("jquery")):o(jQuery)}(this,function(e){var t,n;n={ESC:27,TAB:9,ENTER:13,CTRL:17,A:65,P:80,N:78,LEFT:37,UP:38,RIGHT:39,DOWN:40,BACKSPACE:8,SPACE:32},t={beforeSave:function(e){return o.arrayToDefaultHash(e)},matcher:function(e,t,n,r){var o,i,a,s,u;return e=e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),n&&(e="(?:^|\\s)"+e),o=decodeURI("%C3%80"),i=decodeURI("%C3%BF"),u=r?" ":"",s=new RegExp(e+"([A-Za-z"+o+"-"+i+"0-9_"+u+"'.+-]*)$|"+e+"([^\\x00-\\xff]*)$","gi"),a=s.exec(t),a?a[2]||a[1]:null},filter:function(e,t,n){var r,o,i,a;for(r=[],o=0,a=t.length;a>o;o++)i=t[o],~new String(i[n]).toLowerCase().indexOf(e.toLowerCase())&&r.push(i);return r},remoteFilter:null,sorter:function(e,t,n){var r,o,i,a;if(!e)return t;for(r=[],o=0,a=t.length;a>o;o++)i=t[o],i.atwho_order=new String(i[n]).toLowerCase().indexOf(e.toLowerCase()),i.atwho_order>-1&&r.push(i);return r.sort(function(e,t){return e.atwho_order-t.atwho_order})},tplEval:function(e,t){var n,r,o;o=e;try{return"string"!=typeof e&&(o=e(t)),o.replace(/\$\{([^\}]*)\}/g,function(e,n,r){return t[n]})}catch(r){return n=r,""}},highlighter:function(e,t){var n;return t?(n=new RegExp(">\\s*([^<]*?)("+t.replace("+","\\+")+")([^<]*)\\s*<","ig"),e.replace(n,function(e,t,n,r){return"> "+t+""+n+""+r+" <"})):e},beforeInsert:function(e,t,n){return e},beforeReposition:function(e){return e},afterMatchFailed:function(e,t){}};var r;r=function(){function t(t){this.currentFlag=null,this.controllers={},this.aliasMaps={},this.$inputor=e(t),this.setupRootElement(),this.listen()}return t.prototype.createContainer=function(t){var n;return null!=(n=this.$el)&&n.remove(),e(t.body).append(this.$el=e("
    "))},t.prototype.setupRootElement=function(t,n){var r,o;if(null==n&&(n=!1),t)this.window=t.contentWindow,this.document=t.contentDocument||this.window.document,this.iframe=t;else{this.document=this.$inputor[0].ownerDocument,this.window=this.document.defaultView||this.document.parentWindow;try{this.iframe=this.window.frameElement}catch(o){if(r=o,this.iframe=null,e.fn.atwho.debug)throw new Error("iframe auto-discovery is failed.\nPlease use `setIframe` to set the target iframe manually.\n"+r)}}return this.createContainer((this.iframeAsRoot=n)?this.document:document)},t.prototype.controller=function(e){var t,n,r,o;if(this.aliasMaps[e])n=this.controllers[this.aliasMaps[e]];else{o=this.controllers;for(r in o)if(t=o[r],r===e){n=t;break}}return n?n:this.controllers[this.currentFlag]},t.prototype.setContextFor=function(e){return this.currentFlag=e,this},t.prototype.reg=function(e,t){var n,r;return r=(n=this.controllers)[e]||(n[e]=this.$inputor.is("[contentEditable]")?new l(this,e):new a(this,e)),t.alias&&(this.aliasMaps[t.alias]=e),r.init(t),this},t.prototype.listen=function(){return this.$inputor.on("compositionstart",function(e){return function(t){var n;return null!=(n=e.controller())&&n.view.hide(),e.isComposing=!0,null}}(this)).on("compositionend",function(e){return function(t){return e.isComposing=!1,setTimeout(function(t){return e.dispatch(t)}),null}}(this)).on("keyup.atwhoInner",function(e){return function(t){return e.onKeyup(t)}}(this)).on("keydown.atwhoInner",function(e){return function(t){return e.onKeydown(t)}}(this)).on("blur.atwhoInner",function(e){return function(t){var n;return(n=e.controller())?(n.expectedQueryCBId=null,n.view.hide(t,n.getOpt("displayTimeout"))):void 0}}(this)).on("click.atwhoInner",function(e){return function(t){return e.dispatch(t)}}(this)).on("scroll.atwhoInner",function(e){return function(){var t;return t=e.$inputor.scrollTop(),function(n){var r,o;return r=n.target.scrollTop,t!==r&&null!=(o=e.controller())&&o.view.hide(n),t=r,!0}}}(this)())},t.prototype.shutdown=function(){var e,t,n;n=this.controllers;for(e in n)t=n[e],t.destroy(),delete this.controllers[e];return this.$inputor.off(".atwhoInner"),this.$el.remove()},t.prototype.dispatch=function(e){var t,n,r,o;r=this.controllers,o=[];for(t in r)n=r[t],o.push(n.lookUp(e));return o},t.prototype.onKeyup=function(t){var r;switch(t.keyCode){case n.ESC:t.preventDefault(),null!=(r=this.controller())&&r.view.hide();break;case n.DOWN:case n.UP:case n.CTRL:case n.ENTER:e.noop();break;case n.P:case n.N:t.ctrlKey||this.dispatch(t);break;default:this.dispatch(t)}},t.prototype.onKeydown=function(t){var r,o;if(o=null!=(r=this.controller())?r.view:void 0,o&&o.visible())switch(t.keyCode){case n.ESC:t.preventDefault(),o.hide(t);break;case n.UP:t.preventDefault(),o.prev();break;case n.DOWN:t.preventDefault(),o.next();break;case n.P:if(!t.ctrlKey)return;t.preventDefault(),o.prev();break;case n.N:if(!t.ctrlKey)return;t.preventDefault(),o.next();break;case n.TAB:case n.ENTER:case n.SPACE:if(!o.visible())return;if(!this.controller().getOpt("spaceSelectsMatch")&&t.keyCode===n.SPACE)return;if(!this.controller().getOpt("tabSelectsMatch")&&t.keyCode===n.TAB)return;o.highlighted()?(t.preventDefault(),o.choose(t)):o.hide(t);break;default:e.noop()}},t}();var o,i=[].slice;o=function(){function n(t,n){this.app=t,this.at=n,this.$inputor=this.app.$inputor,this.id=this.$inputor[0].id||this.uid(),this.expectedQueryCBId=null,this.setting=null,this.query=null,this.pos=0,this.range=null,0===(this.$el=e("#atwho-ground-"+this.id,this.app.$el)).length&&this.app.$el.append(this.$el=e("
    ")),this.model=new c(this),this.view=new d(this)}return n.prototype.uid=function(){return(Math.random().toString(16)+"000000000").substr(2,8)+(new Date).getTime()},n.prototype.init=function(t){return this.setting=e.extend({},this.setting||e.fn.atwho["default"],t),this.view.init(),this.model.reload(this.setting.data)},n.prototype.destroy=function(){return this.trigger("beforeDestroy"),this.model.destroy(),this.view.destroy(),this.$el.remove()},n.prototype.callDefault=function(){var n,r,o,a;a=arguments[0],n=2<=arguments.length?i.call(arguments,1):[];try{return t[a].apply(this,n)}catch(o){return r=o,e.error(r+" Or maybe At.js doesn't have function "+a)}},n.prototype.trigger=function(e,t){var n,r;return null==t&&(t=[]),t.push(this),n=this.getOpt("alias"),r=n?e+"-"+n+".atwho":e+".atwho",this.$inputor.trigger(r,t)},n.prototype.callbacks=function(e){return this.getOpt("callbacks")[e]||t[e]},n.prototype.getOpt=function(e,t){var n,r;try{return this.setting[e]}catch(r){return n=r,null}},n.prototype.insertContentFor=function(t){var n,r;return r=this.getOpt("insertTpl"),n=e.extend({},t.data("item-data"),{"atwho-at":this.at}),this.callbacks("tplEval").call(this,r,n,"onInsert")},n.prototype.renderView=function(e){var t;return t=this.getOpt("searchKey"),e=this.callbacks("sorter").call(this,this.query.text,e.slice(0,1001),t),this.view.render(e.slice(0,this.getOpt("limit")))},n.arrayToDefaultHash=function(t){var n,r,o,i;if(!e.isArray(t))return t;for(i=[],n=0,o=t.length;o>n;n++)r=t[n],e.isPlainObject(r)?i.push(r):i.push({name:r});return i},n.prototype.lookUp=function(e){var t,n;if((!e||"click"!==e.type||this.getOpt("lookUpOnClick"))&&(!this.getOpt("suspendOnComposing")||!this.app.isComposing))return(t=this.catchQuery(e))?(this.app.setContextFor(this.at),(n=this.getOpt("delay"))?this._delayLookUp(t,n):this._lookUp(t),t):(this.expectedQueryCBId=null,t)},n.prototype._delayLookUp=function(e,t){var n,r;return n=Date.now?Date.now():(new Date).getTime(),this.previousCallTime||(this.previousCallTime=n),r=t-(n-this.previousCallTime),r>0&&t>r?(this.previousCallTime=n,this._stopDelayedCall(),this.delayedCallTimeout=setTimeout(function(t){return function(){return t.previousCallTime=0,t.delayedCallTimeout=null,t._lookUp(e)}}(this),t)):(this._stopDelayedCall(),this.previousCallTime!==n&&(this.previousCallTime=0),this._lookUp(e))},n.prototype._stopDelayedCall=function(){return this.delayedCallTimeout?(clearTimeout(this.delayedCallTimeout),this.delayedCallTimeout=null):void 0},n.prototype._generateQueryCBId=function(){return{}},n.prototype._lookUp=function(t){var n;return n=function(e,t){return e===this.expectedQueryCBId?t&&t.length>0?this.renderView(this.constructor.arrayToDefaultHash(t)):this.view.hide():void 0},this.expectedQueryCBId=this._generateQueryCBId(),this.model.query(t.text,e.proxy(n,this,this.expectedQueryCBId))},n}();var a,s=function(e,t){function n(){this.constructor=e}for(var r in t)u.call(t,r)&&(e[r]=t[r]);return n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype,e},u={}.hasOwnProperty;a=function(t){function n(){return n.__super__.constructor.apply(this,arguments)}return s(n,t),n.prototype.catchQuery=function(){var e,t,n,r,o,i,a;return t=this.$inputor.val(),e=this.$inputor.caret("pos",{iframe:this.app.iframe}),a=t.slice(0,e),o=this.callbacks("matcher").call(this,this.at,a,this.getOpt("startWithSpace"),this.getOpt("acceptSpaceBar")),r="string"==typeof o,r&&o.length0?e.getRangeAt(0):void 0},r.prototype._setRange=function(t,n,r){return null==r&&(r=this._getRange()),r&&n?(n=e(n)[0],"after"===t?(r.setEndAfter(n),r.setStartAfter(n)):(r.setEndBefore(n),r.setStartBefore(n)),r.collapse(!1),this._clearRange(r)):void 0},r.prototype._clearRange=function(e){var t;return null==e&&(e=this._getRange()),t=this.app.window.getSelection(),null==this.ctrl_a_pressed?(t.removeAllRanges(),t.addRange(e)):void 0},r.prototype._movingEvent=function(e){var t;return"click"===e.type||(t=e.which)===n.RIGHT||t===n.LEFT||t===n.UP||t===n.DOWN},r.prototype._unwrap=function(t){var n;return t=e(t).unwrap().get(0),(n=t.nextSibling)&&n.nodeValue&&(t.nodeValue+=n.nodeValue,e(n).remove()),t},r.prototype.catchQuery=function(t){var r,o,i,a,s,u,l,c,d,f,p,h;if((h=this._getRange())&&h.collapsed){if(t.which===n.ENTER)return(o=e(h.startContainer).closest(".atwho-query")).contents().unwrap(),o.is(":empty")&&o.remove(),(o=e(".atwho-query",this.app.document)).text(o.text()).contents().last().unwrap(),void this._clearRange();if(/firefox/i.test(navigator.userAgent)){if(e(h.startContainer).is(this.$inputor))return void this._clearRange();t.which===n.BACKSPACE&&h.startContainer.nodeType===document.ELEMENT_NODE&&(d=h.startOffset-1)>=0?(i=h.cloneRange(),i.setStart(h.startContainer,d),e(i.cloneContents()).contents().last().is(".atwho-inserted")&&(s=e(h.startContainer).contents().get(d),this._setRange("after",e(s).contents().last()))):t.which===n.LEFT&&h.startContainer.nodeType===document.TEXT_NODE&&(r=e(h.startContainer.previousSibling),r.is(".atwho-inserted")&&0===h.startOffset&&this._setRange("after",r.contents().last()))}if(e(h.startContainer).closest(".atwho-inserted").addClass("atwho-query").siblings().removeClass("atwho-query"),(o=e(".atwho-query",this.app.document)).length>0&&o.is(":empty")&&0===o.text().length&&o.remove(),this._movingEvent(t)||o.removeClass("atwho-inserted"),o.length>0)switch(t.which){case n.LEFT:return this._setRange("before",o.get(0),h),void o.removeClass("atwho-query");case n.RIGHT:return this._setRange("after",o.get(0).nextSibling,h),void o.removeClass("atwho-query")}if(o.length>0&&(p=o.attr("data-atwho-at-query"))&&(o.empty().html(p).attr("data-atwho-at-query",null),this._setRange("after",o.get(0),h)),i=h.cloneRange(),i.setStart(h.startContainer,0),c=this.callbacks("matcher").call(this,this.at,i.toString(),this.getOpt("startWithSpace"),this.getOpt("acceptSpaceBar")),u="string"==typeof c,0===o.length&&u&&(a=h.startOffset-this.at.length-c.length)>=0&&(h.setStart(h.startContainer,a),o=e("",this.app.document).attr(this.getOpt("editableAtwhoQueryAttrs")).addClass("atwho-query"),h.surroundContents(o.get(0)),l=o.contents().last().get(0),l&&(/firefox/i.test(navigator.userAgent)?(h.setStart(l,l.length),h.setEnd(l,l.length),this._clearRange(h)):this._setRange("after",l,h))),!(u&&c.length=0&&(this._movingEvent(t)&&o.hasClass("atwho-inserted")?o.removeClass("atwho-query"):!1!==this.callbacks("afterMatchFailed").call(this,this.at,o)&&this._setRange("after",this._unwrap(o.text(o.text()).contents().first()))),null)}},r.prototype.rect=function(){var t,n,r;return(r=this.query.el.offset())?(this.app.iframe&&!this.app.iframeAsRoot&&(n=(t=e(this.app.iframe)).offset(),r.left+=n.left-this.$inputor.scrollLeft(),r.top+=n.top-this.$inputor.scrollTop()),r.bottom=r.top+this.query.el.height(),r):void 0},r.prototype.insert=function(e,t){var n,r,o,i;return this.$inputor.is(":focus")||this.$inputor.focus(),o=""===(o=this.getOpt("suffix"))?o:o||" ",n=t.data("item-data"),this.query.el.removeClass("atwho-query").addClass("atwho-inserted").html(e).attr("data-atwho-at-query",""+n["atwho-at"]+this.query.text).attr("contenteditable","false"),(r=this._getRange())&&(this.query.el.length&&r.setEndAfter(this.query.el[0]),r.collapse(!1),r.insertNode(i=this.app.document.createTextNode(""+o)),this._setRange("after",i,r)),this.$inputor.is(":focus")||this.$inputor.focus(),this.$inputor.change()},r}(o);var c;c=function(){function t(e){this.context=e,this.at=this.context.at,this.storage=this.context.$inputor}return t.prototype.destroy=function(){return this.storage.data(this.at,null)},t.prototype.saved=function(){return this.fetch()>0},t.prototype.query=function(e,t){var n,r,o;return r=this.fetch(),o=this.context.getOpt("searchKey"),r=this.context.callbacks("filter").call(this.context,e,r,o)||[],n=this.context.callbacks("remoteFilter"),r.length>0||!n&&0===r.length?t(r):n.call(this.context,e,t)},t.prototype.fetch=function(){return this.storage.data(this.at)||[]},t.prototype.save=function(e){return this.storage.data(this.at,this.context.callbacks("beforeSave").call(this.context,e||[]))},t.prototype.load=function(e){return!this.saved()&&e?this._load(e):void 0},t.prototype.reload=function(e){return this._load(e)},t.prototype._load=function(t){return"string"==typeof t?e.ajax(t,{dataType:"json"}).done(function(e){return function(t){return e.save(t)}}(this)):this.save(t)},t}();var d;d=function(){function t(t){this.context=t,this.$el=e("
      "),this.$elUl=this.$el.children(),this.timeoutID=null,this.context.$el.append(this.$el),this.bindEvent()}return t.prototype.init=function(){var e,t;return t=this.context.getOpt("alias")||this.context.at.charCodeAt(0),e=this.context.getOpt("headerTpl"),e&&1===this.$el.children().length&&this.$el.prepend(e),this.$el.attr({id:"at-view-"+t})},t.prototype.destroy=function(){return this.$el.remove()},t.prototype.bindEvent=function(){var t,n,r;return t=this.$el.find("ul"),n=0,r=0,t.on("mousemove.atwho-view","li",function(o){return function(o){var i;if((n!==o.clientX||r!==o.clientY)&&(n=o.clientX,r=o.clientY,i=e(o.currentTarget),!i.hasClass("cur")))return t.find(".cur").removeClass("cur"),i.addClass("cur")}}(this)).on("click.atwho-view","li",function(n){return function(r){return t.find(".cur").removeClass("cur"),e(r.currentTarget).addClass("cur"),n.choose(r),r.preventDefault()}}(this))},t.prototype.visible=function(){return e.expr.filters.visible(this.$el[0])},t.prototype.highlighted=function(){return this.$el.find(".cur").length>0},t.prototype.choose=function(e){var t,n;return(t=this.$el.find(".cur")).length&&(n=this.context.insertContentFor(t),this.context._stopDelayedCall(),this.context.insert(this.context.callbacks("beforeInsert").call(this.context,n,t,e),t),this.context.trigger("inserted",[t,e]),this.hide(e)),this.context.getOpt("hideWithoutSuffix")?this.stopShowing=!0:void 0},t.prototype.reposition=function(t){var n,r,o,i;return n=this.context.app.iframeAsRoot?this.context.app.window:window,t.bottom+this.$el.height()-e(n).scrollTop()>e(n).height()&&(t.bottom=t.top-this.$el.height()),t.left>(o=e(n).width()-this.$el.width()-5)&&(t.left=o),r={left:t.left,top:t.bottom},null!=(i=this.context.callbacks("beforeReposition"))&&i.call(this.context,r),this.$el.offset(r),this.context.trigger("reposition",[r])},t.prototype.next=function(){var e,t,n,r;return e=this.$el.find(".cur").removeClass("cur"),t=e.next(),t.length||(t=this.$el.find("li:first")),t.addClass("cur"),n=t[0],r=n.offsetTop+n.offsetHeight+(n.nextSibling?n.nextSibling.offsetHeight:0),this.scrollTop(Math.max(0,r-this.$el.height()))},t.prototype.prev=function(){var e,t,n,r;return e=this.$el.find(".cur").removeClass("cur"),n=e.prev(),n.length||(n=this.$el.find("li:last")),n.addClass("cur"),r=n[0],t=r.offsetTop+r.offsetHeight+(r.nextSibling?r.nextSibling.offsetHeight:0),this.scrollTop(Math.max(0,t-this.$el.height()))},t.prototype.scrollTop=function(e){var t;return t=this.context.getOpt("scrollDuration"),t?this.$elUl.animate({scrollTop:e},t):this.$elUl.scrollTop(e)},t.prototype.show=function(){var e;return this.stopShowing?void(this.stopShowing=!1):(this.visible()||(this.$el.show(),this.$el.scrollTop(0),this.context.trigger("shown")),(e=this.context.rect())?this.reposition(e):void 0)},t.prototype.hide=function(e,t){var n;if(this.visible())return isNaN(t)?(this.$el.hide(),this.context.trigger("hidden",[e])):(n=function(e){return function(){return e.hide()}}(this),clearTimeout(this.timeoutID),this.timeoutID=setTimeout(n,t))},t.prototype.render=function(t){var n,r,o,i,a,s,u;if(!(e.isArray(t)&&t.length>0))return void this.hide();for(this.$el.find("ul").empty(),r=this.$el.find("ul"),u=this.context.getOpt("displayTpl"),o=0,a=t.length;a>o;o++)i=t[o],i=e.extend({},i,{"atwho-at":this.context.at}),s=this.context.callbacks("tplEval").call(this.context,u,i,"onDisplay"),n=e(this.context.callbacks("highlighter").call(this.context,s,this.context.query.text)),n.data("item-data",i),r.append(n);return this.show(),this.context.getOpt("highlightFirst")?r.find("li:first").addClass("cur"):void 0},t}();var f;f={load:function(e,t){var n;return(n=this.controller(e))?n.model.load(t):void 0},isSelecting:function(){var e;return!!(null!=(e=this.controller())?e.view.visible():void 0)},hide:function(){var e;return null!=(e=this.controller())?e.view.hide():void 0},reposition:function(){var e;return(e=this.controller())?e.view.reposition(e.rect()):void 0},setIframe:function(e,t){return this.setupRootElement(e,t),null},run:function(){return this.dispatch()},destroy:function(){return this.shutdown(),this.$inputor.data("atwho",null)}},e.fn.atwho=function(t){var n,o;return n=arguments,o=null,this.filter('textarea, input, [contenteditable=""], [contenteditable=true]').each(function(){var i,a;return(a=(i=e(this)).data("atwho"))||i.data("atwho",a=new r(this)),"object"!=typeof t&&t?f[t]&&a?o=f[t].apply(a,Array.prototype.slice.call(n,1)):e.error("Method "+t+" does not exist on jQuery.atwho"):a.reg(t.at,t)}),null!=o?o:this},e.fn.atwho["default"]={at:void 0,alias:void 0,data:null,displayTpl:"
    • ${name}
    • ",insertTpl:"${atwho-at}${name}",headerTpl:null,callbacks:t,searchKey:"name",suffix:void 0,hideWithoutSuffix:!1,startWithSpace:!0,acceptSpaceBar:!1,highlightFirst:!0,limit:5,maxLen:20,minLen:0,displayTimeout:300,delay:null,spaceSelectsMatch:!1,tabSelectsMatch:!0,editableAtwhoQueryAttrs:{},scrollDuration:150,suspendOnComposing:!0,lookUpOnClick:!0},e.fn.atwho.debug=!1})},{jquery:52}],3:[function(e,t,n){+function(e){"use strict";function t(t){return this.each(function(){var r=e(this),o=r.data("bs.affix"),i="object"==typeof t&&t;o||r.data("bs.affix",o=new n(this,i)),"string"==typeof t&&o[t]()})}var n=function(t,r){this.options=e.extend({},n.DEFAULTS,r),this.$target=e(this.options.target).on("scroll.bs.affix.data-api",e.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",e.proxy(this.checkPositionWithEventLoop,this)),this.$element=e(t),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};n.VERSION="3.3.7",n.RESET="affix affix-top affix-bottom",n.DEFAULTS={offset:0,target:window},n.prototype.getState=function(e,t,n,r){var o=this.$target.scrollTop(),i=this.$element.offset(),a=this.$target.height();if(null!=n&&"top"==this.affixed)return o=e-r&&"bottom"},n.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(n.RESET).addClass("affix");var e=this.$target.scrollTop(),t=this.$element.offset();return this.pinnedOffset=t.top-e},n.prototype.checkPositionWithEventLoop=function(){setTimeout(e.proxy(this.checkPosition,this),1)},n.prototype.checkPosition=function(){if(this.$element.is(":visible")){var t=this.$element.height(),r=this.options.offset,o=r.top,i=r.bottom,a=Math.max(e(document).height(),e(document.body).height());"object"!=typeof r&&(i=o=r),"function"==typeof o&&(o=r.top(this.$element)),"function"==typeof i&&(i=r.bottom(this.$element));var s=this.getState(a,t,o,i);if(this.affixed!=s){null!=this.unpin&&this.$element.css("top","");var u="affix"+(s?"-"+s:""),l=e.Event(u+".bs.affix");if(this.$element.trigger(l),l.isDefaultPrevented())return;this.affixed=s,this.unpin="bottom"==s?this.getPinnedOffset():null,this.$element.removeClass(n.RESET).addClass(u).trigger(u.replace("affix","affixed")+".bs.affix")}"bottom"==s&&this.$element.offset({top:a-t-i})}};var r=e.fn.affix;e.fn.affix=t,e.fn.affix.Constructor=n,e.fn.affix.noConflict=function(){return e.fn.affix=r,this},e(window).on("load",function(){e('[data-spy="affix"]').each(function(){var n=e(this),r=n.data();r.offset=r.offset||{},null!=r.offsetBottom&&(r.offset.bottom=r.offsetBottom),null!=r.offsetTop&&(r.offset.top=r.offsetTop),t.call(n,r)})})}(jQuery)},{}],4:[function(e,t,n){+function(e){"use strict";function t(t){var n=t.attr("data-target");n||(n=t.attr("href"),n=n&&/#[A-Za-z]/.test(n)&&n.replace(/.*(?=#[^\s]*$)/,""));var r=n&&e(n);return r&&r.length?r:t.parent()}function n(n){n&&3===n.which||(e(o).remove(),e(i).each(function(){var r=e(this),o=t(r),i={relatedTarget:this};o.hasClass("open")&&(n&&"click"==n.type&&/input|textarea/i.test(n.target.tagName)&&e.contains(o[0],n.target)||(o.trigger(n=e.Event("hide.bs.dropdown",i)),n.isDefaultPrevented()||(r.attr("aria-expanded","false"),o.removeClass("open").trigger(e.Event("hidden.bs.dropdown",i)))))}))}function r(t){return this.each(function(){var n=e(this),r=n.data("bs.dropdown");r||n.data("bs.dropdown",r=new a(this)),"string"==typeof t&&r[t].call(n)})}var o=".dropdown-backdrop",i='[data-toggle="dropdown"]',a=function(t){e(t).on("click.bs.dropdown",this.toggle)};a.VERSION="3.3.7",a.prototype.toggle=function(r){var o=e(this);if(!o.is(".disabled, :disabled")){var i=t(o),a=i.hasClass("open");if(n(),!a){"ontouchstart"in document.documentElement&&!i.closest(".navbar-nav").length&&e(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(e(this)).on("click",n);var s={relatedTarget:this};if(i.trigger(r=e.Event("show.bs.dropdown",s)),r.isDefaultPrevented())return;o.trigger("focus").attr("aria-expanded","true"),i.toggleClass("open").trigger(e.Event("shown.bs.dropdown",s))}return!1}},a.prototype.keydown=function(n){if(/(38|40|27|32)/.test(n.which)&&!/input|textarea/i.test(n.target.tagName)){var r=e(this);if(n.preventDefault(),n.stopPropagation(),!r.is(".disabled, :disabled")){var o=t(r),a=o.hasClass("open");if(!a&&27!=n.which||a&&27==n.which)return 27==n.which&&o.find(i).trigger("focus"),r.trigger("click");var s=" li:not(.disabled):visible a",u=o.find(".dropdown-menu"+s);if(u.length){var l=u.index(n.target);38==n.which&&l>0&&l--,40==n.which&&ldocument.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&e?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!e?this.scrollbarWidth:""})},n.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},n.prototype.checkScrollbar=function(){var e=window.innerWidth;if(!e){var t=document.documentElement.getBoundingClientRect();e=t.right-Math.abs(t.left)}this.bodyIsOverflowing=document.body.clientWidth0&&"number"!=typeof e[0]))}function i(e,t,n){var i,c;if(r(e)||r(t))return!1;if(e.prototype!==t.prototype)return!1;if(u(e))return!!u(t)&&(e=a.call(e),t=a.call(t),l(e,t,n));if(o(e)){if(!o(t))return!1;if(e.length!==t.length)return!1;for(i=0;i=0;i--)if(d[i]!=f[i])return!1;for(i=d.length-1;i>=0;i--)if(c=d[i],!l(e[c],t[c],n))return!1;return typeof e==typeof t}var a=Array.prototype.slice,s=e("./lib/keys.js"),u=e("./lib/is_arguments.js"),l=t.exports=function(e,t,n){return n||(n={}),e===t||(e instanceof Date&&t instanceof Date?e.getTime()===t.getTime():!e||!t||"object"!=typeof e&&"object"!=typeof t?n.strict?e===t:e==t:i(e,t,n))}},{"./lib/is_arguments.js":8,"./lib/keys.js":9}],8:[function(e,t,n){function r(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function o(e){return e&&"object"==typeof e&&"number"==typeof e.length&&Object.prototype.hasOwnProperty.call(e,"callee")&&!Object.prototype.propertyIsEnumerable.call(e,"callee")||!1}var i="[object Arguments]"==function(){return Object.prototype.toString.call(arguments)}();n=t.exports=i?r:o,n.supported=r,n.unsupported=o},{}],9:[function(e,t,n){function r(e){var t=[];for(var n in e)t.push(n);return t}n=t.exports="function"==typeof Object.keys?Object.keys:r,n.shim=r},{}],10:[function(e,t,n){"use strict";var r=e("./emptyFunction"),o={listen:function(e,t,n){return e.addEventListener?(e.addEventListener(t,n,!1),{remove:function(){e.removeEventListener(t,n,!1)}}):e.attachEvent?(e.attachEvent("on"+t,n),{remove:function(){e.detachEvent("on"+t,n)}}):void 0},capture:function(e,t,n){return e.addEventListener?(e.addEventListener(t,n,!0),{remove:function(){e.removeEventListener(t,n,!0)}}):{remove:r}},registerDefault:function(){}};t.exports=o},{"./emptyFunction":17}],11:[function(e,t,n){"use strict";var r=!("undefined"==typeof window||!window.document||!window.document.createElement),o={canUseDOM:r,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:r&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:r&&!!window.screen,isInWorker:!r};t.exports=o},{}],12:[function(e,t,n){"use strict";function r(e){return e.replace(o,function(e,t){return t.toUpperCase()})}var o=/-(.)/g;t.exports=r},{}],13:[function(e,t,n){"use strict";function r(e){return o(e.replace(i,"ms-"))}var o=e("./camelize"),i=/^-ms-/;t.exports=r},{"./camelize":12}],14:[function(e,t,n){"use strict";function r(e,t){return!(!e||!t)&&(e===t||!o(e)&&(o(t)?r(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}var o=e("./isTextNode");t.exports=r},{"./isTextNode":27}],15:[function(e,t,n){"use strict";function r(e){var t=e.length;if(Array.isArray(e)||"object"!=typeof e&&"function"!=typeof e?a(!1):void 0,"number"!=typeof t?a(!1):void 0,0===t||t-1 in e?void 0:a(!1),"function"==typeof e.callee?a(!1):void 0,e.hasOwnProperty)try{return Array.prototype.slice.call(e)}catch(n){}for(var r=Array(t),o=0;o":a.innerHTML="<"+e+">",s[e]=!a.firstChild),s[e]?f[e]:null}var o=e("./ExecutionEnvironment"),i=e("./invariant"),a=o.canUseDOM?document.createElement("div"):null,s={},u=[1,'"],l=[1,"","
      "],c=[3,"","
      "],d=[1,'',""],f={"*":[1,"?
      ","
      "],area:[1,"",""],col:[2,"","
      "],legend:[1,"
      ","
      "],param:[1,"",""],tr:[2,"","
      "],optgroup:u,option:u,caption:l,colgroup:l,tbody:l,tfoot:l,thead:l,td:c,th:c},p=["circle","clipPath","defs","ellipse","g","image","line","linearGradient","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","text","tspan"];p.forEach(function(e){f[e]=d,s[e]=!0}),t.exports=r},{"./ExecutionEnvironment":11,"./invariant":25}],22:[function(e,t,n){"use strict";function r(e){return e===window?{x:window.pageXOffset||document.documentElement.scrollLeft,y:window.pageYOffset||document.documentElement.scrollTop}:{x:e.scrollLeft,y:e.scrollTop}}t.exports=r},{}],23:[function(e,t,n){"use strict";function r(e){return e.replace(o,"-$1").toLowerCase()}var o=/([A-Z])/g;t.exports=r},{}],24:[function(e,t,n){"use strict";function r(e){return o(e).replace(i,"-ms-")}var o=e("./hyphenate"),i=/^ms-/;t.exports=r},{"./hyphenate":23}],25:[function(e,t,n){"use strict";function r(e,t,n,r,o,i,a,s){if(!e){var u;if(void 0===t)u=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var l=[n,r,o,i,a,s],c=0;u=new Error(t.replace(/%s/g,function(){return l[c++]})),u.name="Invariant Violation"}throw u.framesToPop=1,u}}t.exports=r},{}],26:[function(e,t,n){"use strict";function r(e){return!(!e||!("function"==typeof Node?e instanceof Node:"object"==typeof e&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName))}t.exports=r},{}],27:[function(e,t,n){"use strict";function r(e){return o(e)&&3==e.nodeType}var o=e("./isNode");t.exports=r},{"./isNode":26}],28:[function(e,t,n){"use strict";function r(e){var t={};return function(n){return t.hasOwnProperty(n)||(t[n]=e.call(this,n)),t[n]}}t.exports=r},{}],29:[function(e,t,n){"use strict";var r,o=e("./ExecutionEnvironment");o.canUseDOM&&(r=window.performance||window.msPerformance||window.webkitPerformance),t.exports=r||{}},{"./ExecutionEnvironment":11}],30:[function(e,t,n){"use strict";var r,o=e("./performance");r=o.now?function(){return o.now()}:function(){return Date.now()},t.exports=r},{"./performance":29}],31:[function(e,t,n){"use strict";function r(e,t){return e===t?0!==e||0!==t||1/e===1/t:e!==e&&t!==t}function o(e,t){if(r(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),o=Object.keys(t);if(n.length!==o.length)return!1;for(var a=0;a=e&&l&&(s=!0,n()))}}var a=0,s=!1,u=!1,l=!1,c=void 0;i()}n.__esModule=!0;var o=Array.prototype.slice;n.loopAsync=r},{}],35:[function(e,t,n){(function(t){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e){return l+e}function i(e,n){try{null==n?window.sessionStorage.removeItem(o(e)):window.sessionStorage.setItem(o(e),JSON.stringify(n))}catch(r){if(r.name===d)return void("production"!==t.env.NODE_ENV?u["default"](!1,"[history] Unable to save state; sessionStorage is not available due to security settings"):void 0); -if(c.indexOf(r.name)>=0&&0===window.sessionStorage.length)return void("production"!==t.env.NODE_ENV?u["default"](!1,"[history] Unable to save state; sessionStorage is not available in Safari private mode"):void 0);throw r}}function a(e){var n=void 0;try{n=window.sessionStorage.getItem(o(e))}catch(r){if(r.name===d)return"production"!==t.env.NODE_ENV?u["default"](!1,"[history] Unable to read state; sessionStorage is not available due to security settings"):void 0,null}if(n)try{return JSON.parse(n)}catch(r){}return null}n.__esModule=!0,n.saveState=i,n.readState=a;var s=e("warning"),u=r(s),l="@@History/",c=["QuotaExceededError","QUOTA_EXCEEDED_ERR"],d="SecurityError"}).call(this,e("_process"))},{_process:54,warning:280}],36:[function(e,t,n){"use strict";function r(e,t,n){e.addEventListener?e.addEventListener(t,n,!1):e.attachEvent("on"+t,n)}function o(e,t,n){e.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent("on"+t,n)}function i(){return window.location.href.split("#")[1]||""}function a(e){window.location.replace(window.location.pathname+window.location.search+"#"+e)}function s(){return window.location.pathname+window.location.search+window.location.hash}function u(e){e&&window.history.go(e)}function l(e,t){t(window.confirm(e))}function c(){var e=navigator.userAgent;return(e.indexOf("Android 2.")===-1&&e.indexOf("Android 4.0")===-1||e.indexOf("Mobile Safari")===-1||e.indexOf("Chrome")!==-1||e.indexOf("Windows Phone")!==-1)&&(window.history&&"pushState"in window.history)}function d(){var e=navigator.userAgent;return e.indexOf("Firefox")===-1}n.__esModule=!0,n.addEventListener=r,n.removeEventListener=o,n.getHashPath=i,n.replaceHashPath=a,n.getWindowPath=s,n.go=u,n.getUserConfirmation=l,n.supportsHistory=c,n.supportsGoWithoutReloadUsingHash=d},{}],37:[function(e,t,n){"use strict";n.__esModule=!0;var r=!("undefined"==typeof window||!window.document||!window.document.createElement);n.canUseDOM=r},{}],38:[function(e,t,n){(function(t){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e){var t=e.match(/^https?:\/\/[^\/]*/);return null==t?e:e.substring(t[0].length)}function i(e){var n=o(e),r="",i="";"production"!==t.env.NODE_ENV?s["default"](e===n,'A path must be pathname + search + hash only, not a fully qualified URL like "%s"',e):void 0;var a=n.indexOf("#");a!==-1&&(i=n.substring(a),n=n.substring(0,a));var u=n.indexOf("?");return u!==-1&&(r=n.substring(u),n=n.substring(0,u)),""===n&&(n="/"),{pathname:n,search:r,hash:i}}n.__esModule=!0,n.extractPath=o,n.parsePath=i;var a=e("warning"),s=r(a)}).call(this,e("_process"))},{_process:54,warning:280}],39:[function(e,t,n){(function(r){"use strict";function o(e){return e&&e.__esModule?e:{"default":e}}function i(){function e(e){try{e=e||window.history.state||{}}catch(t){e={}}var n=f.getWindowPath(),r=e,o=r.key,i=void 0;o?i=p.readState(o):(i=null,o=w.createKey(),y&&window.history.replaceState(a({},e,{key:o}),null));var s=c.parsePath(n);return w.createLocation(a({},s,{state:i}),void 0,o)}function t(t){function n(t){void 0!==t.state&&r(e(t.state))}var r=t.transitionTo;return f.addEventListener(window,"popstate",n),function(){f.removeEventListener(window,"popstate",n)}}function n(e){var t=e.basename,n=e.pathname,r=e.search,o=e.hash,i=e.state,a=e.action,s=e.key;if(a!==l.POP){p.saveState(s,i);var u=(t||"")+n+r+o,c={key:s};if(a===l.PUSH){if(b)return window.location.href=u,!1;window.history.pushState(c,null,u)}else{if(b)return window.location.replace(u),!1;window.history.replaceState(c,null,u)}}}function o(e){1===++_&&(x=t(w));var n=w.listenBefore(e);return function(){n(),0===--_&&x()}}function i(e){1===++_&&(x=t(w));var n=w.listen(e);return function(){n(),0===--_&&x()}}function s(e){1===++_&&(x=t(w)),w.registerTransitionHook(e)}function h(e){w.unregisterTransitionHook(e),0===--_&&x()}var g=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];d.canUseDOM?void 0:"production"!==r.env.NODE_ENV?u["default"](!1,"Browser history needs a DOM"):u["default"](!1);var v=g.forceRefresh,y=f.supportsHistory(),b=!y||v,w=m["default"](a({},g,{getCurrentLocation:e,finishTransition:n,saveState:p.saveState})),_=0,x=void 0;return a({},w,{listenBefore:o,listen:i,registerTransitionHook:s,unregisterTransitionHook:h})}n.__esModule=!0;var a=Object.assign||function(e){for(var t=1;t=0&&t=0&&y= 0 and < %s, was %s",v.length,y):d["default"](!1);var b=i(v);return h}n.__esModule=!0;var s=Object.assign||function(e){for(var t=1;t is deprecated and will be removed in the next major release. The semantics of are subtly different from basename. Please pass the basename explicitly in the options to createHistory"):void 0)}C=!0}}function n(e){return t(),x&&null==e.basename&&(0===e.pathname.indexOf(x)?(e.pathname=e.pathname.substring(x.length),e.basename=x,""===e.pathname&&(e.pathname="/")):e.basename=""),e}function o(e){if(t(),!x)return e;"string"==typeof e&&(e=c.parsePath(e));var n=e.pathname,r="/"===x.slice(-1)?x:x+"/",o="/"===n.charAt(0)?n.slice(1):n,i=r+o;return a({},e,{pathname:i})}function i(e){return _.listenBefore(function(t,r){f["default"](e,n(t),r)})}function s(e){return _.listen(function(t){e(n(t))})}function d(e){_.push(o(e))}function p(e){_.replace(o(e))}function m(e){return _.createPath(o(e))}function g(e){return _.createHref(o(e))}function v(e){for(var t=arguments.length,r=Array(t>1?t-1:0),i=1;i1?r-1:0),i=1;il&&(a=d[l],!n);l++)if(3===a.nodeType){if(r+a.length>=e){n=!0,u=s.createRange(),u.setStart(a,e-r),o.removeAllRanges(),o.addRange(u);break}f.push(r+=a.length)}else f.push(t(e,a));return f})(e,this.domInputor)),this.domInputor},t.prototype.getIEPosition=function(){return this.getPosition()},t.prototype.getPosition=function(){var e,t;return t=this.getOffset(),e=this.$inputor.offset(),t.left-=e.left,t.top-=e.top,t},t.prototype.getOldIEPos=function(){var e,t;return t=s.selection.createRange(),e=s.body.createTextRange(),e.moveToElementText(this.domInputor),e.setEndPoint("EndToEnd",t),e.text.length},t.prototype.getPos=function(){var e,t,n;return(n=this.range())?(e=n.cloneRange(),e.selectNodeContents(this.domInputor),e.setEnd(n.endContainer,n.endOffset),t=e.toString().length,e.detach(),t):s.selection?this.getOldIEPos():void 0},t.prototype.getOldIEOffset=function(){var e,t;return e=s.selection.createRange().duplicate(),e.moveStart("character",-1),t=e.getBoundingClientRect(),{height:t.bottom-t.top,left:t.left,top:t.top}},t.prototype.getOffset=function(){var t,n,r,o,i;return l.getSelection&&(r=this.range())?(r.endOffset-1>0&&r.endContainer!==this.domInputor&&(t=r.cloneRange(),t.setStart(r.endContainer,r.endOffset-1),t.setEnd(r.endContainer,r.endOffset),o=t.getBoundingClientRect(),n={height:o.height,left:o.left+o.width,top:o.top},t.detach()),n&&0!==(null!=n?n.height:void 0)||(t=r.cloneRange(),i=e(s.createTextNode("|")),t.insertNode(i[0]),t.selectNode(i[0]),o=t.getBoundingClientRect(),n={height:o.height,left:o.left,top:o.top},i.remove(),t.detach())):s.selection&&(n=this.getOldIEOffset()),n&&(n.top+=e(l).scrollTop(),n.left+=e(l).scrollLeft()),n},t.prototype.range=function(){var e;if(l.getSelection)return e=l.getSelection(),e.rangeCount>0?e.getRangeAt(0):null},t}(),n=function(){function t(e){this.$inputor=e,this.domInputor=this.$inputor[0]}return t.prototype.getIEPos=function(){var e,t,n,r,o,i,a;return t=this.domInputor,i=s.selection.createRange(),o=0,i&&i.parentElement()===t&&(r=t.value.replace(/\r\n/g,"\n"),n=r.length,a=t.createTextRange(),a.moveToBookmark(i.getBookmark()),e=t.createTextRange(),e.collapse(!1),o=a.compareEndPoints("StartToEnd",e)>-1?n:-a.moveStart("character",-n)),o},t.prototype.getPos=function(){return s.selection?this.getIEPos():this.domInputor.selectionStart},t.prototype.setPos=function(e){var t,n;return t=this.domInputor,s.selection?(n=t.createTextRange(),n.move("character",e),n.select()):t.setSelectionRange&&t.setSelectionRange(e,e),t},t.prototype.getIEOffset=function(e){var t,n,r,o;return n=this.domInputor.createTextRange(),e||(e=this.getPos()),n.move("character",e),r=n.boundingLeft,o=n.boundingTop,t=n.boundingHeight,{left:r,top:o,height:t}},t.prototype.getOffset=function(t){var n,r,o;return n=this.$inputor,s.selection?(r=this.getIEOffset(t),r.top+=e(l).scrollTop()+n.scrollTop(),r.left+=e(l).scrollLeft()+n.scrollLeft(),r):(r=n.offset(),o=this.getPosition(t),r={left:r.left+o.left-n.scrollLeft(),top:r.top+o.top-n.scrollTop(),height:o.height})},t.prototype.getPosition=function(e){var t,n,o,i,a,s,u;return t=this.$inputor,i=function(e){return e=e.replace(/<|>|`|"|&/g,"?").replace(/\r\n|\r|\n/g,"
      "),/firefox/i.test(navigator.userAgent)&&(e=e.replace(/\s/g," ")),e},void 0===e&&(e=this.getPos()),u=t.val().slice(0,e),o=t.val().slice(e),a=""+i(u)+"",a+="|",a+=""+i(o)+"",s=new r(t),n=s.create(a).rect()},t.prototype.getIEPosition=function(e){var t,n,r,o,i;return r=this.getIEOffset(e),n=this.$inputor.offset(),o=r.left-n.left,i=r.top-n.top,t=r.height,{left:o,top:i,height:t}},t}(),r=function(){function t(e){this.$inputor=e}return t.prototype.css_attr=["borderBottomWidth","borderLeftWidth","borderRightWidth","borderTopStyle","borderRightStyle","borderBottomStyle","borderLeftStyle","borderTopWidth","boxSizing","fontFamily","fontSize","fontWeight","height","letterSpacing","lineHeight","marginBottom","marginLeft","marginRight","marginTop","outlineWidth","overflow","overflowX","overflowY","paddingBottom","paddingLeft","paddingRight","paddingTop","textAlign","textOverflow","textTransform","whiteSpace","wordBreak","wordWrap"],t.prototype.mirrorCss=function(){var t,n=this;return t={position:"absolute",left:-9999,top:0,zIndex:-2e4},"TEXTAREA"===this.$inputor.prop("tagName")&&this.css_attr.push("width"),e.each(this.css_attr,function(e,r){return t[r]=n.$inputor.css(r)}),t},t.prototype.create=function(t){return this.$mirror=e("
      "),this.$mirror.css(this.mirrorCss()),this.$mirror.html(t),this.$inputor.after(this.$mirror),this},t.prototype.rect=function(){var e,t,n;return e=this.$mirror.find("#caret"),t=e.position(),n={left:t.left,top:t.top,height:e.height()},this.$mirror.remove(),n},t}(),o={contentEditable:function(e){return!(!e[0].contentEditable||"true"!==e[0].contentEditable)}},a={pos:function(e){return e||0===e?this.setPos(e):this.getPos()},position:function(e){return s.selection?this.getIEPosition(e):this.getPosition(e)},offset:function(e){var t;return t=this.getOffset(e)}},s=null,l=null,u=null,d=function(e){var t;return(t=null!=e?e.iframe:void 0)?(u=t,l=t.contentWindow,s=t.contentDocument||l.document):(u=void 0,l=window,s=document)},i=function(e){var t;s=e[0].ownerDocument,l=s.defaultView||s.parentWindow;try{return u=l.frameElement}catch(n){t=n}},e.fn.caret=function(r,i,s){var u;return a[r]?(e.isPlainObject(i)?(d(i),i=void 0):d(s),u=o.contentEditable(this)?new t(this):new n(this),a[r].apply(u,[i])):e.error("Method "+r+" does not exist on jQuery.caret")},e.fn.caret.EditableCaret=t,e.fn.caret.InputCaret=n,e.fn.caret.Utils=o,e.fn.caret.apis=a})},{jquery:52}],52:[function(e,t,n){!function(e,n){"object"==typeof t&&"object"==typeof t.exports?t.exports=e.document?n(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return n(e)}:n(e)}("undefined"!=typeof window?window:this,function(e,t){function n(e){var t=!!e&&"length"in e&&e.length,n=ie.type(e);return"function"!==n&&!ie.isWindow(e)&&("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e)}function r(e,t,n){if(ie.isFunction(t))return ie.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return ie.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(me.test(t))return ie.filter(t,e,n);t=ie.filter(t,e)}return ie.grep(e,function(e){return J.call(t,e)>-1!==n})}function o(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function i(e){var t={};return ie.each(e.match(_e)||[],function(e,n){t[n]=!0}),t}function a(){G.removeEventListener("DOMContentLoaded",a),e.removeEventListener("load",a),ie.ready()}function s(){this.expando=ie.expando+s.uid++}function u(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(ke,"-$&").toLowerCase(),n=e.getAttribute(r),"string"==typeof n){try{n="true"===n||"false"!==n&&("null"===n?null:+n+""===n?+n:Re.test(n)?ie.parseJSON(n):n)}catch(o){}Te.set(e,t,n)}else n=void 0;return n}function l(e,t,n,r){var o,i=1,a=20,s=r?function(){return r.cur()}:function(){return ie.css(e,t,"")},u=s(),l=n&&n[3]||(ie.cssNumber[t]?"":"px"),c=(ie.cssNumber[t]||"px"!==l&&+u)&&Me.exec(ie.css(e,t));if(c&&c[3]!==l){l=l||c[3],n=n||[],c=+u||1;do i=i||".5",c/=i,ie.style(e,t,c+l);while(i!==(i=s()/u)&&1!==i&&--a)}return n&&(c=+c||+u||0,o=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=o)),o}function c(e,t){var n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[];return void 0===t||t&&ie.nodeName(e,t)?ie.merge([e],n):n}function d(e,t){for(var n=0,r=e.length;n-1)o&&o.push(i);else if(l=ie.contains(i.ownerDocument,i),a=c(p.appendChild(i),"script"),l&&d(a),n)for(f=0;i=a[f++];)Ae.test(i.type||"")&&n.push(i);return p}function p(){return!0}function h(){return!1}function m(){try{return G.activeElement}catch(e){}}function g(e,t,n,r,o,i){var a,s;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(s in t)g(e,s,n,r,t[s],i);return e}if(null==r&&null==o?(o=n,r=n=void 0):null==o&&("string"==typeof n?(o=r,r=void 0):(o=r,r=n,n=void 0)),o===!1)o=h;else if(!o)return e;return 1===i&&(a=o,o=function(e){return ie().off(e),a.apply(this,arguments)}, -o.guid=a.guid||(a.guid=ie.guid++)),e.each(function(){ie.event.add(this,t,o,r,n)})}function v(e,t){return ie.nodeName(e,"table")&&ie.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function y(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function b(e){var t=$e.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function w(e,t){var n,r,o,i,a,s,u,l;if(1===t.nodeType){if(Se.hasData(e)&&(i=Se.access(e),a=Se.set(t,i),l=i.events)){delete a.handle,a.events={};for(o in l)for(n=0,r=l[o].length;n1&&"string"==typeof m&&!re.checkClone&&qe.test(m))return e.each(function(o){var i=e.eq(o);g&&(t[0]=m.call(this,o,i.html())),x(i,t,n,r)});if(p&&(o=f(t,e[0].ownerDocument,!1,e,r),i=o.firstChild,1===o.childNodes.length&&(o=i),i||r)){for(a=ie.map(c(o,"script"),y),s=a.length;d")).appendTo(t.documentElement),t=Ve[0].contentDocument,t.write(),t.close(),n=E(e,t),Ve.detach()),Ye[e]=n),n}function T(e,t,n){var r,o,i,a,s=e.style;return n=n||Ke(e),a=n?n.getPropertyValue(t)||n[t]:void 0,""!==a&&void 0!==a||ie.contains(e.ownerDocument,e)||(a=ie.style(e,t)),n&&!re.pixelMarginRight()&&Ge.test(a)&&Ze.test(t)&&(r=s.width,o=s.minWidth,i=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=o,s.maxWidth=i),void 0!==a?a+"":a}function R(e,t){return{get:function(){return e()?void delete this.get:(this.get=t).apply(this,arguments)}}}function k(e){if(e in rt)return e;for(var t=e[0].toUpperCase()+e.slice(1),n=nt.length;n--;)if(e=nt[n]+t,e in rt)return e}function P(e,t,n){var r=Me.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function M(e,t,n,r,o){for(var i=n===(r?"border":"content")?4:"width"===t?1:0,a=0;i<4;i+=2)"margin"===n&&(a+=ie.css(e,n+Oe[i],!0,o)),r?("content"===n&&(a-=ie.css(e,"padding"+Oe[i],!0,o)),"margin"!==n&&(a-=ie.css(e,"border"+Oe[i]+"Width",!0,o))):(a+=ie.css(e,"padding"+Oe[i],!0,o),"padding"!==n&&(a+=ie.css(e,"border"+Oe[i]+"Width",!0,o)));return a}function O(e,t,n){var r=!0,o="width"===t?e.offsetWidth:e.offsetHeight,i=Ke(e),a="border-box"===ie.css(e,"boxSizing",!1,i);if(o<=0||null==o){if(o=T(e,t,i),(o<0||null==o)&&(o=e.style[t]),Ge.test(o))return o;r=a&&(re.boxSizingReliable()||o===e.style[t]),o=parseFloat(o)||0}return o+M(e,t,n||(a?"border":"content"),r,i)+"px"}function D(e,t){for(var n,r,o,i=[],a=0,s=e.length;a=0&&n=0},isPlainObject:function(e){var t;if("object"!==ie.type(e)||e.nodeType||ie.isWindow(e))return!1;if(e.constructor&&!ne.call(e,"constructor")&&!ne.call(e.constructor.prototype||{},"isPrototypeOf"))return!1;for(t in e);return void 0===t||ne.call(e,t)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?ee[te.call(e)]||"object":typeof e},globalEval:function(e){var t,n=eval;e=ie.trim(e),e&&(1===e.indexOf("use strict")?(t=G.createElement("script"),t.text=e,G.head.appendChild(t).parentNode.removeChild(t)):n(e))},camelCase:function(e){return e.replace(se,"ms-").replace(ue,le)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t){var r,o=0;if(n(e))for(r=e.length;ox.cacheLength&&delete e[t.shift()],e[n+" "]=r}var t=[];return e}function r(e){return e[F]=!0,e}function o(e){var t=D.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function i(e,t){for(var n=e.split("|"),r=n.length;r--;)x.attrHandle[n[r]]=t}function a(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||Y)-(~e.sourceIndex||Y);if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function s(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function u(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function l(e){return r(function(t){return t=+t,r(function(n,r){for(var o,i=e([],n.length,t),a=i.length;a--;)n[o=i[a]]&&(n[o]=!(r[o]=n[o]))})})}function c(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function d(){}function f(e){for(var t=0,n=e.length,r="";t1?function(t,n,r){for(var o=e.length;o--;)if(!e[o](t,n,r))return!1;return!0}:e[0]}function m(e,n,r){for(var o=0,i=n.length;o-1&&(r[l]=!(a[l]=d))}}else b=g(b===a?b.splice(h,b.length):b),i?i(null,a,b,u):X.apply(a,b)})}function y(e){for(var t,n,r,o=e.length,i=x.relative[e[0].type],a=i||x.relative[" "],s=i?1:0,u=p(function(e){return e===t},a,!0),l=p(function(e){return ee(t,e)>-1},a,!0),c=[function(e,n,r){var o=!i&&(r||n!==k)||((t=n).nodeType?u(e,n,r):l(e,n,r));return t=null,o}];s1&&h(c),s>1&&f(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(se,"$1"),n,s0,i=e.length>0,a=function(r,a,s,u,l){var c,d,f,p=0,h="0",m=r&&[],v=[],y=k,b=r||i&&x.find.TAG("*",l),w=W+=null==y?1:Math.random()||.1,_=b.length;for(l&&(k=a===D||a||l);h!==_&&null!=(c=b[h]);h++){if(i&&c){for(d=0,a||c.ownerDocument===D||(O(c),s=!I);f=e[d++];)if(f(c,a||D,s)){u.push(c);break}l&&(W=w)}o&&((c=!f&&c)&&p--,r&&m.push(c))}if(p+=h,o&&h!==p){for(d=0;f=n[d++];)f(m,v,a,s);if(r){if(p>0)for(;h--;)m[h]||v[h]||(v[h]=K.call(u));v=g(v)}X.apply(u,v),l&&!r&&v.length>0&&p+n.length>1&&t.uniqueSort(u)}return l&&(W=w,k=y),m};return o?r(a):a}var w,_,x,C,E,S,T,R,k,P,M,O,D,N,I,A,j,L,U,F="sizzle"+1*new Date,H=e.document,W=0,B=0,q=n(),$=n(),z=n(),V=function(e,t){return e===t&&(M=!0),0},Y=1<<31,Z={}.hasOwnProperty,G=[],K=G.pop,Q=G.push,X=G.push,J=G.slice,ee=function(e,t){for(var n=0,r=e.length;n+~]|"+ne+")"+ne+"*"),ce=new RegExp("="+ne+"*([^\\]'\"]*?)"+ne+"*\\]","g"),de=new RegExp(ie),fe=new RegExp("^"+re+"$"),pe={ID:new RegExp("^#("+re+")"),CLASS:new RegExp("^\\.("+re+")"),TAG:new RegExp("^("+re+"|[*])"),ATTR:new RegExp("^"+oe),PSEUDO:new RegExp("^"+ie),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ne+"*(even|odd|(([+-]|)(\\d*)n|)"+ne+"*(?:([+-]|)"+ne+"*(\\d+)|))"+ne+"*\\)|)","i"),bool:new RegExp("^(?:"+te+")$","i"),needsContext:new RegExp("^"+ne+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ne+"*((?:-\\d)?\\d*)"+ne+"*\\)|)(?=[^-]|$)","i")},he=/^(?:input|select|textarea|button)$/i,me=/^h\d$/i,ge=/^[^{]+\{\s*\[native \w/,ve=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ye=/[+~]/,be=/'|\\/g,we=new RegExp("\\\\([\\da-f]{1,6}"+ne+"?|("+ne+")|.)","ig"),_e=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},xe=function(){O()};try{X.apply(G=J.call(H.childNodes),H.childNodes),G[H.childNodes.length].nodeType}catch(Ce){X={apply:G.length?function(e,t){Q.apply(e,J.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}_=t.support={},E=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},O=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:H;return r!==D&&9===r.nodeType&&r.documentElement?(D=r,N=D.documentElement,I=!E(D),(n=D.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",xe,!1):n.attachEvent&&n.attachEvent("onunload",xe)),_.attributes=o(function(e){return e.className="i",!e.getAttribute("className")}),_.getElementsByTagName=o(function(e){return e.appendChild(D.createComment("")),!e.getElementsByTagName("*").length}),_.getElementsByClassName=ge.test(D.getElementsByClassName),_.getById=o(function(e){return N.appendChild(e).id=F,!D.getElementsByName||!D.getElementsByName(F).length}),_.getById?(x.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&I){var n=t.getElementById(e);return n?[n]:[]}},x.filter.ID=function(e){var t=e.replace(we,_e);return function(e){return e.getAttribute("id")===t}}):(delete x.find.ID,x.filter.ID=function(e){var t=e.replace(we,_e);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}}),x.find.TAG=_.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):_.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],o=0,i=t.getElementsByTagName(e);if("*"===e){for(;n=i[o++];)1===n.nodeType&&r.push(n);return r}return i},x.find.CLASS=_.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&I)return t.getElementsByClassName(e)},j=[],A=[],(_.qsa=ge.test(D.querySelectorAll))&&(o(function(e){N.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&A.push("[*^$]="+ne+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||A.push("\\["+ne+"*(?:value|"+te+")"),e.querySelectorAll("[id~="+F+"-]").length||A.push("~="),e.querySelectorAll(":checked").length||A.push(":checked"),e.querySelectorAll("a#"+F+"+*").length||A.push(".#.+[+~]")}),o(function(e){var t=D.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&A.push("name"+ne+"*[*^$|!~]?="),e.querySelectorAll(":enabled").length||A.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),A.push(",.*:")})),(_.matchesSelector=ge.test(L=N.matches||N.webkitMatchesSelector||N.mozMatchesSelector||N.oMatchesSelector||N.msMatchesSelector))&&o(function(e){_.disconnectedMatch=L.call(e,"div"),L.call(e,"[s!='']:x"),j.push("!=",ie)}),A=A.length&&new RegExp(A.join("|")),j=j.length&&new RegExp(j.join("|")),t=ge.test(N.compareDocumentPosition),U=t||ge.test(N.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},V=t?function(e,t){if(e===t)return M=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n?n:(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&n||!_.sortDetached&&t.compareDocumentPosition(e)===n?e===D||e.ownerDocument===H&&U(H,e)?-1:t===D||t.ownerDocument===H&&U(H,t)?1:P?ee(P,e)-ee(P,t):0:4&n?-1:1)}:function(e,t){if(e===t)return M=!0,0;var n,r=0,o=e.parentNode,i=t.parentNode,s=[e],u=[t];if(!o||!i)return e===D?-1:t===D?1:o?-1:i?1:P?ee(P,e)-ee(P,t):0;if(o===i)return a(e,t);for(n=e;n=n.parentNode;)s.unshift(n);for(n=t;n=n.parentNode;)u.unshift(n);for(;s[r]===u[r];)r++;return r?a(s[r],u[r]):s[r]===H?-1:u[r]===H?1:0},D):D},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==D&&O(e),n=n.replace(ce,"='$1']"),_.matchesSelector&&I&&!z[n+" "]&&(!j||!j.test(n))&&(!A||!A.test(n)))try{var r=L.call(e,n);if(r||_.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(o){}return t(n,D,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==D&&O(e),U(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==D&&O(e);var n=x.attrHandle[t.toLowerCase()],r=n&&Z.call(x.attrHandle,t.toLowerCase())?n(e,t,!I):void 0;return void 0!==r?r:_.attributes||!I?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,n=[],r=0,o=0;if(M=!_.detectDuplicates,P=!_.sortStable&&e.slice(0),e.sort(V),M){for(;t=e[o++];)t===e[o]&&(r=n.push(o));for(;r--;)e.splice(n[r],1)}return P=null,e},C=t.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=C(e)}else if(3===o||4===o)return e.nodeValue}else for(;t=e[r++];)n+=C(t);return n},x=t.selectors={cacheLength:50,createPseudo:r,match:pe,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(we,_e),e[3]=(e[3]||e[4]||e[5]||"").replace(we,_e),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return pe.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&de.test(n)&&(t=S(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(we,_e).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=q[e+" "];return t||(t=new RegExp("(^|"+ne+")"+e+"("+ne+"|$)"))&&q(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(o){var i=t.attr(o,e);return null==i?"!="===n:!n||(i+="","="===n?i===r:"!="===n?i!==r:"^="===n?r&&0===i.indexOf(r):"*="===n?r&&i.indexOf(r)>-1:"$="===n?r&&i.slice(-r.length)===r:"~="===n?(" "+i.replace(ae," ")+" ").indexOf(r)>-1:"|="===n&&(i===r||i.slice(0,r.length+1)===r+"-"))}},CHILD:function(e,t,n,r,o){var i="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===o?function(e){return!!e.parentNode}:function(t,n,u){var l,c,d,f,p,h,m=i!==a?"nextSibling":"previousSibling",g=t.parentNode,v=s&&t.nodeName.toLowerCase(),y=!u&&!s,b=!1;if(g){if(i){for(;m;){for(f=t;f=f[m];)if(s?f.nodeName.toLowerCase()===v:1===f.nodeType)return!1;h=m="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?g.firstChild:g.lastChild],a&&y){for(f=g,d=f[F]||(f[F]={}),c=d[f.uniqueID]||(d[f.uniqueID]={}),l=c[e]||[],p=l[0]===W&&l[1],b=p&&l[2],f=p&&g.childNodes[p];f=++p&&f&&f[m]||(b=p=0)||h.pop();)if(1===f.nodeType&&++b&&f===t){c[e]=[W,p,b];break}}else if(y&&(f=t,d=f[F]||(f[F]={}),c=d[f.uniqueID]||(d[f.uniqueID]={}),l=c[e]||[],p=l[0]===W&&l[1],b=p),b===!1)for(;(f=++p&&f&&f[m]||(b=p=0)||h.pop())&&((s?f.nodeName.toLowerCase()!==v:1!==f.nodeType)||!++b||(y&&(d=f[F]||(f[F]={}),c=d[f.uniqueID]||(d[f.uniqueID]={}),c[e]=[W,b]),f!==t)););return b-=o,b===r||b%r===0&&b/r>=0}}},PSEUDO:function(e,n){var o,i=x.pseudos[e]||x.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return i[F]?i(n):i.length>1?(o=[e,e,"",n],x.setFilters.hasOwnProperty(e.toLowerCase())?r(function(e,t){for(var r,o=i(e,n),a=o.length;a--;)r=ee(e,o[a]),e[r]=!(t[r]=o[a])}):function(e){return i(e,0,o)}):i}},pseudos:{not:r(function(e){var t=[],n=[],o=T(e.replace(se,"$1"));return o[F]?r(function(e,t,n,r){for(var i,a=o(e,null,r,[]),s=e.length;s--;)(i=a[s])&&(e[s]=!(t[s]=i))}):function(e,r,i){return t[0]=e,o(t,null,i,n),t[0]=null,!n.pop()}}),has:r(function(e){return function(n){return t(e,n).length>0}}),contains:r(function(e){return e=e.replace(we,_e),function(t){return(t.textContent||t.innerText||C(t)).indexOf(e)>-1}}),lang:r(function(e){return fe.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(we,_e).toLowerCase(),function(t){var n;do if(n=I?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===N},focus:function(e){return e===D.activeElement&&(!D.hasFocus||D.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!x.pseudos.empty(e)},header:function(e){return me.test(e.nodeName)},input:function(e){return he.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:l(function(){return[0]}),last:l(function(e,t){return[t-1]}),eq:l(function(e,t,n){return[n<0?n+t:n]}),even:l(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:l(function(e,t,n){for(var r=n<0?n+t:n;++r2&&"ID"===(a=i[0]).type&&_.getById&&9===t.nodeType&&I&&x.relative[i[1].type]){if(t=(x.find.ID(a.matches[0].replace(we,_e),t)||[])[0],!t)return n;l&&(t=t.parentNode),e=e.slice(i.shift().value.length)}for(o=pe.needsContext.test(e)?0:i.length;o--&&(a=i[o],!x.relative[s=a.type]);)if((u=x.find[s])&&(r=u(a.matches[0].replace(we,_e),ye.test(i[0].type)&&c(t.parentNode)||t))){if(i.splice(o,1),e=r.length&&f(i),!e)return X.apply(n,r),n;break}}return(l||T(e,d))(r,t,!I,n,!t||ye.test(e)&&c(t.parentNode)||t),n},_.sortStable=F.split("").sort(V).join("")===F,_.detectDuplicates=!!M,O(),_.sortDetached=o(function(e){return 1&e.compareDocumentPosition(D.createElement("div"))}),o(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||i("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),_.attributes&&o(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||i("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),o(function(e){return null==e.getAttribute("disabled")})||i(te,function(e,t,n){var r;if(!n)return e[t]===!0?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),t}(e);ie.find=ce,ie.expr=ce.selectors,ie.expr[":"]=ie.expr.pseudos,ie.uniqueSort=ie.unique=ce.uniqueSort,ie.text=ce.getText,ie.isXMLDoc=ce.isXML,ie.contains=ce.contains;var de=function(e,t,n){for(var r=[],o=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(o&&ie(e).is(n))break;r.push(e)}return r},fe=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},pe=ie.expr.match.needsContext,he=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,me=/^.[^:#\[\.,]*$/;ie.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?ie.find.matchesSelector(r,e)?[r]:[]:ie.find.matches(e,ie.grep(t,function(e){return 1===e.nodeType; -}))},ie.fn.extend({find:function(e){var t,n=this.length,r=[],o=this;if("string"!=typeof e)return this.pushStack(ie(e).filter(function(){for(t=0;t1?ie.unique(r):r),r.selector=this.selector?this.selector+" "+e:e,r},filter:function(e){return this.pushStack(r(this,e||[],!1))},not:function(e){return this.pushStack(r(this,e||[],!0))},is:function(e){return!!r(this,"string"==typeof e&&pe.test(e)?ie(e):e||[],!1).length}});var ge,ve=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,ye=ie.fn.init=function(e,t,n){var r,o;if(!e)return this;if(n=n||ge,"string"==typeof e){if(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:ve.exec(e),!r||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof ie?t[0]:t,ie.merge(this,ie.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:G,!0)),he.test(r[1])&&ie.isPlainObject(t))for(r in t)ie.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return o=G.getElementById(r[2]),o&&o.parentNode&&(this.length=1,this[0]=o),this.context=G,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):ie.isFunction(e)?void 0!==n.ready?n.ready(e):e(ie):(void 0!==e.selector&&(this.selector=e.selector,this.context=e.context),ie.makeArray(e,this))};ye.prototype=ie.fn,ge=ie(G);var be=/^(?:parents|prev(?:Until|All))/,we={children:!0,contents:!0,next:!0,prev:!0};ie.fn.extend({has:function(e){var t=ie(e,this),n=t.length;return this.filter(function(){for(var e=0;e-1:1===n.nodeType&&ie.find.matchesSelector(n,e))){i.push(n);break}return this.pushStack(i.length>1?ie.uniqueSort(i):i)},index:function(e){return e?"string"==typeof e?J.call(ie(e),this[0]):J.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(ie.uniqueSort(ie.merge(this.get(),ie(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),ie.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return de(e,"parentNode")},parentsUntil:function(e,t,n){return de(e,"parentNode",n)},next:function(e){return o(e,"nextSibling")},prev:function(e){return o(e,"previousSibling")},nextAll:function(e){return de(e,"nextSibling")},prevAll:function(e){return de(e,"previousSibling")},nextUntil:function(e,t,n){return de(e,"nextSibling",n)},prevUntil:function(e,t,n){return de(e,"previousSibling",n)},siblings:function(e){return fe((e.parentNode||{}).firstChild,e)},children:function(e){return fe(e.firstChild)},contents:function(e){return e.contentDocument||ie.merge([],e.childNodes)}},function(e,t){ie.fn[e]=function(n,r){var o=ie.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(o=ie.filter(r,o)),this.length>1&&(we[e]||ie.uniqueSort(o),be.test(e)&&o.reverse()),this.pushStack(o)}});var _e=/\S+/g;ie.Callbacks=function(e){e="string"==typeof e?i(e):ie.extend({},e);var t,n,r,o,a=[],s=[],u=-1,l=function(){for(o=e.once,r=t=!0;s.length;u=-1)for(n=s.shift();++u-1;)a.splice(n,1),n<=u&&u--}),this},has:function(e){return e?ie.inArray(e,a)>-1:a.length>0},empty:function(){return a&&(a=[]),this},disable:function(){return o=s=[],a=n="",this},disabled:function(){return!a},lock:function(){return o=s=[],n||(a=n=""),this},locked:function(){return!!o},fireWith:function(e,n){return o||(n=n||[],n=[e,n.slice?n.slice():n],s.push(n),t||l()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},ie.extend({Deferred:function(e){var t=[["resolve","done",ie.Callbacks("once memory"),"resolved"],["reject","fail",ie.Callbacks("once memory"),"rejected"],["notify","progress",ie.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return o.done(arguments).fail(arguments),this},then:function(){var e=arguments;return ie.Deferred(function(n){ie.each(t,function(t,i){var a=ie.isFunction(e[t])&&e[t];o[i[1]](function(){var e=a&&a.apply(this,arguments);e&&ie.isFunction(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[i[0]+"With"](this===r?n.promise():this,a?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?ie.extend(e,r):r}},o={};return r.pipe=r.then,ie.each(t,function(e,i){var a=i[2],s=i[3];r[i[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),o[i[0]]=function(){return o[i[0]+"With"](this===o?r:this,arguments),this},o[i[0]+"With"]=a.fireWith}),r.promise(o),e&&e.call(o,o),o},when:function(e){var t,n,r,o=0,i=K.call(arguments),a=i.length,s=1!==a||e&&ie.isFunction(e.promise)?a:0,u=1===s?e:ie.Deferred(),l=function(e,n,r){return function(o){n[e]=this,r[e]=arguments.length>1?K.call(arguments):o,r===t?u.notifyWith(n,r):--s||u.resolveWith(n,r)}};if(a>1)for(t=new Array(a),n=new Array(a),r=new Array(a);o0||(xe.resolveWith(G,[ie]),ie.fn.triggerHandler&&(ie(G).triggerHandler("ready"),ie(G).off("ready"))))}}),ie.ready.promise=function(t){return xe||(xe=ie.Deferred(),"complete"===G.readyState||"loading"!==G.readyState&&!G.documentElement.doScroll?e.setTimeout(ie.ready):(G.addEventListener("DOMContentLoaded",a),e.addEventListener("load",a))),xe.promise(t)},ie.ready.promise();var Ce=function(e,t,n,r,o,i,a){var s=0,u=e.length,l=null==n;if("object"===ie.type(n)){o=!0;for(s in n)Ce(e,t,s,n[s],!0,i,a)}else if(void 0!==r&&(o=!0,ie.isFunction(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(ie(e),n)})),t))for(;s-1&&void 0!==n&&Te.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){Te.remove(this,e)})}}),ie.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Se.get(e,t),n&&(!r||ie.isArray(n)?r=Se.access(e,t,ie.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=ie.queue(e,t),r=n.length,o=n.shift(),i=ie._queueHooks(e,t),a=function(){ie.dequeue(e,t)};"inprogress"===o&&(o=n.shift(),r--),o&&("fx"===t&&n.unshift("inprogress"),delete i.stop,o.call(e,a,i)),!r&&i&&i.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Se.get(e,n)||Se.access(e,n,{empty:ie.Callbacks("once memory").add(function(){Se.remove(e,[t+"queue",n])})})}}),ie.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length",""],thead:[1,"","
      "],col:[2,"","
      "],tr:[2,"","
      "],td:[3,"","
      "],_default:[0,"",""]};je.optgroup=je.option,je.tbody=je.tfoot=je.colgroup=je.caption=je.thead,je.th=je.td;var Le=/<|&#?\w+;/;!function(){var e=G.createDocumentFragment(),t=e.appendChild(G.createElement("div")),n=G.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),t.appendChild(n),re.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="",re.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue}();var Ue=/^key/,Fe=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,He=/^([^.]*)(?:\.(.+)|)/;ie.event={global:{},add:function(e,t,n,r,o){var i,a,s,u,l,c,d,f,p,h,m,g=Se.get(e);if(g)for(n.handler&&(i=n,n=i.handler,o=i.selector),n.guid||(n.guid=ie.guid++),(u=g.events)||(u=g.events={}),(a=g.handle)||(a=g.handle=function(t){return"undefined"!=typeof ie&&ie.event.triggered!==t.type?ie.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(_e)||[""],l=t.length;l--;)s=He.exec(t[l])||[],p=m=s[1],h=(s[2]||"").split(".").sort(),p&&(d=ie.event.special[p]||{},p=(o?d.delegateType:d.bindType)||p,d=ie.event.special[p]||{},c=ie.extend({type:p,origType:m,data:r,handler:n,guid:n.guid,selector:o,needsContext:o&&ie.expr.match.needsContext.test(o),namespace:h.join(".")},i),(f=u[p])||(f=u[p]=[],f.delegateCount=0,d.setup&&d.setup.call(e,r,h,a)!==!1||e.addEventListener&&e.addEventListener(p,a)),d.add&&(d.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),o?f.splice(f.delegateCount++,0,c):f.push(c),ie.event.global[p]=!0)},remove:function(e,t,n,r,o){var i,a,s,u,l,c,d,f,p,h,m,g=Se.hasData(e)&&Se.get(e);if(g&&(u=g.events)){for(t=(t||"").match(_e)||[""],l=t.length;l--;)if(s=He.exec(t[l])||[],p=m=s[1],h=(s[2]||"").split(".").sort(),p){for(d=ie.event.special[p]||{},p=(r?d.delegateType:d.bindType)||p,f=u[p]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=i=f.length;i--;)c=f[i],!o&&m!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(f.splice(i,1),c.selector&&f.delegateCount--,d.remove&&d.remove.call(e,c));a&&!f.length&&(d.teardown&&d.teardown.call(e,h,g.handle)!==!1||ie.removeEvent(e,p,g.handle),delete u[p])}else for(p in u)ie.event.remove(e,p+t[l],n,r,!0);ie.isEmptyObject(u)&&Se.remove(e,"handle events")}},dispatch:function(e){e=ie.event.fix(e);var t,n,r,o,i,a=[],s=K.call(arguments),u=(Se.get(this,"events")||{})[e.type]||[],l=ie.event.special[e.type]||{};if(s[0]=e,e.delegateTarget=this,!l.preDispatch||l.preDispatch.call(this,e)!==!1){for(a=ie.event.handlers.call(this,e,u),t=0;(o=a[t++])&&!e.isPropagationStopped();)for(e.currentTarget=o.elem,n=0;(i=o.handlers[n++])&&!e.isImmediatePropagationStopped();)e.rnamespace&&!e.rnamespace.test(i.namespace)||(e.handleObj=i,e.data=i.data,r=((ie.event.special[i.origType]||{}).handle||i.handler).apply(o.elem,s),void 0!==r&&(e.result=r)===!1&&(e.preventDefault(),e.stopPropagation()));return l.postDispatch&&l.postDispatch.call(this,e),e.result}},handlers:function(e,t){var n,r,o,i,a=[],s=t.delegateCount,u=e.target;if(s&&u.nodeType&&("click"!==e.type||isNaN(e.button)||e.button<1))for(;u!==this;u=u.parentNode||this)if(1===u.nodeType&&(u.disabled!==!0||"click"!==e.type)){for(r=[],n=0;n-1:ie.find(o,this,null,[u]).length),r[o]&&r.push(i);r.length&&a.push({elem:u,handlers:r})}return s]*)\/>/gi,Be=/\s*$/g;ie.extend({htmlPrefilter:function(e){return e.replace(We,"<$1>")},clone:function(e,t,n){var r,o,i,a,s=e.cloneNode(!0),u=ie.contains(e.ownerDocument,e);if(!(re.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||ie.isXMLDoc(e)))for(a=c(s),i=c(e),r=0,o=i.length;r0&&d(a,!u&&c(e,"script")),s},cleanData:function(e){for(var t,n,r,o=ie.event.special,i=0;void 0!==(n=e[i]);i++)if(Ee(n)){if(t=n[Se.expando]){if(t.events)for(r in t.events)o[r]?ie.event.remove(n,r):ie.removeEvent(n,r,t.handle);n[Se.expando]=void 0}n[Te.expando]&&(n[Te.expando]=void 0)}}}),ie.fn.extend({domManip:x,detach:function(e){return C(this,e,!0)},remove:function(e){return C(this,e)},text:function(e){return Ce(this,function(e){return void 0===e?ie.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return x(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=v(this,e);t.appendChild(e)}})},prepend:function(){return x(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=v(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return x(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return x(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(ie.cleanData(c(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return ie.clone(this,e,t)})},html:function(e){return Ce(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Be.test(e)&&!je[(Ie.exec(e)||["",""])[1].toLowerCase()]){e=ie.htmlPrefilter(e);try{for(;n1)},show:function(){return D(this,!0)},hide:function(){return D(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){De(this)?ie(this).show():ie(this).hide()})}}),ie.Tween=N,N.prototype={constructor:N,init:function(e,t,n,r,o,i){this.elem=e,this.prop=n,this.easing=o||ie.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=i||(ie.cssNumber[n]?"":"px")},cur:function(){var e=N.propHooks[this.prop];return e&&e.get?e.get(this):N.propHooks._default.get(this)},run:function(e){var t,n=N.propHooks[this.prop];return this.options.duration?this.pos=t=ie.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):N.propHooks._default.set(this),this}},N.prototype.init.prototype=N.prototype,N.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=ie.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){ie.fx.step[e.prop]?ie.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[ie.cssProps[e.prop]]&&!ie.cssHooks[e.prop]?e.elem[e.prop]=e.now:ie.style(e.elem,e.prop,e.now+e.unit)}}},N.propHooks.scrollTop=N.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},ie.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},ie.fx=N.prototype.init,ie.fx.step={};var ot,it,at=/^(?:toggle|show|hide)$/,st=/queueHooks$/;ie.Animation=ie.extend(F,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return l(n.elem,e,Me.exec(t),n),n}]},tweener:function(e,t){ie.isFunction(e)?(t=e,e=["*"]):e=e.match(_e);for(var n,r=0,o=e.length;r1)},removeAttr:function(e){return this.each(function(){ie.removeAttr(this,e)})}}),ie.extend({attr:function(e,t,n){var r,o,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return"undefined"==typeof e.getAttribute?ie.prop(e,t,n):(1===i&&ie.isXMLDoc(e)||(t=t.toLowerCase(),o=ie.attrHooks[t]||(ie.expr.match.bool.test(t)?ut:void 0)),void 0!==n?null===n?void ie.removeAttr(e,t):o&&"set"in o&&void 0!==(r=o.set(e,n,t))?r:(e.setAttribute(t,n+""),n):o&&"get"in o&&null!==(r=o.get(e,t))?r:(r=ie.find.attr(e,t),null==r?void 0:r))},attrHooks:{type:{set:function(e,t){if(!re.radioValue&&"radio"===t&&ie.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r,o=0,i=t&&t.match(_e);if(i&&1===e.nodeType)for(;n=i[o++];)r=ie.propFix[n]||n,ie.expr.match.bool.test(n)&&(e[r]=!1),e.removeAttribute(n)}}),ut={set:function(e,t,n){return t===!1?ie.removeAttr(e,n):e.setAttribute(n,n),n}},ie.each(ie.expr.match.bool.source.match(/\w+/g),function(e,t){var n=lt[t]||ie.find.attr;lt[t]=function(e,t,r){var o,i;return r||(i=lt[t],lt[t]=o,o=null!=n(e,t,r)?t.toLowerCase():null,lt[t]=i),o}});var ct=/^(?:input|select|textarea|button)$/i,dt=/^(?:a|area)$/i;ie.fn.extend({prop:function(e,t){return Ce(this,ie.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[ie.propFix[e]||e]})}}),ie.extend({prop:function(e,t,n){var r,o,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return 1===i&&ie.isXMLDoc(e)||(t=ie.propFix[t]||t,o=ie.propHooks[t]),void 0!==n?o&&"set"in o&&void 0!==(r=o.set(e,n,t))?r:e[t]=n:o&&"get"in o&&null!==(r=o.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=ie.find.attr(e,"tabindex");return t?parseInt(t,10):ct.test(e.nodeName)||dt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),re.optSelected||(ie.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),ie.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){ie.propFix[this.toLowerCase()]=this});var ft=/[\t\r\n\f]/g;ie.fn.extend({addClass:function(e){var t,n,r,o,i,a,s,u=0; -if(ie.isFunction(e))return this.each(function(t){ie(this).addClass(e.call(this,t,H(this)))});if("string"==typeof e&&e)for(t=e.match(_e)||[];n=this[u++];)if(o=H(n),r=1===n.nodeType&&(" "+o+" ").replace(ft," ")){for(a=0;i=t[a++];)r.indexOf(" "+i+" ")<0&&(r+=i+" ");s=ie.trim(r),o!==s&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,o,i,a,s,u=0;if(ie.isFunction(e))return this.each(function(t){ie(this).removeClass(e.call(this,t,H(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof e&&e)for(t=e.match(_e)||[];n=this[u++];)if(o=H(n),r=1===n.nodeType&&(" "+o+" ").replace(ft," ")){for(a=0;i=t[a++];)for(;r.indexOf(" "+i+" ")>-1;)r=r.replace(" "+i+" "," ");s=ie.trim(r),o!==s&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):ie.isFunction(e)?this.each(function(n){ie(this).toggleClass(e.call(this,n,H(this),t),t)}):this.each(function(){var t,r,o,i;if("string"===n)for(r=0,o=ie(this),i=e.match(_e)||[];t=i[r++];)o.hasClass(t)?o.removeClass(t):o.addClass(t);else void 0!==e&&"boolean"!==n||(t=H(this),t&&Se.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||e===!1?"":Se.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+H(n)+" ").replace(ft," ").indexOf(t)>-1)return!0;return!1}});var pt=/\r/g,ht=/[\x20\t\r\n\f]+/g;ie.fn.extend({val:function(e){var t,n,r,o=this[0];{if(arguments.length)return r=ie.isFunction(e),this.each(function(n){var o;1===this.nodeType&&(o=r?e.call(this,n,ie(this).val()):e,null==o?o="":"number"==typeof o?o+="":ie.isArray(o)&&(o=ie.map(o,function(e){return null==e?"":e+""})),t=ie.valHooks[this.type]||ie.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,o,"value")||(this.value=o))});if(o)return t=ie.valHooks[o.type]||ie.valHooks[o.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(n=t.get(o,"value"))?n:(n=o.value,"string"==typeof n?n.replace(pt,""):null==n?"":n)}}}),ie.extend({valHooks:{option:{get:function(e){var t=ie.find.attr(e,"value");return null!=t?t:ie.trim(ie.text(e)).replace(ht," ")}},select:{get:function(e){for(var t,n,r=e.options,o=e.selectedIndex,i="select-one"===e.type||o<0,a=i?null:[],s=i?o+1:r.length,u=o<0?s:i?o:0;u-1)&&(n=!0);return n||(e.selectedIndex=-1),i}}}}),ie.each(["radio","checkbox"],function(){ie.valHooks[this]={set:function(e,t){if(ie.isArray(t))return e.checked=ie.inArray(ie(e).val(),t)>-1}},re.checkOn||(ie.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var mt=/^(?:focusinfocus|focusoutblur)$/;ie.extend(ie.event,{trigger:function(t,n,r,o){var i,a,s,u,l,c,d,f=[r||G],p=ne.call(t,"type")?t.type:t,h=ne.call(t,"namespace")?t.namespace.split("."):[];if(a=s=r=r||G,3!==r.nodeType&&8!==r.nodeType&&!mt.test(p+ie.event.triggered)&&(p.indexOf(".")>-1&&(h=p.split("."),p=h.shift(),h.sort()),l=p.indexOf(":")<0&&"on"+p,t=t[ie.expando]?t:new ie.Event(p,"object"==typeof t&&t),t.isTrigger=o?2:3,t.namespace=h.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:ie.makeArray(n,[t]),d=ie.event.special[p]||{},o||!d.trigger||d.trigger.apply(r,n)!==!1)){if(!o&&!d.noBubble&&!ie.isWindow(r)){for(u=d.delegateType||p,mt.test(u+p)||(a=a.parentNode);a;a=a.parentNode)f.push(a),s=a;s===(r.ownerDocument||G)&&f.push(s.defaultView||s.parentWindow||e)}for(i=0;(a=f[i++])&&!t.isPropagationStopped();)t.type=i>1?u:d.bindType||p,c=(Se.get(a,"events")||{})[t.type]&&Se.get(a,"handle"),c&&c.apply(a,n),c=l&&a[l],c&&c.apply&&Ee(a)&&(t.result=c.apply(a,n),t.result===!1&&t.preventDefault());return t.type=p,o||t.isDefaultPrevented()||d._default&&d._default.apply(f.pop(),n)!==!1||!Ee(r)||l&&ie.isFunction(r[p])&&!ie.isWindow(r)&&(s=r[l],s&&(r[l]=null),ie.event.triggered=p,r[p](),ie.event.triggered=void 0,s&&(r[l]=s)),t.result}},simulate:function(e,t,n){var r=ie.extend(new ie.Event,n,{type:e,isSimulated:!0});ie.event.trigger(r,null,t)}}),ie.fn.extend({trigger:function(e,t){return this.each(function(){ie.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return ie.event.trigger(e,t,n,!0)}}),ie.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(e,t){ie.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),ie.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),re.focusin="onfocusin"in e,re.focusin||ie.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){ie.event.simulate(t,e.target,ie.event.fix(e))};ie.event.special[t]={setup:function(){var r=this.ownerDocument||this,o=Se.access(r,t);o||r.addEventListener(e,n,!0),Se.access(r,t,(o||0)+1)},teardown:function(){var r=this.ownerDocument||this,o=Se.access(r,t)-1;o?Se.access(r,t,o):(r.removeEventListener(e,n,!0),Se.remove(r,t))}}});var gt=e.location,vt=ie.now(),yt=/\?/;ie.parseJSON=function(e){return JSON.parse(e+"")},ie.parseXML=function(t){var n;if(!t||"string"!=typeof t)return null;try{n=(new e.DOMParser).parseFromString(t,"text/xml")}catch(r){n=void 0}return n&&!n.getElementsByTagName("parsererror").length||ie.error("Invalid XML: "+t),n};var bt=/#.*$/,wt=/([?&])_=[^&]*/,_t=/^(.*?):[ \t]*([^\r\n]*)$/gm,xt=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Ct=/^(?:GET|HEAD)$/,Et=/^\/\//,St={},Tt={},Rt="*/".concat("*"),kt=G.createElement("a");kt.href=gt.href,ie.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:gt.href,type:"GET",isLocal:xt.test(gt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Rt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":ie.parseJSON,"text xml":ie.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?q(q(e,ie.ajaxSettings),t):q(ie.ajaxSettings,e)},ajaxPrefilter:W(St),ajaxTransport:W(Tt),ajax:function(t,n){function r(t,n,r,s){var l,d,y,b,_,C=n;2!==w&&(w=2,u&&e.clearTimeout(u),o=void 0,a=s||"",x.readyState=t>0?4:0,l=t>=200&&t<300||304===t,r&&(b=$(f,x,r)),b=z(f,b,x,l),l?(f.ifModified&&(_=x.getResponseHeader("Last-Modified"),_&&(ie.lastModified[i]=_),_=x.getResponseHeader("etag"),_&&(ie.etag[i]=_)),204===t||"HEAD"===f.type?C="nocontent":304===t?C="notmodified":(C=b.state,d=b.data,y=b.error,l=!y)):(y=C,!t&&C||(C="error",t<0&&(t=0))),x.status=t,x.statusText=(n||C)+"",l?m.resolveWith(p,[d,C,x]):m.rejectWith(p,[x,C,y]),x.statusCode(v),v=void 0,c&&h.trigger(l?"ajaxSuccess":"ajaxError",[x,f,l?d:y]),g.fireWith(p,[x,C]),c&&(h.trigger("ajaxComplete",[x,f]),--ie.active||ie.event.trigger("ajaxStop")))}"object"==typeof t&&(n=t,t=void 0),n=n||{};var o,i,a,s,u,l,c,d,f=ie.ajaxSetup({},n),p=f.context||f,h=f.context&&(p.nodeType||p.jquery)?ie(p):ie.event,m=ie.Deferred(),g=ie.Callbacks("once memory"),v=f.statusCode||{},y={},b={},w=0,_="canceled",x={readyState:0,getResponseHeader:function(e){var t;if(2===w){if(!s)for(s={};t=_t.exec(a);)s[t[1].toLowerCase()]=t[2];t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===w?a:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return w||(e=b[n]=b[n]||e,y[e]=t),this},overrideMimeType:function(e){return w||(f.mimeType=e),this},statusCode:function(e){var t;if(e)if(w<2)for(t in e)v[t]=[v[t],e[t]];else x.always(e[x.status]);return this},abort:function(e){var t=e||_;return o&&o.abort(t),r(0,t),this}};if(m.promise(x).complete=g.add,x.success=x.done,x.error=x.fail,f.url=((t||f.url||gt.href)+"").replace(bt,"").replace(Et,gt.protocol+"//"),f.type=n.method||n.type||f.method||f.type,f.dataTypes=ie.trim(f.dataType||"*").toLowerCase().match(_e)||[""],null==f.crossDomain){l=G.createElement("a");try{l.href=f.url,l.href=l.href,f.crossDomain=kt.protocol+"//"+kt.host!=l.protocol+"//"+l.host}catch(C){f.crossDomain=!0}}if(f.data&&f.processData&&"string"!=typeof f.data&&(f.data=ie.param(f.data,f.traditional)),B(St,f,n,x),2===w)return x;c=ie.event&&f.global,c&&0===ie.active++&&ie.event.trigger("ajaxStart"),f.type=f.type.toUpperCase(),f.hasContent=!Ct.test(f.type),i=f.url,f.hasContent||(f.data&&(i=f.url+=(yt.test(i)?"&":"?")+f.data,delete f.data),f.cache===!1&&(f.url=wt.test(i)?i.replace(wt,"$1_="+vt++):i+(yt.test(i)?"&":"?")+"_="+vt++)),f.ifModified&&(ie.lastModified[i]&&x.setRequestHeader("If-Modified-Since",ie.lastModified[i]),ie.etag[i]&&x.setRequestHeader("If-None-Match",ie.etag[i])),(f.data&&f.hasContent&&f.contentType!==!1||n.contentType)&&x.setRequestHeader("Content-Type",f.contentType),x.setRequestHeader("Accept",f.dataTypes[0]&&f.accepts[f.dataTypes[0]]?f.accepts[f.dataTypes[0]]+("*"!==f.dataTypes[0]?", "+Rt+"; q=0.01":""):f.accepts["*"]);for(d in f.headers)x.setRequestHeader(d,f.headers[d]);if(f.beforeSend&&(f.beforeSend.call(p,x,f)===!1||2===w))return x.abort();_="abort";for(d in{success:1,error:1,complete:1})x[d](f[d]);if(o=B(Tt,f,n,x)){if(x.readyState=1,c&&h.trigger("ajaxSend",[x,f]),2===w)return x;f.async&&f.timeout>0&&(u=e.setTimeout(function(){x.abort("timeout")},f.timeout));try{w=1,o.send(y,r)}catch(C){if(!(w<2))throw C;r(-1,C)}}else r(-1,"No Transport");return x},getJSON:function(e,t,n){return ie.get(e,t,n,"json")},getScript:function(e,t){return ie.get(e,void 0,t,"script")}}),ie.each(["get","post"],function(e,t){ie[t]=function(e,n,r,o){return ie.isFunction(n)&&(o=o||r,r=n,n=void 0),ie.ajax(ie.extend({url:e,type:t,dataType:o,data:n,success:r},ie.isPlainObject(e)&&e))}}),ie._evalUrl=function(e){return ie.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},ie.fn.extend({wrapAll:function(e){var t;return ie.isFunction(e)?this.each(function(t){ie(this).wrapAll(e.call(this,t))}):(this[0]&&(t=ie(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this)},wrapInner:function(e){return ie.isFunction(e)?this.each(function(t){ie(this).wrapInner(e.call(this,t))}):this.each(function(){var t=ie(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=ie.isFunction(e);return this.each(function(n){ie(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){ie.nodeName(this,"body")||ie(this).replaceWith(this.childNodes)}).end()}}),ie.expr.filters.hidden=function(e){return!ie.expr.filters.visible(e)},ie.expr.filters.visible=function(e){return e.offsetWidth>0||e.offsetHeight>0||e.getClientRects().length>0};var Pt=/%20/g,Mt=/\[\]$/,Ot=/\r?\n/g,Dt=/^(?:submit|button|image|reset|file)$/i,Nt=/^(?:input|select|textarea|keygen)/i;ie.param=function(e,t){var n,r=[],o=function(e,t){t=ie.isFunction(t)?t():null==t?"":t,r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(void 0===t&&(t=ie.ajaxSettings&&ie.ajaxSettings.traditional),ie.isArray(e)||e.jquery&&!ie.isPlainObject(e))ie.each(e,function(){o(this.name,this.value)});else for(n in e)V(n,e[n],t,o);return r.join("&").replace(Pt,"+")},ie.fn.extend({serialize:function(){return ie.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=ie.prop(this,"elements");return e?ie.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!ie(this).is(":disabled")&&Nt.test(this.nodeName)&&!Dt.test(e)&&(this.checked||!Ne.test(e))}).map(function(e,t){var n=ie(this).val();return null==n?null:ie.isArray(n)?ie.map(n,function(e){return{name:t.name,value:e.replace(Ot,"\r\n")}}):{name:t.name,value:n.replace(Ot,"\r\n")}}).get()}}),ie.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(t){}};var It={0:200,1223:204},At=ie.ajaxSettings.xhr();re.cors=!!At&&"withCredentials"in At,re.ajax=At=!!At,ie.ajaxTransport(function(t){var n,r;if(re.cors||At&&!t.crossDomain)return{send:function(o,i){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||o["X-Requested-With"]||(o["X-Requested-With"]="XMLHttpRequest");for(a in o)s.setRequestHeader(a,o[a]);n=function(e){return function(){n&&(n=r=s.onload=s.onerror=s.onabort=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?i(0,"error"):i(s.status,s.statusText):i(It[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=n(),r=s.onerror=n("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&e.setTimeout(function(){n&&r()})},n=n("abort");try{s.send(t.hasContent&&t.data||null)}catch(u){if(n)throw u}},abort:function(){n&&n()}}}),ie.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return ie.globalEval(e),e}}}),ie.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),ie.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(r,o){t=ie("",rE:!0,sL:["actionscript","javascript","handlebars","xml"]}},{cN:"meta",v:[{b:/<\?xml/,e:/\?>/,r:10},{b:/<\?\w+/,e:/\?>/}]},{cN:"tag",b:"",c:[{cN:"name",b:/[^\/><\s]+/,r:0},n]}]}}),hljs.registerLanguage("markdown",function(e){return{aliases:["md","mkdown","mkd"],c:[{cN:"section",v:[{b:"^#{1,6}",e:"$"},{b:"^.+?\\n[=-]{2,}$"}]},{b:"<",e:">",sL:"xml",r:0},{cN:"bullet",b:"^([*+-]|(\\d+\\.))\\s+"},{cN:"strong",b:"[*_]{2}.+?[*_]{2}"},{cN:"emphasis",v:[{b:"\\*.+?\\*"},{b:"_.+?_",r:0}]},{cN:"quote",b:"^>\\s+",e:"$"},{cN:"code",v:[{b:"^```w*s*$",e:"^```s*$"},{b:"`.+?`"},{b:"^( {4}|\t)",e:"$",r:0}]},{b:"^[-\\*]{3,}",e:"$"},{b:"\\[.+?\\][\\(\\[].*?[\\)\\]]",rB:!0,c:[{cN:"string",b:"\\[",e:"\\]",eB:!0,rE:!0,r:0},{cN:"link",b:"\\]\\(",e:"\\)",eB:!0,eE:!0},{cN:"symbol",b:"\\]\\[",e:"\\]",eB:!0,eE:!0}],r:10},{b:/^\[[^\n]+\]:/,rB:!0,c:[{cN:"symbol",b:/\[/,e:/\]/,eB:!0,eE:!0},{cN:"link",b:/:\s*/,e:/$/,eB:!0}]}]}}),hljs.registerLanguage("ini",function(e){var t={cN:"string",c:[e.BE],v:[{b:"'''",e:"'''",r:10},{b:'"""',e:'"""',r:10},{b:'"',e:'"'},{b:"'",e:"'"}]};return{aliases:["toml"],cI:!0,i:/\S/,c:[e.C(";","$"),e.HCM,{cN:"section",b:/^\s*\[+/,e:/\]+/},{b:/^[a-z0-9\[\]_-]+\s*=\s*/,e:"$",rB:!0,c:[{cN:"attr",b:/[a-z0-9\[\]_-]+/},{b:/=/,eW:!0,r:0,c:[{cN:"literal",b:/\bon|off|true|false|yes|no\b/},{cN:"variable",v:[{b:/\$[\w\d"][\w\d_]*/},{b:/\$\{(.*?)}/}]},t,{cN:"number",b:/([\+\-]+)?[\d]+_[\d_]+/},e.NM]}]}]}}),hljs.registerLanguage("python",function(e){var t={cN:"meta",b:/^(>>>|\.\.\.) /},n={cN:"string",c:[e.BE],v:[{b:/(u|b)?r?'''/,e:/'''/,c:[t],r:10},{b:/(u|b)?r?"""/,e:/"""/,c:[t],r:10},{b:/(u|r|ur)'/,e:/'/,r:10},{b:/(u|r|ur)"/,e:/"/,r:10},{b:/(b|br)'/,e:/'/},{b:/(b|br)"/,e:/"/},e.ASM,e.QSM]},r={cN:"number",r:0,v:[{b:e.BNR+"[lLjJ]?"},{b:"\\b(0o[0-7]+)[lLjJ]?"},{b:e.CNR+"[lLjJ]?"}]},o={cN:"params",b:/\(/,e:/\)/,c:["self",t,r,n]};return{aliases:["py","gyp"],k:{keyword:"and elif is global as in if from raise for except finally print import pass return exec else break not with class assert yield try while continue del or def lambda async await nonlocal|10 None True False",built_in:"Ellipsis NotImplemented"},i:/(<\/|->|\?)|=>/,c:[t,r,n,e.HCM,{v:[{cN:"function",bK:"def"},{cN:"class",bK:"class"}],e:/:/,i:/[${=;\n,]/,c:[e.UTM,o,{b:/->/,eW:!0,k:"None"}]},{cN:"meta",b:/^[\t ]*@/,e:/$/},{b:/\b(print|exec)\(/}]}}),hljs.registerLanguage("css",function(e){var t="[a-zA-Z-][a-zA-Z0-9_-]*",n={b:/[A-Z\_\.\-]+\s*:/,rB:!0,e:";",eW:!0,c:[{cN:"attribute",b:/\S/,e:":",eE:!0,starts:{eW:!0,eE:!0,c:[{b:/[\w-]+\(/,rB:!0,c:[{cN:"built_in",b:/[\w-]+/},{b:/\(/,e:/\)/,c:[e.ASM,e.QSM]}]},e.CSSNM,e.QSM,e.ASM,e.CBCM,{cN:"number",b:"#[0-9A-Fa-f]+"},{cN:"meta",b:"!important"}]}}]};return{cI:!0,i:/[=\/|'\$]/,c:[e.CBCM,{cN:"selector-id",b:/#[A-Za-z0-9_-]+/},{cN:"selector-class",b:/\.[A-Za-z0-9_-]+/},{cN:"selector-attr",b:/\[/,e:/\]/,i:"$"},{cN:"selector-pseudo",b:/:(:)?[a-zA-Z0-9\_\-\+\(\)"'.]+/},{b:"@(font-face|page)",l:"[a-z-]+",k:"font-face page"},{b:"@",e:"[{;]",i:/:/,c:[{cN:"keyword",b:/\w+/},{b:/\s/,eW:!0,eE:!0,r:0,c:[e.ASM,e.QSM,e.CSSNM]}]},{cN:"selector-tag",b:t,r:0},{b:"{",e:"}",i:/\S/,c:[e.CBCM,n]}]}}),hljs.registerLanguage("less",function(e){var t="[\\w-]+",n="("+t+"|@{"+t+"})",r=[],o=[],i=function(e){return{cN:"string",b:"~?"+e+".*?"+e}},a=function(e,t,n){return{cN:e,b:t,r:n}},s={b:"\\(",e:"\\)",c:o,r:0};o.push(e.CLCM,e.CBCM,i("'"),i('"'),e.CSSNM,{b:"(url|data-uri)\\(",starts:{cN:"string",e:"[\\)\\n]",eE:!0}},a("number","#[0-9A-Fa-f]+\\b"),s,a("variable","@@?"+t,10),a("variable","@{"+t+"}"),a("built_in","~?`[^`]*?`"),{cN:"attribute",b:t+"\\s*:",e:":",rB:!0,eE:!0},{cN:"meta",b:"!important"});var u=o.concat({b:"{",e:"}",c:r}),l={bK:"when",eW:!0,c:[{bK:"and not"}].concat(o)},c={b:n+"\\s*:",rB:!0,e:"[;}]",r:0,c:[{cN:"attribute",b:n,e:":",eE:!0,starts:{eW:!0,i:"[<=$]",r:0,c:o}}]},p={cN:"keyword",b:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{e:"[;{}]",rE:!0,c:o,r:0}},d={cN:"variable",v:[{b:"@"+t+"\\s*:",r:15},{b:"@"+t}],starts:{e:"[;}]",rE:!0,c:u}},f={v:[{b:"[\\.#:&\\[>]",e:"[;{}]"},{b:n,e:"{"}],rB:!0,rE:!0,i:"[<='$\"]",r:0,c:[e.CLCM,e.CBCM,l,a("keyword","all\\b"),a("variable","@{"+t+"}"),a("selector-tag",n+"%?",0),a("selector-id","#"+n),a("selector-class","\\."+n,0),a("selector-tag","&",0),{cN:"selector-attr",b:"\\[",e:"\\]"},{cN:"selector-pseudo",b:/:(:)?[a-zA-Z0-9\_\-\+\(\)"'.]+/},{b:"\\(",e:"\\)",c:u},{b:"!important"}]};return r.push(e.CLCM,e.CBCM,p,d,c,f),{cI:!0,i:"[=>'/<($\"]",c:r}}),hljs.registerLanguage("scss",function(e){var t="[a-zA-Z-][a-zA-Z0-9_-]*",n={cN:"variable",b:"(\\$"+t+")\\b"},r={cN:"number",b:"#[0-9A-Fa-f]+"};return{cN:"attribute",b:"[A-Z\\_\\.\\-]+",e:":",eE:!0,i:"[^\\s]",starts:{eW:!0,eE:!0,c:[r,e.CSSNM,e.QSM,e.ASM,e.CBCM,{cN:"meta",b:"!important"}]}},{cI:!0,i:"[=/|']",c:[e.CLCM,e.CBCM,{cN:"selector-id",b:"\\#[A-Za-z0-9_-]+",r:0},{cN:"selector-class",b:"\\.[A-Za-z0-9_-]+",r:0},{cN:"selector-attr",b:"\\[",e:"\\]",i:"$"},{cN:"selector-tag",b:"\\b(a|abbr|acronym|address|area|article|aside|audio|b|base|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|div|dl|dt|em|embed|fieldset|figcaption|figure|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|map|mark|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|samp|script|section|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|ul|var|video)\\b",r:0},{b:":(visited|valid|root|right|required|read-write|read-only|out-range|optional|only-of-type|only-child|nth-of-type|nth-last-of-type|nth-last-child|nth-child|not|link|left|last-of-type|last-child|lang|invalid|indeterminate|in-range|hover|focus|first-of-type|first-line|first-letter|first-child|first|enabled|empty|disabled|default|checked|before|after|active)"},{b:"::(after|before|choices|first-letter|first-line|repeat-index|repeat-item|selection|value)"},n,{cN:"attribute",b:"\\b(z-index|word-wrap|word-spacing|word-break|width|widows|white-space|visibility|vertical-align|unicode-bidi|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform-style|transform-origin|transform|top|text-underline-position|text-transform|text-shadow|text-rendering|text-overflow|text-indent|text-decoration-style|text-decoration-line|text-decoration-color|text-decoration|text-align-last|text-align|tab-size|table-layout|right|resize|quotes|position|pointer-events|perspective-origin|perspective|page-break-inside|page-break-before|page-break-after|padding-top|padding-right|padding-left|padding-bottom|padding|overflow-y|overflow-x|overflow-wrap|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|order|opacity|object-position|object-fit|normal|none|nav-up|nav-right|nav-left|nav-index|nav-down|min-width|min-height|max-width|max-height|mask|marks|margin-top|margin-right|margin-left|margin-bottom|margin|list-style-type|list-style-position|list-style-image|list-style|line-height|letter-spacing|left|justify-content|initial|inherit|ime-mode|image-orientation|image-resolution|image-rendering|icon|hyphens|height|font-weight|font-variant-ligatures|font-variant|font-style|font-stretch|font-size-adjust|font-size|font-language-override|font-kerning|font-feature-settings|font-family|font|float|flex-wrap|flex-shrink|flex-grow|flex-flow|flex-direction|flex-basis|flex|filter|empty-cells|display|direction|cursor|counter-reset|counter-increment|content|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|columns|color|clip-path|clip|clear|caption-side|break-inside|break-before|break-after|box-sizing|box-shadow|box-decoration-break|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-left-width|border-left-style|border-left-color|border-left|border-image-width|border-image-source|border-image-slice|border-image-repeat|border-image-outset|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-attachment|background-blend-mode|background|backface-visibility|auto|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation|align-self|align-items|align-content)\\b",i:"[^\\s]"},{b:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{b:":",e:";",c:[n,r,e.CSSNM,e.QSM,e.ASM,{cN:"meta",b:"!important"}]},{b:"@",e:"[{;]",k:"mixin include extend for if else each while charset import debug media page content font-face namespace warn",c:[n,e.QSM,e.ASM,r,e.CSSNM,{b:"\\s[A-Za-z0-9_.-]+",r:0}]}]}}),hljs.registerLanguage("json",function(e){var t={literal:"true false null"},n=[e.QSM,e.CNM],r={e:",",eW:!0,eE:!0,c:n,k:t},o={b:"{",e:"}",c:[{cN:"attr",b:/"/,e:/"/,c:[e.BE],i:"\\n"},e.inherit(r,{b:/:/})],i:"\\S"},i={b:"\\[",e:"\\]",c:[e.inherit(r)],i:"\\S"};return n.splice(n.length,0,o,i),{c:n,k:t,i:"\\S"}}),hljs.registerLanguage("javascript",function(e){var t="[A-Za-z$_][0-9A-Za-z$_]*",n={keyword:"in of if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await static import from as",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Promise"},r={cN:"number",v:[{b:"\\b(0[bB][01]+)"},{b:"\\b(0[oO][0-7]+)"},{b:e.CNR}],r:0},o={cN:"subst",b:"\\$\\{",e:"\\}",k:n,c:[]},i={cN:"string",b:"`",e:"`",c:[e.BE,o]};o.c=[e.ASM,e.QSM,i,r,e.RM];var a=o.c.concat([e.CBCM,e.CLCM]);return{aliases:["js","jsx"],k:n,c:[{cN:"meta",r:10,b:/^\s*['"]use (strict|asm)['"]/},{cN:"meta",b:/^#!/,e:/$/},e.ASM,e.QSM,i,e.CLCM,e.CBCM,r,{b:/[{,]\s*/,r:0,c:[{b:t+"\\s*:",rB:!0,r:0,c:[{cN:"attr",b:t,r:0}]}]},{b:"("+e.RSR+"|\\b(case|return|throw)\\b)\\s*",k:"return throw case",c:[e.CLCM,e.CBCM,e.RM,{cN:"function",b:"(\\(.*?\\)|"+t+")\\s*=>",rB:!0,e:"\\s*=>",c:[{cN:"params",v:[{b:t},{b:/\(\s*\)/},{b:/\(/,e:/\)/,eB:!0,eE:!0,k:n,c:a}]}]},{b://,sL:"xml",c:[{b:/<\w+\s*\/>/,skip:!0},{b:/<\w+/,e:/(\/\w+|\w+\/)>/,skip:!0,c:[{b:/<\w+\s*\/>/,skip:!0},"self"]}]}],r:0},{cN:"function",bK:"function",e:/\{/,eE:!0,c:[e.inherit(e.TM,{b:t}),{cN:"params",b:/\(/,e:/\)/,eB:!0,eE:!0,c:a}],i:/\[|%/},{b:/\$[(.]/},e.METHOD_GUARD,{cN:"class",bK:"class",e:/[{;=]/,eE:!0,i:/[:"\[\]]/,c:[{bK:"extends"},e.UTM]},{bK:"constructor",e:/\{/,eE:!0}],i:/#(?!!)/}}),hljs.registerLanguage("bash",function(e){var t={cN:"variable",v:[{b:/\$[\w\d#@][\w\d_]*/},{b:/\$\{(.*?)}/}]},n={cN:"string",b:/"/,e:/"/,c:[e.BE,t,{cN:"variable",b:/\$\(/,e:/\)/,c:[e.BE]}]},r={cN:"string",b:/'/,e:/'/};return{aliases:["sh","zsh"],l:/-?[a-z\._]+/,k:{keyword:"if then else elif fi for while in do done case esac function",literal:"true false",built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp",_:"-ne -eq -lt -gt -f -d -e -s -l -a"},c:[{cN:"meta",b:/^#![^\n]+sh\s*$/,r:10},{cN:"function",b:/\w[\w\d_]*\s*\(\s*\)\s*\{/,rB:!0,c:[e.inherit(e.TM,{b:/\w[\w\d_]*/})],r:0},e.HCM,n,r,t]}})},{}],2:[function(e,t,n){!function(r,o){"function"==typeof define&&define.amd?define(["jquery"],function(e){return o(e)}):"object"==typeof n?t.exports=o(e("jquery")):o(jQuery)}(this,function(e){var t,n;n={ESC:27,TAB:9,ENTER:13,CTRL:17,A:65,P:80,N:78,LEFT:37,UP:38,RIGHT:39,DOWN:40,BACKSPACE:8,SPACE:32},t={beforeSave:function(e){return o.arrayToDefaultHash(e)},matcher:function(e,t,n,r){var o,i,a,s,u;return e=e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),n&&(e="(?:^|\\s)"+e),o=decodeURI("%C3%80"),i=decodeURI("%C3%BF"),u=r?" ":"",s=new RegExp(e+"([A-Za-z"+o+"-"+i+"0-9_"+u+"'.+-]*)$|"+e+"([^\\x00-\\xff]*)$","gi"),a=s.exec(t),a?a[2]||a[1]:null},filter:function(e,t,n){var r,o,i,a;for(r=[],o=0,a=t.length;a>o;o++)i=t[o],~new String(i[n]).toLowerCase().indexOf(e.toLowerCase())&&r.push(i);return r},remoteFilter:null,sorter:function(e,t,n){var r,o,i,a;if(!e)return t;for(r=[],o=0,a=t.length;a>o;o++)i=t[o],i.atwho_order=new String(i[n]).toLowerCase().indexOf(e.toLowerCase()),i.atwho_order>-1&&r.push(i);return r.sort(function(e,t){return e.atwho_order-t.atwho_order})},tplEval:function(e,t){var n,r,o;o=e;try{return"string"!=typeof e&&(o=e(t)),o.replace(/\$\{([^\}]*)\}/g,function(e,n,r){return t[n]})}catch(r){return n=r,""}},highlighter:function(e,t){var n;return t?(n=new RegExp(">\\s*([^<]*?)("+t.replace("+","\\+")+")([^<]*)\\s*<","ig"),e.replace(n,function(e,t,n,r){return"> "+t+""+n+""+r+" <"})):e},beforeInsert:function(e,t,n){return e},beforeReposition:function(e){return e},afterMatchFailed:function(e,t){}};var r;r=function(){function t(t){this.currentFlag=null,this.controllers={},this.aliasMaps={},this.$inputor=e(t),this.setupRootElement(),this.listen()}return t.prototype.createContainer=function(t){var n;return null!=(n=this.$el)&&n.remove(),e(t.body).append(this.$el=e("
      "))},t.prototype.setupRootElement=function(t,n){var r,o;if(null==n&&(n=!1),t)this.window=t.contentWindow,this.document=t.contentDocument||this.window.document,this.iframe=t;else{this.document=this.$inputor[0].ownerDocument,this.window=this.document.defaultView||this.document.parentWindow;try{this.iframe=this.window.frameElement}catch(o){if(r=o,this.iframe=null,e.fn.atwho.debug)throw new Error("iframe auto-discovery is failed.\nPlease use `setIframe` to set the target iframe manually.\n"+r)}}return this.createContainer((this.iframeAsRoot=n)?this.document:document)},t.prototype.controller=function(e){var t,n,r,o;if(this.aliasMaps[e])n=this.controllers[this.aliasMaps[e]];else{o=this.controllers;for(r in o)if(t=o[r],r===e){n=t;break}}return n?n:this.controllers[this.currentFlag]},t.prototype.setContextFor=function(e){return this.currentFlag=e,this},t.prototype.reg=function(e,t){var n,r;return r=(n=this.controllers)[e]||(n[e]=this.$inputor.is("[contentEditable]")?new l(this,e):new a(this,e)),t.alias&&(this.aliasMaps[t.alias]=e),r.init(t),this},t.prototype.listen=function(){return this.$inputor.on("compositionstart",function(e){return function(t){var n;return null!=(n=e.controller())&&n.view.hide(),e.isComposing=!0,null}}(this)).on("compositionend",function(e){return function(t){return e.isComposing=!1,setTimeout(function(t){return e.dispatch(t)}),null}}(this)).on("keyup.atwhoInner",function(e){return function(t){return e.onKeyup(t)}}(this)).on("keydown.atwhoInner",function(e){return function(t){return e.onKeydown(t)}}(this)).on("blur.atwhoInner",function(e){return function(t){var n;return(n=e.controller())?(n.expectedQueryCBId=null,n.view.hide(t,n.getOpt("displayTimeout"))):void 0}}(this)).on("click.atwhoInner",function(e){return function(t){return e.dispatch(t)}}(this)).on("scroll.atwhoInner",function(e){return function(){var t;return t=e.$inputor.scrollTop(),function(n){var r,o;return r=n.target.scrollTop,t!==r&&null!=(o=e.controller())&&o.view.hide(n),t=r,!0}}}(this)())},t.prototype.shutdown=function(){var e,t,n;n=this.controllers;for(e in n)t=n[e],t.destroy(),delete this.controllers[e];return this.$inputor.off(".atwhoInner"),this.$el.remove()},t.prototype.dispatch=function(e){var t,n,r,o;r=this.controllers,o=[];for(t in r)n=r[t],o.push(n.lookUp(e));return o},t.prototype.onKeyup=function(t){var r;switch(t.keyCode){case n.ESC:t.preventDefault(),null!=(r=this.controller())&&r.view.hide();break;case n.DOWN:case n.UP:case n.CTRL:case n.ENTER:e.noop();break;case n.P:case n.N:t.ctrlKey||this.dispatch(t);break;default:this.dispatch(t)}},t.prototype.onKeydown=function(t){var r,o;if(o=null!=(r=this.controller())?r.view:void 0,o&&o.visible())switch(t.keyCode){case n.ESC:t.preventDefault(),o.hide(t);break;case n.UP:t.preventDefault(),o.prev();break;case n.DOWN:t.preventDefault(),o.next();break;case n.P:if(!t.ctrlKey)return;t.preventDefault(),o.prev();break;case n.N:if(!t.ctrlKey)return;t.preventDefault(),o.next();break;case n.TAB:case n.ENTER:case n.SPACE:if(!o.visible())return;if(!this.controller().getOpt("spaceSelectsMatch")&&t.keyCode===n.SPACE)return;if(!this.controller().getOpt("tabSelectsMatch")&&t.keyCode===n.TAB)return;o.highlighted()?(t.preventDefault(),o.choose(t)):o.hide(t);break;default:e.noop()}},t}();var o,i=[].slice;o=function(){function n(t,n){this.app=t,this.at=n,this.$inputor=this.app.$inputor,this.id=this.$inputor[0].id||this.uid(),this.expectedQueryCBId=null,this.setting=null,this.query=null,this.pos=0,this.range=null,0===(this.$el=e("#atwho-ground-"+this.id,this.app.$el)).length&&this.app.$el.append(this.$el=e("
      ")),this.model=new c(this),this.view=new p(this)}return n.prototype.uid=function(){return(Math.random().toString(16)+"000000000").substr(2,8)+(new Date).getTime()},n.prototype.init=function(t){return this.setting=e.extend({},this.setting||e.fn.atwho["default"],t),this.view.init(),this.model.reload(this.setting.data)},n.prototype.destroy=function(){return this.trigger("beforeDestroy"),this.model.destroy(),this.view.destroy(),this.$el.remove()},n.prototype.callDefault=function(){var n,r,o,a;a=arguments[0],n=2<=arguments.length?i.call(arguments,1):[];try{return t[a].apply(this,n)}catch(o){return r=o,e.error(r+" Or maybe At.js doesn't have function "+a)}},n.prototype.trigger=function(e,t){var n,r;return null==t&&(t=[]),t.push(this),n=this.getOpt("alias"),r=n?e+"-"+n+".atwho":e+".atwho",this.$inputor.trigger(r,t)},n.prototype.callbacks=function(e){return this.getOpt("callbacks")[e]||t[e]},n.prototype.getOpt=function(e,t){var n,r;try{return this.setting[e]}catch(r){return n=r,null}},n.prototype.insertContentFor=function(t){var n,r;return r=this.getOpt("insertTpl"),n=e.extend({},t.data("item-data"),{"atwho-at":this.at}),this.callbacks("tplEval").call(this,r,n,"onInsert")},n.prototype.renderView=function(e){var t;return t=this.getOpt("searchKey"),e=this.callbacks("sorter").call(this,this.query.text,e.slice(0,1001),t),this.view.render(e.slice(0,this.getOpt("limit")))},n.arrayToDefaultHash=function(t){var n,r,o,i;if(!e.isArray(t))return t;for(i=[],n=0,o=t.length;o>n;n++)r=t[n],e.isPlainObject(r)?i.push(r):i.push({name:r});return i},n.prototype.lookUp=function(e){var t,n;if((!e||"click"!==e.type||this.getOpt("lookUpOnClick"))&&(!this.getOpt("suspendOnComposing")||!this.app.isComposing))return(t=this.catchQuery(e))?(this.app.setContextFor(this.at),(n=this.getOpt("delay"))?this._delayLookUp(t,n):this._lookUp(t),t):(this.expectedQueryCBId=null,t)},n.prototype._delayLookUp=function(e,t){var n,r;return n=Date.now?Date.now():(new Date).getTime(),this.previousCallTime||(this.previousCallTime=n),r=t-(n-this.previousCallTime),r>0&&t>r?(this.previousCallTime=n,this._stopDelayedCall(),this.delayedCallTimeout=setTimeout(function(t){return function(){return t.previousCallTime=0,t.delayedCallTimeout=null,t._lookUp(e)}}(this),t)):(this._stopDelayedCall(),this.previousCallTime!==n&&(this.previousCallTime=0),this._lookUp(e))},n.prototype._stopDelayedCall=function(){return this.delayedCallTimeout?(clearTimeout(this.delayedCallTimeout),this.delayedCallTimeout=null):void 0},n.prototype._generateQueryCBId=function(){return{}},n.prototype._lookUp=function(t){var n;return n=function(e,t){return e===this.expectedQueryCBId?t&&t.length>0?this.renderView(this.constructor.arrayToDefaultHash(t)):this.view.hide():void 0},this.expectedQueryCBId=this._generateQueryCBId(),this.model.query(t.text,e.proxy(n,this,this.expectedQueryCBId))},n}();var a,s=function(e,t){function n(){this.constructor=e}for(var r in t)u.call(t,r)&&(e[r]=t[r]);return n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype,e},u={}.hasOwnProperty;a=function(t){function n(){return n.__super__.constructor.apply(this,arguments)}return s(n,t),n.prototype.catchQuery=function(){var e,t,n,r,o,i,a;return t=this.$inputor.val(),e=this.$inputor.caret("pos",{iframe:this.app.iframe}),a=t.slice(0,e),o=this.callbacks("matcher").call(this,this.at,a,this.getOpt("startWithSpace"),this.getOpt("acceptSpaceBar")),r="string"==typeof o,r&&o.length0?e.getRangeAt(0):void 0},r.prototype._setRange=function(t,n,r){return null==r&&(r=this._getRange()),r&&n?(n=e(n)[0],"after"===t?(r.setEndAfter(n),r.setStartAfter(n)):(r.setEndBefore(n),r.setStartBefore(n)),r.collapse(!1),this._clearRange(r)):void 0},r.prototype._clearRange=function(e){var t;return null==e&&(e=this._getRange()),t=this.app.window.getSelection(),null==this.ctrl_a_pressed?(t.removeAllRanges(),t.addRange(e)):void 0},r.prototype._movingEvent=function(e){var t;return"click"===e.type||(t=e.which)===n.RIGHT||t===n.LEFT||t===n.UP||t===n.DOWN},r.prototype._unwrap=function(t){var n;return t=e(t).unwrap().get(0),(n=t.nextSibling)&&n.nodeValue&&(t.nodeValue+=n.nodeValue,e(n).remove()),t},r.prototype.catchQuery=function(t){var r,o,i,a,s,u,l,c,p,d,f,h;if((h=this._getRange())&&h.collapsed){if(t.which===n.ENTER)return(o=e(h.startContainer).closest(".atwho-query")).contents().unwrap(),o.is(":empty")&&o.remove(),(o=e(".atwho-query",this.app.document)).text(o.text()).contents().last().unwrap(),void this._clearRange();if(/firefox/i.test(navigator.userAgent)){if(e(h.startContainer).is(this.$inputor))return void this._clearRange();t.which===n.BACKSPACE&&h.startContainer.nodeType===document.ELEMENT_NODE&&(p=h.startOffset-1)>=0?(i=h.cloneRange(),i.setStart(h.startContainer,p),e(i.cloneContents()).contents().last().is(".atwho-inserted")&&(s=e(h.startContainer).contents().get(p),this._setRange("after",e(s).contents().last()))):t.which===n.LEFT&&h.startContainer.nodeType===document.TEXT_NODE&&(r=e(h.startContainer.previousSibling),r.is(".atwho-inserted")&&0===h.startOffset&&this._setRange("after",r.contents().last()))}if(e(h.startContainer).closest(".atwho-inserted").addClass("atwho-query").siblings().removeClass("atwho-query"),(o=e(".atwho-query",this.app.document)).length>0&&o.is(":empty")&&0===o.text().length&&o.remove(),this._movingEvent(t)||o.removeClass("atwho-inserted"),o.length>0)switch(t.which){case n.LEFT:return this._setRange("before",o.get(0),h),void o.removeClass("atwho-query");case n.RIGHT:return this._setRange("after",o.get(0).nextSibling,h),void o.removeClass("atwho-query")}if(o.length>0&&(f=o.attr("data-atwho-at-query"))&&(o.empty().html(f).attr("data-atwho-at-query",null),this._setRange("after",o.get(0),h)),i=h.cloneRange(),i.setStart(h.startContainer,0),c=this.callbacks("matcher").call(this,this.at,i.toString(),this.getOpt("startWithSpace"),this.getOpt("acceptSpaceBar")),u="string"==typeof c,0===o.length&&u&&(a=h.startOffset-this.at.length-c.length)>=0&&(h.setStart(h.startContainer,a),o=e("",this.app.document).attr(this.getOpt("editableAtwhoQueryAttrs")).addClass("atwho-query"),h.surroundContents(o.get(0)),l=o.contents().last().get(0),l&&(/firefox/i.test(navigator.userAgent)?(h.setStart(l,l.length),h.setEnd(l,l.length),this._clearRange(h)):this._setRange("after",l,h))),!(u&&c.length=0&&(this._movingEvent(t)&&o.hasClass("atwho-inserted")?o.removeClass("atwho-query"):!1!==this.callbacks("afterMatchFailed").call(this,this.at,o)&&this._setRange("after",this._unwrap(o.text(o.text()).contents().first()))),null)}},r.prototype.rect=function(){var t,n,r;return(r=this.query.el.offset())?(this.app.iframe&&!this.app.iframeAsRoot&&(n=(t=e(this.app.iframe)).offset(),r.left+=n.left-this.$inputor.scrollLeft(),r.top+=n.top-this.$inputor.scrollTop()),r.bottom=r.top+this.query.el.height(),r):void 0},r.prototype.insert=function(e,t){var n,r,o,i;return this.$inputor.is(":focus")||this.$inputor.focus(),o=""===(o=this.getOpt("suffix"))?o:o||" ",n=t.data("item-data"),this.query.el.removeClass("atwho-query").addClass("atwho-inserted").html(e).attr("data-atwho-at-query",""+n["atwho-at"]+this.query.text).attr("contenteditable","false"),(r=this._getRange())&&(this.query.el.length&&r.setEndAfter(this.query.el[0]),r.collapse(!1),r.insertNode(i=this.app.document.createTextNode(""+o)),this._setRange("after",i,r)),this.$inputor.is(":focus")||this.$inputor.focus(),this.$inputor.change()},r}(o);var c;c=function(){function t(e){this.context=e,this.at=this.context.at,this.storage=this.context.$inputor}return t.prototype.destroy=function(){return this.storage.data(this.at,null)},t.prototype.saved=function(){return this.fetch()>0},t.prototype.query=function(e,t){var n,r,o;return r=this.fetch(),o=this.context.getOpt("searchKey"),r=this.context.callbacks("filter").call(this.context,e,r,o)||[],n=this.context.callbacks("remoteFilter"),r.length>0||!n&&0===r.length?t(r):n.call(this.context,e,t)},t.prototype.fetch=function(){return this.storage.data(this.at)||[]},t.prototype.save=function(e){return this.storage.data(this.at,this.context.callbacks("beforeSave").call(this.context,e||[]))},t.prototype.load=function(e){return!this.saved()&&e?this._load(e):void 0},t.prototype.reload=function(e){return this._load(e)},t.prototype._load=function(t){return"string"==typeof t?e.ajax(t,{dataType:"json"}).done(function(e){return function(t){return e.save(t)}}(this)):this.save(t)},t}();var p;p=function(){function t(t){this.context=t,this.$el=e("
        "),this.$elUl=this.$el.children(),this.timeoutID=null,this.context.$el.append(this.$el),this.bindEvent()}return t.prototype.init=function(){var e,t;return t=this.context.getOpt("alias")||this.context.at.charCodeAt(0),e=this.context.getOpt("headerTpl"),e&&1===this.$el.children().length&&this.$el.prepend(e),this.$el.attr({id:"at-view-"+t})},t.prototype.destroy=function(){return this.$el.remove()},t.prototype.bindEvent=function(){var t,n,r;return t=this.$el.find("ul"),n=0,r=0,t.on("mousemove.atwho-view","li",function(o){return function(o){var i;if((n!==o.clientX||r!==o.clientY)&&(n=o.clientX,r=o.clientY,i=e(o.currentTarget),!i.hasClass("cur")))return t.find(".cur").removeClass("cur"),i.addClass("cur")}}(this)).on("click.atwho-view","li",function(n){return function(r){return t.find(".cur").removeClass("cur"),e(r.currentTarget).addClass("cur"),n.choose(r),r.preventDefault()}}(this))},t.prototype.visible=function(){return e.expr.filters.visible(this.$el[0])},t.prototype.highlighted=function(){return this.$el.find(".cur").length>0},t.prototype.choose=function(e){var t,n;return(t=this.$el.find(".cur")).length&&(n=this.context.insertContentFor(t),this.context._stopDelayedCall(),this.context.insert(this.context.callbacks("beforeInsert").call(this.context,n,t,e),t),this.context.trigger("inserted",[t,e]),this.hide(e)),this.context.getOpt("hideWithoutSuffix")?this.stopShowing=!0:void 0},t.prototype.reposition=function(t){var n,r,o,i;return n=this.context.app.iframeAsRoot?this.context.app.window:window,t.bottom+this.$el.height()-e(n).scrollTop()>e(n).height()&&(t.bottom=t.top-this.$el.height()),t.left>(o=e(n).width()-this.$el.width()-5)&&(t.left=o),r={left:t.left,top:t.bottom},null!=(i=this.context.callbacks("beforeReposition"))&&i.call(this.context,r),this.$el.offset(r),this.context.trigger("reposition",[r])},t.prototype.next=function(){var e,t,n,r;return e=this.$el.find(".cur").removeClass("cur"),t=e.next(),t.length||(t=this.$el.find("li:first")),t.addClass("cur"),n=t[0],r=n.offsetTop+n.offsetHeight+(n.nextSibling?n.nextSibling.offsetHeight:0),this.scrollTop(Math.max(0,r-this.$el.height()))},t.prototype.prev=function(){var e,t,n,r;return e=this.$el.find(".cur").removeClass("cur"),n=e.prev(),n.length||(n=this.$el.find("li:last")),n.addClass("cur"),r=n[0],t=r.offsetTop+r.offsetHeight+(r.nextSibling?r.nextSibling.offsetHeight:0),this.scrollTop(Math.max(0,t-this.$el.height()))},t.prototype.scrollTop=function(e){var t;return t=this.context.getOpt("scrollDuration"),t?this.$elUl.animate({scrollTop:e},t):this.$elUl.scrollTop(e)},t.prototype.show=function(){var e;return this.stopShowing?void(this.stopShowing=!1):(this.visible()||(this.$el.show(),this.$el.scrollTop(0),this.context.trigger("shown")),(e=this.context.rect())?this.reposition(e):void 0)},t.prototype.hide=function(e,t){var n;if(this.visible())return isNaN(t)?(this.$el.hide(),this.context.trigger("hidden",[e])):(n=function(e){return function(){return e.hide()}}(this),clearTimeout(this.timeoutID),this.timeoutID=setTimeout(n,t))},t.prototype.render=function(t){var n,r,o,i,a,s,u;if(!(e.isArray(t)&&t.length>0))return void this.hide();for(this.$el.find("ul").empty(),r=this.$el.find("ul"),u=this.context.getOpt("displayTpl"),o=0,a=t.length;a>o;o++)i=t[o],i=e.extend({},i,{"atwho-at":this.context.at}),s=this.context.callbacks("tplEval").call(this.context,u,i,"onDisplay"),n=e(this.context.callbacks("highlighter").call(this.context,s,this.context.query.text)),n.data("item-data",i),r.append(n);return this.show(),this.context.getOpt("highlightFirst")?r.find("li:first").addClass("cur"):void 0},t}();var d;d={load:function(e,t){var n;return(n=this.controller(e))?n.model.load(t):void 0},isSelecting:function(){var e;return!!(null!=(e=this.controller())?e.view.visible():void 0)},hide:function(){var e;return null!=(e=this.controller())?e.view.hide():void 0},reposition:function(){var e;return(e=this.controller())?e.view.reposition(e.rect()):void 0},setIframe:function(e,t){return this.setupRootElement(e,t),null},run:function(){return this.dispatch()},destroy:function(){return this.shutdown(),this.$inputor.data("atwho",null)}},e.fn.atwho=function(t){var n,o;return n=arguments,o=null,this.filter('textarea, input, [contenteditable=""], [contenteditable=true]').each(function(){var i,a;return(a=(i=e(this)).data("atwho"))||i.data("atwho",a=new r(this)),"object"!=typeof t&&t?d[t]&&a?o=d[t].apply(a,Array.prototype.slice.call(n,1)):e.error("Method "+t+" does not exist on jQuery.atwho"):a.reg(t.at,t)}),null!=o?o:this},e.fn.atwho["default"]={at:void 0,alias:void 0,data:null,displayTpl:"
      • ${name}
      • ",insertTpl:"${atwho-at}${name}",headerTpl:null,callbacks:t,searchKey:"name",suffix:void 0,hideWithoutSuffix:!1,startWithSpace:!0,acceptSpaceBar:!1,highlightFirst:!0,limit:5,maxLen:20,minLen:0,displayTimeout:300,delay:null,spaceSelectsMatch:!1,tabSelectsMatch:!0,editableAtwhoQueryAttrs:{},scrollDuration:150,suspendOnComposing:!0,lookUpOnClick:!0},e.fn.atwho.debug=!1})},{jquery:38}],3:[function(e,t,n){+function(e){"use strict";function t(t){return this.each(function(){var r=e(this),o=r.data("bs.affix"),i="object"==typeof t&&t;o||r.data("bs.affix",o=new n(this,i)),"string"==typeof t&&o[t]()})}var n=function(t,r){this.options=e.extend({},n.DEFAULTS,r),this.$target=e(this.options.target).on("scroll.bs.affix.data-api",e.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",e.proxy(this.checkPositionWithEventLoop,this)),this.$element=e(t),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};n.VERSION="3.3.7",n.RESET="affix affix-top affix-bottom",n.DEFAULTS={offset:0,target:window},n.prototype.getState=function(e,t,n,r){var o=this.$target.scrollTop(),i=this.$element.offset(),a=this.$target.height();if(null!=n&&"top"==this.affixed)return o=e-r&&"bottom"},n.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(n.RESET).addClass("affix");var e=this.$target.scrollTop(),t=this.$element.offset();return this.pinnedOffset=t.top-e},n.prototype.checkPositionWithEventLoop=function(){setTimeout(e.proxy(this.checkPosition,this),1)},n.prototype.checkPosition=function(){if(this.$element.is(":visible")){var t=this.$element.height(),r=this.options.offset,o=r.top,i=r.bottom,a=Math.max(e(document).height(),e(document.body).height());"object"!=typeof r&&(i=o=r),"function"==typeof o&&(o=r.top(this.$element)),"function"==typeof i&&(i=r.bottom(this.$element));var s=this.getState(a,t,o,i);if(this.affixed!=s){null!=this.unpin&&this.$element.css("top","");var u="affix"+(s?"-"+s:""),l=e.Event(u+".bs.affix");if(this.$element.trigger(l),l.isDefaultPrevented())return;this.affixed=s,this.unpin="bottom"==s?this.getPinnedOffset():null,this.$element.removeClass(n.RESET).addClass(u).trigger(u.replace("affix","affixed")+".bs.affix")}"bottom"==s&&this.$element.offset({top:a-t-i})}};var r=e.fn.affix;e.fn.affix=t,e.fn.affix.Constructor=n,e.fn.affix.noConflict=function(){return e.fn.affix=r,this},e(window).on("load",function(){e('[data-spy="affix"]').each(function(){var n=e(this),r=n.data();r.offset=r.offset||{},null!=r.offsetBottom&&(r.offset.bottom=r.offsetBottom),null!=r.offsetTop&&(r.offset.top=r.offsetTop),t.call(n,r)})})}(jQuery)},{}],4:[function(e,t,n){+function(e){"use strict";function t(t){var n=t.attr("data-target");n||(n=t.attr("href"),n=n&&/#[A-Za-z]/.test(n)&&n.replace(/.*(?=#[^\s]*$)/,""));var r=n&&e(n);return r&&r.length?r:t.parent()}function n(n){n&&3===n.which||(e(o).remove(),e(i).each(function(){var r=e(this),o=t(r),i={relatedTarget:this};o.hasClass("open")&&(n&&"click"==n.type&&/input|textarea/i.test(n.target.tagName)&&e.contains(o[0],n.target)||(o.trigger(n=e.Event("hide.bs.dropdown",i)),n.isDefaultPrevented()||(r.attr("aria-expanded","false"),o.removeClass("open").trigger(e.Event("hidden.bs.dropdown",i)))))}))}function r(t){return this.each(function(){var n=e(this),r=n.data("bs.dropdown");r||n.data("bs.dropdown",r=new a(this)),"string"==typeof t&&r[t].call(n)})}var o=".dropdown-backdrop",i='[data-toggle="dropdown"]',a=function(t){e(t).on("click.bs.dropdown",this.toggle)};a.VERSION="3.3.7",a.prototype.toggle=function(r){var o=e(this);if(!o.is(".disabled, :disabled")){var i=t(o),a=i.hasClass("open");if(n(),!a){"ontouchstart"in document.documentElement&&!i.closest(".navbar-nav").length&&e(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(e(this)).on("click",n);var s={relatedTarget:this};if(i.trigger(r=e.Event("show.bs.dropdown",s)),r.isDefaultPrevented())return;o.trigger("focus").attr("aria-expanded","true"),i.toggleClass("open").trigger(e.Event("shown.bs.dropdown",s))}return!1}},a.prototype.keydown=function(n){if(/(38|40|27|32)/.test(n.which)&&!/input|textarea/i.test(n.target.tagName)){var r=e(this);if(n.preventDefault(),n.stopPropagation(),!r.is(".disabled, :disabled")){var o=t(r),a=o.hasClass("open");if(!a&&27!=n.which||a&&27==n.which)return 27==n.which&&o.find(i).trigger("focus"),r.trigger("click");var s=" li:not(.disabled):visible a",u=o.find(".dropdown-menu"+s);if(u.length){var l=u.index(n.target);38==n.which&&l>0&&l--,40==n.which&&ldocument.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&e?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!e?this.scrollbarWidth:""})},n.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},n.prototype.checkScrollbar=function(){var e=window.innerWidth;if(!e){var t=document.documentElement.getBoundingClientRect();e=t.right-Math.abs(t.left)}this.bodyIsOverflowing=document.body.clientWidth1)for(var n=1;n=e&&l&&(s=!0,n()))}}var a=0,s=!1,u=!1,l=!1,c=void 0;i()}n.__esModule=!0;var o=Array.prototype.slice;n.loopAsync=r},{}],16:[function(e,t,n){(function(t){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e){return l+e}function i(e,n){try{null==n?window.sessionStorage.removeItem(o(e)):window.sessionStorage.setItem(o(e),JSON.stringify(n))}catch(r){ +if(r.name===p)return void("production"!==t.env.NODE_ENV?u["default"](!1,"[history] Unable to save state; sessionStorage is not available due to security settings"):void 0);if(c.indexOf(r.name)>=0&&0===window.sessionStorage.length)return void("production"!==t.env.NODE_ENV?u["default"](!1,"[history] Unable to save state; sessionStorage is not available in Safari private mode"):void 0);throw r}}function a(e){var n=void 0;try{n=window.sessionStorage.getItem(o(e))}catch(r){if(r.name===p)return"production"!==t.env.NODE_ENV?u["default"](!1,"[history] Unable to read state; sessionStorage is not available due to security settings"):void 0,null}if(n)try{return JSON.parse(n)}catch(r){}return null}n.__esModule=!0,n.saveState=i,n.readState=a;var s=e("warning"),u=r(s),l="@@History/",c=["QuotaExceededError","QUOTA_EXCEEDED_ERR"],p="SecurityError"}).call(this,e("_process"))},{_process:7,warning:36}],17:[function(e,t,n){"use strict";function r(e,t,n){e.addEventListener?e.addEventListener(t,n,!1):e.attachEvent("on"+t,n)}function o(e,t,n){e.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent("on"+t,n)}function i(){return window.location.href.split("#")[1]||""}function a(e){window.location.replace(window.location.pathname+window.location.search+"#"+e)}function s(){return window.location.pathname+window.location.search+window.location.hash}function u(e){e&&window.history.go(e)}function l(e,t){t(window.confirm(e))}function c(){var e=navigator.userAgent;return(e.indexOf("Android 2.")===-1&&e.indexOf("Android 4.0")===-1||e.indexOf("Mobile Safari")===-1||e.indexOf("Chrome")!==-1||e.indexOf("Windows Phone")!==-1)&&(window.history&&"pushState"in window.history)}function p(){var e=navigator.userAgent;return e.indexOf("Firefox")===-1}n.__esModule=!0,n.addEventListener=r,n.removeEventListener=o,n.getHashPath=i,n.replaceHashPath=a,n.getWindowPath=s,n.go=u,n.getUserConfirmation=l,n.supportsHistory=c,n.supportsGoWithoutReloadUsingHash=p},{}],18:[function(e,t,n){"use strict";n.__esModule=!0;var r=!("undefined"==typeof window||!window.document||!window.document.createElement);n.canUseDOM=r},{}],19:[function(e,t,n){(function(t){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function o(e){var t=e.match(/^https?:\/\/[^\/]*/);return null==t?e:e.substring(t[0].length)}function i(e){var n=o(e),r="",i="";"production"!==t.env.NODE_ENV?s["default"](e===n,'A path must be pathname + search + hash only, not a fully qualified URL like "%s"',e):void 0;var a=n.indexOf("#");a!==-1&&(i=n.substring(a),n=n.substring(0,a));var u=n.indexOf("?");return u!==-1&&(r=n.substring(u),n=n.substring(0,u)),""===n&&(n="/"),{pathname:n,search:r,hash:i}}n.__esModule=!0,n.extractPath=o,n.parsePath=i;var a=e("warning"),s=r(a)}).call(this,e("_process"))},{_process:7,warning:36}],20:[function(e,t,n){(function(r){"use strict";function o(e){return e&&e.__esModule?e:{"default":e}}function i(){function e(e){try{e=e||window.history.state||{}}catch(t){e={}}var n=d.getWindowPath(),r=e,o=r.key,i=void 0;o?i=f.readState(o):(i=null,o=w.createKey(),y&&window.history.replaceState(a({},e,{key:o}),null));var s=c.parsePath(n);return w.createLocation(a({},s,{state:i}),void 0,o)}function t(t){function n(t){void 0!==t.state&&r(e(t.state))}var r=t.transitionTo;return d.addEventListener(window,"popstate",n),function(){d.removeEventListener(window,"popstate",n)}}function n(e){var t=e.basename,n=e.pathname,r=e.search,o=e.hash,i=e.state,a=e.action,s=e.key;if(a!==l.POP){f.saveState(s,i);var u=(t||"")+n+r+o,c={key:s};if(a===l.PUSH){if(b)return window.location.href=u,!1;window.history.pushState(c,null,u)}else{if(b)return window.location.replace(u),!1;window.history.replaceState(c,null,u)}}}function o(e){1===++_&&(x=t(w));var n=w.listenBefore(e);return function(){n(),0===--_&&x()}}function i(e){1===++_&&(x=t(w));var n=w.listen(e);return function(){n(),0===--_&&x()}}function s(e){1===++_&&(x=t(w)),w.registerTransitionHook(e)}function h(e){w.unregisterTransitionHook(e),0===--_&&x()}var g=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];p.canUseDOM?void 0:"production"!==r.env.NODE_ENV?u["default"](!1,"Browser history needs a DOM"):u["default"](!1);var v=g.forceRefresh,y=d.supportsHistory(),b=!y||v,w=m["default"](a({},g,{getCurrentLocation:e,finishTransition:n,saveState:f.saveState})),_=0,x=void 0;return a({},w,{listenBefore:o,listen:i,registerTransitionHook:s,unregisterTransitionHook:h})}n.__esModule=!0;var a=Object.assign||function(e){for(var t=1;t=0&&t=0&&y= 0 and < %s, was %s",v.length,y):p["default"](!1);var b=i(v);return h}n.__esModule=!0;var s=Object.assign||function(e){for(var t=1;t is deprecated and will be removed in the next major release. The semantics of are subtly different from basename. Please pass the basename explicitly in the options to createHistory"):void 0)}C=!0}}function n(e){return t(),x&&null==e.basename&&(0===e.pathname.indexOf(x)?(e.pathname=e.pathname.substring(x.length),e.basename=x,""===e.pathname&&(e.pathname="/")):e.basename=""),e}function o(e){if(t(),!x)return e;"string"==typeof e&&(e=c.parsePath(e));var n=e.pathname,r="/"===x.slice(-1)?x:x+"/",o="/"===n.charAt(0)?n.slice(1):n,i=r+o;return a({},e,{pathname:i})}function i(e){return _.listenBefore(function(t,r){d["default"](e,n(t),r)})}function s(e){return _.listen(function(t){e(n(t))})}function p(e){_.push(o(e))}function f(e){_.replace(o(e))}function m(e){return _.createPath(o(e))}function g(e){return _.createHref(o(e))}function v(e){for(var t=arguments.length,r=Array(t>1?t-1:0),i=1;i1?r-1:0),i=1;i0&&"number"!=typeof e[0]))}function i(e,t,n){var i,c;if(r(e)||r(t))return!1;if(e.prototype!==t.prototype)return!1;if(u(e))return!!u(t)&&(e=a.call(e),t=a.call(t),l(e,t,n));if(o(e)){if(!o(t))return!1;if(e.length!==t.length)return!1;for(i=0;i=0;i--)if(p[i]!=d[i])return!1;for(i=p.length-1;i>=0;i--)if(c=p[i],!l(e[c],t[c],n))return!1;return typeof e==typeof t}var a=Array.prototype.slice,s=e("./lib/keys.js"),u=e("./lib/is_arguments.js"),l=t.exports=function(e,t,n){return n||(n={}),e===t||(e instanceof Date&&t instanceof Date?e.getTime()===t.getTime():!e||!t||"object"!=typeof e&&"object"!=typeof t?n.strict?e===t:e==t:i(e,t,n))}},{"./lib/is_arguments.js":31,"./lib/keys.js":32}],31:[function(e,t,n){function r(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function o(e){return e&&"object"==typeof e&&"number"==typeof e.length&&Object.prototype.hasOwnProperty.call(e,"callee")&&!Object.prototype.propertyIsEnumerable.call(e,"callee")||!1}var i="[object Arguments]"==function(){return Object.prototype.toString.call(arguments)}();n=t.exports=i?r:o,n.supported=r,n.unsupported=o},{}],32:[function(e,t,n){function r(e){var t=[];for(var n in e)t.push(n);return t}n=t.exports="function"==typeof Object.keys?Object.keys:r,n.shim=r},{}],33:[function(e,t,n){"use strict";var r=function(e,t,n,r,o,i,a,s){if(!e){var u;if(void 0===t)u=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var l=[n,r,o,i,a,s],c=0;u=new Error(t.replace(/%s/g,function(){return l[c++]})),u.name="Invariant Violation"}throw u.framesToPop=1,u}};t.exports=r},{}],34:[function(e,t,n){"use strict";var r=e("strict-uri-encode");n.extract=function(e){return e.split("?")[1]||""},n.parse=function(e){return"string"!=typeof e?{}:(e=e.trim().replace(/^(\?|#|&)/,""),e?e.split("&").reduce(function(e,t){var n=t.replace(/\+/g," ").split("="),r=n.shift(),o=n.length>0?n.join("="):void 0;return r=decodeURIComponent(r),o=void 0===o?null:decodeURIComponent(o),e.hasOwnProperty(r)?Array.isArray(e[r])?e[r].push(o):e[r]=[e[r],o]:e[r]=o,e},{}):{})},n.stringify=function(e){return e?Object.keys(e).sort().map(function(t){var n=e[t];return void 0===n?"":null===n?t:Array.isArray(n)?n.slice().sort().map(function(e){return r(t)+"="+r(e)}).join("&"):r(t)+"="+r(n)}).filter(function(e){return e.length>0}).join("&"):""}},{"strict-uri-encode":35}],35:[function(e,t,n){"use strict";t.exports=function(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})}},{}],36:[function(e,t,n){"use strict";var r=function(){};t.exports=r},{}],37:[function(e,t,n){!function(r,o){"function"==typeof define&&define.amd?define(["jquery"],function(e){return r.returnExportsGlobal=o(e)}):"object"==typeof n?t.exports=o(e("jquery")):o(jQuery)}(this,function(e){"use strict";var t,n,r,o,i,a,s,u,l,c,p;c="caret",t=function(){function t(e){this.$inputor=e,this.domInputor=this.$inputor[0]}return t.prototype.setPos=function(e){var t,n,r,o;return(o=l.getSelection())&&(r=0,n=!1,(t=function(e,i){var a,u,l,c,p,d;for(p=i.childNodes,d=[],l=0,c=p.length;c>l&&(a=p[l],!n);l++)if(3===a.nodeType){if(r+a.length>=e){n=!0,u=s.createRange(),u.setStart(a,e-r),o.removeAllRanges(),o.addRange(u);break}d.push(r+=a.length)}else d.push(t(e,a));return d})(e,this.domInputor)),this.domInputor},t.prototype.getIEPosition=function(){return this.getPosition()},t.prototype.getPosition=function(){var e,t;return t=this.getOffset(),e=this.$inputor.offset(),t.left-=e.left,t.top-=e.top,t},t.prototype.getOldIEPos=function(){var e,t;return t=s.selection.createRange(),e=s.body.createTextRange(),e.moveToElementText(this.domInputor),e.setEndPoint("EndToEnd",t),e.text.length},t.prototype.getPos=function(){var e,t,n;return(n=this.range())?(e=n.cloneRange(),e.selectNodeContents(this.domInputor),e.setEnd(n.endContainer,n.endOffset),t=e.toString().length,e.detach(),t):s.selection?this.getOldIEPos():void 0},t.prototype.getOldIEOffset=function(){var e,t;return e=s.selection.createRange().duplicate(),e.moveStart("character",-1),t=e.getBoundingClientRect(),{height:t.bottom-t.top,left:t.left,top:t.top}},t.prototype.getOffset=function(){var t,n,r,o,i;return l.getSelection&&(r=this.range())?(r.endOffset-1>0&&r.endContainer!==this.domInputor&&(t=r.cloneRange(),t.setStart(r.endContainer,r.endOffset-1),t.setEnd(r.endContainer,r.endOffset),o=t.getBoundingClientRect(),n={height:o.height,left:o.left+o.width,top:o.top},t.detach()),n&&0!==(null!=n?n.height:void 0)||(t=r.cloneRange(),i=e(s.createTextNode("|")),t.insertNode(i[0]),t.selectNode(i[0]),o=t.getBoundingClientRect(),n={height:o.height,left:o.left,top:o.top},i.remove(),t.detach())):s.selection&&(n=this.getOldIEOffset()),n&&(n.top+=e(l).scrollTop(),n.left+=e(l).scrollLeft()),n},t.prototype.range=function(){var e;if(l.getSelection)return e=l.getSelection(),e.rangeCount>0?e.getRangeAt(0):null},t}(),n=function(){function t(e){this.$inputor=e,this.domInputor=this.$inputor[0]}return t.prototype.getIEPos=function(){var e,t,n,r,o,i,a;return t=this.domInputor,i=s.selection.createRange(),o=0,i&&i.parentElement()===t&&(r=t.value.replace(/\r\n/g,"\n"),n=r.length,a=t.createTextRange(),a.moveToBookmark(i.getBookmark()),e=t.createTextRange(),e.collapse(!1),o=a.compareEndPoints("StartToEnd",e)>-1?n:-a.moveStart("character",-n)),o},t.prototype.getPos=function(){return s.selection?this.getIEPos():this.domInputor.selectionStart},t.prototype.setPos=function(e){var t,n;return t=this.domInputor,s.selection?(n=t.createTextRange(),n.move("character",e),n.select()):t.setSelectionRange&&t.setSelectionRange(e,e),t},t.prototype.getIEOffset=function(e){var t,n,r,o;return n=this.domInputor.createTextRange(),e||(e=this.getPos()),n.move("character",e),r=n.boundingLeft,o=n.boundingTop,t=n.boundingHeight,{left:r,top:o,height:t}},t.prototype.getOffset=function(t){var n,r,o;return n=this.$inputor,s.selection?(r=this.getIEOffset(t),r.top+=e(l).scrollTop()+n.scrollTop(),r.left+=e(l).scrollLeft()+n.scrollLeft(),r):(r=n.offset(),o=this.getPosition(t),r={left:r.left+o.left-n.scrollLeft(),top:r.top+o.top-n.scrollTop(),height:o.height})},t.prototype.getPosition=function(e){var t,n,o,i,a,s,u;return t=this.$inputor,i=function(e){return e=e.replace(/<|>|`|"|&/g,"?").replace(/\r\n|\r|\n/g,"
        "),/firefox/i.test(navigator.userAgent)&&(e=e.replace(/\s/g," ")),e},void 0===e&&(e=this.getPos()),u=t.val().slice(0,e),o=t.val().slice(e),a=""+i(u)+"",a+="|",a+=""+i(o)+"",s=new r(t),n=s.create(a).rect()},t.prototype.getIEPosition=function(e){var t,n,r,o,i;return r=this.getIEOffset(e),n=this.$inputor.offset(),o=r.left-n.left,i=r.top-n.top,t=r.height,{left:o,top:i,height:t}},t}(),r=function(){function t(e){this.$inputor=e}return t.prototype.css_attr=["borderBottomWidth","borderLeftWidth","borderRightWidth","borderTopStyle","borderRightStyle","borderBottomStyle","borderLeftStyle","borderTopWidth","boxSizing","fontFamily","fontSize","fontWeight","height","letterSpacing","lineHeight","marginBottom","marginLeft","marginRight","marginTop","outlineWidth","overflow","overflowX","overflowY","paddingBottom","paddingLeft","paddingRight","paddingTop","textAlign","textOverflow","textTransform","whiteSpace","wordBreak","wordWrap"],t.prototype.mirrorCss=function(){var t,n=this;return t={position:"absolute",left:-9999,top:0,zIndex:-2e4},"TEXTAREA"===this.$inputor.prop("tagName")&&this.css_attr.push("width"),e.each(this.css_attr,function(e,r){return t[r]=n.$inputor.css(r)}),t},t.prototype.create=function(t){return this.$mirror=e("
        "),this.$mirror.css(this.mirrorCss()),this.$mirror.html(t),this.$inputor.after(this.$mirror),this},t.prototype.rect=function(){var e,t,n;return e=this.$mirror.find("#caret"),t=e.position(),n={left:t.left,top:t.top,height:e.height()},this.$mirror.remove(),n},t}(),o={contentEditable:function(e){return!(!e[0].contentEditable||"true"!==e[0].contentEditable)}},a={pos:function(e){return e||0===e?this.setPos(e):this.getPos()},position:function(e){return s.selection?this.getIEPosition(e):this.getPosition(e)},offset:function(e){var t;return t=this.getOffset(e)}},s=null,l=null,u=null,p=function(e){var t;return(t=null!=e?e.iframe:void 0)?(u=t,l=t.contentWindow,s=t.contentDocument||l.document):(u=void 0,l=window,s=document)},i=function(e){var t;s=e[0].ownerDocument,l=s.defaultView||s.parentWindow;try{return u=l.frameElement}catch(n){t=n}},e.fn.caret=function(r,i,s){var u;return a[r]?(e.isPlainObject(i)?(p(i),i=void 0):p(s),u=o.contentEditable(this)?new t(this):new n(this),a[r].apply(u,[i])):e.error("Method "+r+" does not exist on jQuery.caret")},e.fn.caret.EditableCaret=t,e.fn.caret.InputCaret=n,e.fn.caret.Utils=o,e.fn.caret.apis=a})},{jquery:38}],38:[function(e,t,n){!function(e,n){"object"==typeof t&&"object"==typeof t.exports?t.exports=e.document?n(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return n(e)}:n(e)}("undefined"!=typeof window?window:this,function(e,t){function n(e){var t=!!e&&"length"in e&&e.length,n=ie.type(e);return"function"!==n&&!ie.isWindow(e)&&("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e)}function r(e,t,n){if(ie.isFunction(t))return ie.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return ie.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(me.test(t))return ie.filter(t,e,n);t=ie.filter(t,e)}return ie.grep(e,function(e){return J.call(t,e)>-1!==n})}function o(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function i(e){var t={};return ie.each(e.match(_e)||[],function(e,n){t[n]=!0}),t}function a(){ +G.removeEventListener("DOMContentLoaded",a),e.removeEventListener("load",a),ie.ready()}function s(){this.expando=ie.expando+s.uid++}function u(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(Re,"-$&").toLowerCase(),n=e.getAttribute(r),"string"==typeof n){try{n="true"===n||"false"!==n&&("null"===n?null:+n+""===n?+n:ke.test(n)?ie.parseJSON(n):n)}catch(o){}Te.set(e,t,n)}else n=void 0;return n}function l(e,t,n,r){var o,i=1,a=20,s=r?function(){return r.cur()}:function(){return ie.css(e,t,"")},u=s(),l=n&&n[3]||(ie.cssNumber[t]?"":"px"),c=(ie.cssNumber[t]||"px"!==l&&+u)&&Pe.exec(ie.css(e,t));if(c&&c[3]!==l){l=l||c[3],n=n||[],c=+u||1;do i=i||".5",c/=i,ie.style(e,t,c+l);while(i!==(i=s()/u)&&1!==i&&--a)}return n&&(c=+c||+u||0,o=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=o)),o}function c(e,t){var n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[];return void 0===t||t&&ie.nodeName(e,t)?ie.merge([e],n):n}function p(e,t){for(var n=0,r=e.length;n-1)o&&o.push(i);else if(l=ie.contains(i.ownerDocument,i),a=c(f.appendChild(i),"script"),l&&p(a),n)for(d=0;i=a[d++];)Ae.test(i.type||"")&&n.push(i);return f}function f(){return!0}function h(){return!1}function m(){try{return G.activeElement}catch(e){}}function g(e,t,n,r,o,i){var a,s;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(s in t)g(e,s,n,r,t[s],i);return e}if(null==r&&null==o?(o=n,r=n=void 0):null==o&&("string"==typeof n?(o=r,r=void 0):(o=r,r=n,n=void 0)),o===!1)o=h;else if(!o)return e;return 1===i&&(a=o,o=function(e){return ie().off(e),a.apply(this,arguments)},o.guid=a.guid||(a.guid=ie.guid++)),e.each(function(){ie.event.add(this,t,o,r,n)})}function v(e,t){return ie.nodeName(e,"table")&&ie.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function y(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function b(e){var t=$e.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function w(e,t){var n,r,o,i,a,s,u,l;if(1===t.nodeType){if(Se.hasData(e)&&(i=Se.access(e),a=Se.set(t,i),l=i.events)){delete a.handle,a.events={};for(o in l)for(n=0,r=l[o].length;n1&&"string"==typeof m&&!re.checkClone&&qe.test(m))return e.each(function(o){var i=e.eq(o);g&&(t[0]=m.call(this,o,i.html())),x(i,t,n,r)});if(f&&(o=d(t,e[0].ownerDocument,!1,e,r),i=o.firstChild,1===o.childNodes.length&&(o=i),i||r)){for(a=ie.map(c(o,"script"),y),s=a.length;p")).appendTo(t.documentElement),t=ze[0].contentDocument,t.write(),t.close(),n=E(e,t),ze.detach()),Ye[e]=n),n}function T(e,t,n){var r,o,i,a,s=e.style;return n=n||Ke(e),a=n?n.getPropertyValue(t)||n[t]:void 0,""!==a&&void 0!==a||ie.contains(e.ownerDocument,e)||(a=ie.style(e,t)),n&&!re.pixelMarginRight()&&Ge.test(a)&&Ze.test(t)&&(r=s.width,o=s.minWidth,i=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=o,s.maxWidth=i),void 0!==a?a+"":a}function k(e,t){return{get:function(){return e()?void delete this.get:(this.get=t).apply(this,arguments)}}}function R(e){if(e in rt)return e;for(var t=e[0].toUpperCase()+e.slice(1),n=nt.length;n--;)if(e=nt[n]+t,e in rt)return e}function M(e,t,n){var r=Pe.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function P(e,t,n,r,o){for(var i=n===(r?"border":"content")?4:"width"===t?1:0,a=0;i<4;i+=2)"margin"===n&&(a+=ie.css(e,n+Oe[i],!0,o)),r?("content"===n&&(a-=ie.css(e,"padding"+Oe[i],!0,o)),"margin"!==n&&(a-=ie.css(e,"border"+Oe[i]+"Width",!0,o))):(a+=ie.css(e,"padding"+Oe[i],!0,o),"padding"!==n&&(a+=ie.css(e,"border"+Oe[i]+"Width",!0,o)));return a}function O(e,t,n){var r=!0,o="width"===t?e.offsetWidth:e.offsetHeight,i=Ke(e),a="border-box"===ie.css(e,"boxSizing",!1,i);if(o<=0||null==o){if(o=T(e,t,i),(o<0||null==o)&&(o=e.style[t]),Ge.test(o))return o;r=a&&(re.boxSizingReliable()||o===e.style[t]),o=parseFloat(o)||0}return o+P(e,t,n||(a?"border":"content"),r,i)+"px"}function D(e,t){for(var n,r,o,i=[],a=0,s=e.length;a=0&&n=0},isPlainObject:function(e){var t;if("object"!==ie.type(e)||e.nodeType||ie.isWindow(e))return!1;if(e.constructor&&!ne.call(e,"constructor")&&!ne.call(e.constructor.prototype||{},"isPrototypeOf"))return!1;for(t in e);return void 0===t||ne.call(e,t)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?ee[te.call(e)]||"object":typeof e},globalEval:function(e){var t,n=eval;e=ie.trim(e),e&&(1===e.indexOf("use strict")?(t=G.createElement("script"),t.text=e,G.head.appendChild(t).parentNode.removeChild(t)):n(e))},camelCase:function(e){return e.replace(se,"ms-").replace(ue,le)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t){var r,o=0;if(n(e))for(r=e.length;ox.cacheLength&&delete e[t.shift()],e[n+" "]=r}var t=[];return e}function r(e){return e[F]=!0,e}function o(e){var t=D.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function i(e,t){for(var n=e.split("|"),r=n.length;r--;)x.attrHandle[n[r]]=t}function a(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||Y)-(~e.sourceIndex||Y);if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function s(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function u(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function l(e){return r(function(t){return t=+t,r(function(n,r){for(var o,i=e([],n.length,t),a=i.length;a--;)n[o=i[a]]&&(n[o]=!(r[o]=n[o]))})})}function c(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function p(){}function d(e){for(var t=0,n=e.length,r="";t1?function(t,n,r){for(var o=e.length;o--;)if(!e[o](t,n,r))return!1;return!0}:e[0]}function m(e,n,r){for(var o=0,i=n.length;o-1&&(r[l]=!(a[l]=p))}}else b=g(b===a?b.splice(h,b.length):b),i?i(null,a,b,u):X.apply(a,b)})}function y(e){for(var t,n,r,o=e.length,i=x.relative[e[0].type],a=i||x.relative[" "],s=i?1:0,u=f(function(e){return e===t},a,!0),l=f(function(e){return ee(t,e)>-1},a,!0),c=[function(e,n,r){var o=!i&&(r||n!==R)||((t=n).nodeType?u(e,n,r):l(e,n,r));return t=null,o}];s1&&h(c),s>1&&d(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(se,"$1"),n,s0,i=e.length>0,a=function(r,a,s,u,l){var c,p,d,f=0,h="0",m=r&&[],v=[],y=R,b=r||i&&x.find.TAG("*",l),w=W+=null==y?1:Math.random()||.1,_=b.length;for(l&&(R=a===D||a||l);h!==_&&null!=(c=b[h]);h++){if(i&&c){for(p=0,a||c.ownerDocument===D||(O(c),s=!I);d=e[p++];)if(d(c,a||D,s)){u.push(c);break}l&&(W=w)}o&&((c=!d&&c)&&f--,r&&m.push(c))}if(f+=h,o&&h!==f){for(p=0;d=n[p++];)d(m,v,a,s);if(r){if(f>0)for(;h--;)m[h]||v[h]||(v[h]=K.call(u));v=g(v)}X.apply(u,v),l&&!r&&v.length>0&&f+n.length>1&&t.uniqueSort(u)}return l&&(W=w,R=y),m};return o?r(a):a}var w,_,x,C,E,S,T,k,R,M,P,O,D,N,I,A,j,L,U,F="sizzle"+1*new Date,H=e.document,W=0,B=0,q=n(),$=n(),V=n(),z=function(e,t){return e===t&&(P=!0),0},Y=1<<31,Z={}.hasOwnProperty,G=[],K=G.pop,Q=G.push,X=G.push,J=G.slice,ee=function(e,t){for(var n=0,r=e.length;n+~]|"+ne+")"+ne+"*"),ce=new RegExp("="+ne+"*([^\\]'\"]*?)"+ne+"*\\]","g"),pe=new RegExp(ie),de=new RegExp("^"+re+"$"),fe={ID:new RegExp("^#("+re+")"),CLASS:new RegExp("^\\.("+re+")"),TAG:new RegExp("^("+re+"|[*])"),ATTR:new RegExp("^"+oe),PSEUDO:new RegExp("^"+ie),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ne+"*(even|odd|(([+-]|)(\\d*)n|)"+ne+"*(?:([+-]|)"+ne+"*(\\d+)|))"+ne+"*\\)|)","i"),bool:new RegExp("^(?:"+te+")$","i"),needsContext:new RegExp("^"+ne+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ne+"*((?:-\\d)?\\d*)"+ne+"*\\)|)(?=[^-]|$)","i")},he=/^(?:input|select|textarea|button)$/i,me=/^h\d$/i,ge=/^[^{]+\{\s*\[native \w/,ve=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ye=/[+~]/,be=/'|\\/g,we=new RegExp("\\\\([\\da-f]{1,6}"+ne+"?|("+ne+")|.)","ig"),_e=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},xe=function(){O()};try{X.apply(G=J.call(H.childNodes),H.childNodes),G[H.childNodes.length].nodeType}catch(Ce){X={apply:G.length?function(e,t){Q.apply(e,J.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}_=t.support={},E=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},O=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:H;return r!==D&&9===r.nodeType&&r.documentElement?(D=r,N=D.documentElement,I=!E(D),(n=D.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",xe,!1):n.attachEvent&&n.attachEvent("onunload",xe)),_.attributes=o(function(e){return e.className="i",!e.getAttribute("className")}),_.getElementsByTagName=o(function(e){return e.appendChild(D.createComment("")),!e.getElementsByTagName("*").length}),_.getElementsByClassName=ge.test(D.getElementsByClassName),_.getById=o(function(e){return N.appendChild(e).id=F,!D.getElementsByName||!D.getElementsByName(F).length}),_.getById?(x.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&I){var n=t.getElementById(e);return n?[n]:[]}},x.filter.ID=function(e){var t=e.replace(we,_e);return function(e){return e.getAttribute("id")===t}}):(delete x.find.ID,x.filter.ID=function(e){var t=e.replace(we,_e);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}}),x.find.TAG=_.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):_.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],o=0,i=t.getElementsByTagName(e);if("*"===e){for(;n=i[o++];)1===n.nodeType&&r.push(n);return r}return i},x.find.CLASS=_.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&I)return t.getElementsByClassName(e)},j=[],A=[],(_.qsa=ge.test(D.querySelectorAll))&&(o(function(e){N.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&A.push("[*^$]="+ne+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||A.push("\\["+ne+"*(?:value|"+te+")"),e.querySelectorAll("[id~="+F+"-]").length||A.push("~="),e.querySelectorAll(":checked").length||A.push(":checked"),e.querySelectorAll("a#"+F+"+*").length||A.push(".#.+[+~]")}),o(function(e){var t=D.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&A.push("name"+ne+"*[*^$|!~]?="),e.querySelectorAll(":enabled").length||A.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),A.push(",.*:")})),(_.matchesSelector=ge.test(L=N.matches||N.webkitMatchesSelector||N.mozMatchesSelector||N.oMatchesSelector||N.msMatchesSelector))&&o(function(e){_.disconnectedMatch=L.call(e,"div"),L.call(e,"[s!='']:x"),j.push("!=",ie)}),A=A.length&&new RegExp(A.join("|")),j=j.length&&new RegExp(j.join("|")),t=ge.test(N.compareDocumentPosition),U=t||ge.test(N.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},z=t?function(e,t){if(e===t)return P=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n?n:(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&n||!_.sortDetached&&t.compareDocumentPosition(e)===n?e===D||e.ownerDocument===H&&U(H,e)?-1:t===D||t.ownerDocument===H&&U(H,t)?1:M?ee(M,e)-ee(M,t):0:4&n?-1:1)}:function(e,t){if(e===t)return P=!0,0;var n,r=0,o=e.parentNode,i=t.parentNode,s=[e],u=[t];if(!o||!i)return e===D?-1:t===D?1:o?-1:i?1:M?ee(M,e)-ee(M,t):0;if(o===i)return a(e,t);for(n=e;n=n.parentNode;)s.unshift(n);for(n=t;n=n.parentNode;)u.unshift(n);for(;s[r]===u[r];)r++;return r?a(s[r],u[r]):s[r]===H?-1:u[r]===H?1:0},D):D},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==D&&O(e),n=n.replace(ce,"='$1']"),_.matchesSelector&&I&&!V[n+" "]&&(!j||!j.test(n))&&(!A||!A.test(n)))try{var r=L.call(e,n);if(r||_.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(o){}return t(n,D,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==D&&O(e),U(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==D&&O(e);var n=x.attrHandle[t.toLowerCase()],r=n&&Z.call(x.attrHandle,t.toLowerCase())?n(e,t,!I):void 0;return void 0!==r?r:_.attributes||!I?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,n=[],r=0,o=0;if(P=!_.detectDuplicates,M=!_.sortStable&&e.slice(0),e.sort(z),P){for(;t=e[o++];)t===e[o]&&(r=n.push(o));for(;r--;)e.splice(n[r],1)}return M=null,e},C=t.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=C(e)}else if(3===o||4===o)return e.nodeValue}else for(;t=e[r++];)n+=C(t);return n},x=t.selectors={cacheLength:50,createPseudo:r,match:fe,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(we,_e),e[3]=(e[3]||e[4]||e[5]||"").replace(we,_e),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return fe.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&pe.test(n)&&(t=S(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(we,_e).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=q[e+" "];return t||(t=new RegExp("(^|"+ne+")"+e+"("+ne+"|$)"))&&q(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(o){var i=t.attr(o,e);return null==i?"!="===n:!n||(i+="","="===n?i===r:"!="===n?i!==r:"^="===n?r&&0===i.indexOf(r):"*="===n?r&&i.indexOf(r)>-1:"$="===n?r&&i.slice(-r.length)===r:"~="===n?(" "+i.replace(ae," ")+" ").indexOf(r)>-1:"|="===n&&(i===r||i.slice(0,r.length+1)===r+"-"))}},CHILD:function(e,t,n,r,o){var i="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===o?function(e){return!!e.parentNode}:function(t,n,u){var l,c,p,d,f,h,m=i!==a?"nextSibling":"previousSibling",g=t.parentNode,v=s&&t.nodeName.toLowerCase(),y=!u&&!s,b=!1;if(g){if(i){for(;m;){for(d=t;d=d[m];)if(s?d.nodeName.toLowerCase()===v:1===d.nodeType)return!1;h=m="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?g.firstChild:g.lastChild],a&&y){for(d=g,p=d[F]||(d[F]={}),c=p[d.uniqueID]||(p[d.uniqueID]={}),l=c[e]||[],f=l[0]===W&&l[1],b=f&&l[2],d=f&&g.childNodes[f];d=++f&&d&&d[m]||(b=f=0)||h.pop();)if(1===d.nodeType&&++b&&d===t){c[e]=[W,f,b];break}}else if(y&&(d=t,p=d[F]||(d[F]={}),c=p[d.uniqueID]||(p[d.uniqueID]={}),l=c[e]||[],f=l[0]===W&&l[1],b=f),b===!1)for(;(d=++f&&d&&d[m]||(b=f=0)||h.pop())&&((s?d.nodeName.toLowerCase()!==v:1!==d.nodeType)||!++b||(y&&(p=d[F]||(d[F]={}),c=p[d.uniqueID]||(p[d.uniqueID]={}),c[e]=[W,b]),d!==t)););return b-=o,b===r||b%r===0&&b/r>=0}}},PSEUDO:function(e,n){var o,i=x.pseudos[e]||x.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return i[F]?i(n):i.length>1?(o=[e,e,"",n],x.setFilters.hasOwnProperty(e.toLowerCase())?r(function(e,t){for(var r,o=i(e,n),a=o.length;a--;)r=ee(e,o[a]),e[r]=!(t[r]=o[a])}):function(e){return i(e,0,o)}):i}},pseudos:{not:r(function(e){var t=[],n=[],o=T(e.replace(se,"$1"));return o[F]?r(function(e,t,n,r){for(var i,a=o(e,null,r,[]),s=e.length;s--;)(i=a[s])&&(e[s]=!(t[s]=i))}):function(e,r,i){return t[0]=e,o(t,null,i,n),t[0]=null,!n.pop()}}),has:r(function(e){return function(n){return t(e,n).length>0}}),contains:r(function(e){return e=e.replace(we,_e),function(t){return(t.textContent||t.innerText||C(t)).indexOf(e)>-1}}),lang:r(function(e){return de.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(we,_e).toLowerCase(),function(t){var n;do if(n=I?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===N},focus:function(e){return e===D.activeElement&&(!D.hasFocus||D.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!x.pseudos.empty(e)},header:function(e){return me.test(e.nodeName)},input:function(e){return he.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:l(function(){return[0]}),last:l(function(e,t){return[t-1]}),eq:l(function(e,t,n){return[n<0?n+t:n]}),even:l(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:l(function(e,t,n){for(var r=n<0?n+t:n;++r2&&"ID"===(a=i[0]).type&&_.getById&&9===t.nodeType&&I&&x.relative[i[1].type]){if(t=(x.find.ID(a.matches[0].replace(we,_e),t)||[])[0],!t)return n;l&&(t=t.parentNode),e=e.slice(i.shift().value.length)}for(o=fe.needsContext.test(e)?0:i.length;o--&&(a=i[o],!x.relative[s=a.type]);)if((u=x.find[s])&&(r=u(a.matches[0].replace(we,_e),ye.test(i[0].type)&&c(t.parentNode)||t))){if(i.splice(o,1),e=r.length&&d(i),!e)return X.apply(n,r),n;break}}return(l||T(e,p))(r,t,!I,n,!t||ye.test(e)&&c(t.parentNode)||t),n},_.sortStable=F.split("").sort(z).join("")===F,_.detectDuplicates=!!P,O(),_.sortDetached=o(function(e){return 1&e.compareDocumentPosition(D.createElement("div"))}),o(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||i("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),_.attributes&&o(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||i("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),o(function(e){return null==e.getAttribute("disabled")})||i(te,function(e,t,n){var r;if(!n)return e[t]===!0?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),t}(e);ie.find=ce,ie.expr=ce.selectors,ie.expr[":"]=ie.expr.pseudos,ie.uniqueSort=ie.unique=ce.uniqueSort,ie.text=ce.getText,ie.isXMLDoc=ce.isXML,ie.contains=ce.contains;var pe=function(e,t,n){for(var r=[],o=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(o&&ie(e).is(n))break;r.push(e)}return r},de=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},fe=ie.expr.match.needsContext,he=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,me=/^.[^:#\[\.,]*$/;ie.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?ie.find.matchesSelector(r,e)?[r]:[]:ie.find.matches(e,ie.grep(t,function(e){return 1===e.nodeType}))},ie.fn.extend({find:function(e){var t,n=this.length,r=[],o=this;if("string"!=typeof e)return this.pushStack(ie(e).filter(function(){for(t=0;t1?ie.unique(r):r),r.selector=this.selector?this.selector+" "+e:e,r},filter:function(e){return this.pushStack(r(this,e||[],!1))},not:function(e){return this.pushStack(r(this,e||[],!0))},is:function(e){return!!r(this,"string"==typeof e&&fe.test(e)?ie(e):e||[],!1).length}});var ge,ve=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,ye=ie.fn.init=function(e,t,n){var r,o;if(!e)return this;if(n=n||ge,"string"==typeof e){if(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:ve.exec(e),!r||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof ie?t[0]:t,ie.merge(this,ie.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:G,!0)),he.test(r[1])&&ie.isPlainObject(t))for(r in t)ie.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return o=G.getElementById(r[2]),o&&o.parentNode&&(this.length=1,this[0]=o),this.context=G,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):ie.isFunction(e)?void 0!==n.ready?n.ready(e):e(ie):(void 0!==e.selector&&(this.selector=e.selector,this.context=e.context),ie.makeArray(e,this))};ye.prototype=ie.fn,ge=ie(G);var be=/^(?:parents|prev(?:Until|All))/,we={children:!0,contents:!0,next:!0,prev:!0};ie.fn.extend({has:function(e){var t=ie(e,this),n=t.length;return this.filter(function(){for(var e=0;e-1:1===n.nodeType&&ie.find.matchesSelector(n,e))){i.push(n);break}return this.pushStack(i.length>1?ie.uniqueSort(i):i)},index:function(e){return e?"string"==typeof e?J.call(ie(e),this[0]):J.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(ie.uniqueSort(ie.merge(this.get(),ie(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),ie.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return pe(e,"parentNode")},parentsUntil:function(e,t,n){return pe(e,"parentNode",n)},next:function(e){return o(e,"nextSibling")},prev:function(e){return o(e,"previousSibling")},nextAll:function(e){return pe(e,"nextSibling")},prevAll:function(e){return pe(e,"previousSibling")},nextUntil:function(e,t,n){return pe(e,"nextSibling",n)},prevUntil:function(e,t,n){return pe(e,"previousSibling",n)},siblings:function(e){return de((e.parentNode||{}).firstChild,e)},children:function(e){return de(e.firstChild)},contents:function(e){return e.contentDocument||ie.merge([],e.childNodes)}},function(e,t){ie.fn[e]=function(n,r){var o=ie.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(o=ie.filter(r,o)),this.length>1&&(we[e]||ie.uniqueSort(o),be.test(e)&&o.reverse()),this.pushStack(o)}});var _e=/\S+/g;ie.Callbacks=function(e){e="string"==typeof e?i(e):ie.extend({},e);var t,n,r,o,a=[],s=[],u=-1,l=function(){for(o=e.once,r=t=!0;s.length;u=-1)for(n=s.shift();++u-1;)a.splice(n,1),n<=u&&u--}),this},has:function(e){return e?ie.inArray(e,a)>-1:a.length>0},empty:function(){return a&&(a=[]),this},disable:function(){return o=s=[],a=n="",this},disabled:function(){return!a},lock:function(){return o=s=[],n||(a=n=""),this},locked:function(){return!!o},fireWith:function(e,n){return o||(n=n||[],n=[e,n.slice?n.slice():n],s.push(n),t||l()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},ie.extend({Deferred:function(e){var t=[["resolve","done",ie.Callbacks("once memory"),"resolved"],["reject","fail",ie.Callbacks("once memory"),"rejected"],["notify","progress",ie.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return o.done(arguments).fail(arguments),this},then:function(){var e=arguments;return ie.Deferred(function(n){ie.each(t,function(t,i){var a=ie.isFunction(e[t])&&e[t];o[i[1]](function(){var e=a&&a.apply(this,arguments);e&&ie.isFunction(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[i[0]+"With"](this===r?n.promise():this,a?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?ie.extend(e,r):r}},o={};return r.pipe=r.then,ie.each(t,function(e,i){var a=i[2],s=i[3];r[i[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),o[i[0]]=function(){return o[i[0]+"With"](this===o?r:this,arguments),this},o[i[0]+"With"]=a.fireWith}),r.promise(o),e&&e.call(o,o),o},when:function(e){var t,n,r,o=0,i=K.call(arguments),a=i.length,s=1!==a||e&&ie.isFunction(e.promise)?a:0,u=1===s?e:ie.Deferred(),l=function(e,n,r){return function(o){n[e]=this,r[e]=arguments.length>1?K.call(arguments):o,r===t?u.notifyWith(n,r):--s||u.resolveWith(n,r)}};if(a>1)for(t=new Array(a),n=new Array(a),r=new Array(a);o0||(xe.resolveWith(G,[ie]),ie.fn.triggerHandler&&(ie(G).triggerHandler("ready"),ie(G).off("ready"))))}}),ie.ready.promise=function(t){return xe||(xe=ie.Deferred(),"complete"===G.readyState||"loading"!==G.readyState&&!G.documentElement.doScroll?e.setTimeout(ie.ready):(G.addEventListener("DOMContentLoaded",a),e.addEventListener("load",a))),xe.promise(t)},ie.ready.promise();var Ce=function(e,t,n,r,o,i,a){var s=0,u=e.length,l=null==n;if("object"===ie.type(n)){o=!0;for(s in n)Ce(e,t,s,n[s],!0,i,a)}else if(void 0!==r&&(o=!0,ie.isFunction(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(ie(e),n)})),t))for(;s-1&&void 0!==n&&Te.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){Te.remove(this,e)})}}),ie.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Se.get(e,t),n&&(!r||ie.isArray(n)?r=Se.access(e,t,ie.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=ie.queue(e,t),r=n.length,o=n.shift(),i=ie._queueHooks(e,t),a=function(){ie.dequeue(e,t)};"inprogress"===o&&(o=n.shift(),r--),o&&("fx"===t&&n.unshift("inprogress"),delete i.stop,o.call(e,a,i)),!r&&i&&i.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Se.get(e,n)||Se.access(e,n,{empty:ie.Callbacks("once memory").add(function(){Se.remove(e,[t+"queue",n])})})}}),ie.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length",""],thead:[1,"","
        "],col:[2,"","
        "],tr:[2,"","
        "],td:[3,"","
        "],_default:[0,"",""]};je.optgroup=je.option,je.tbody=je.tfoot=je.colgroup=je.caption=je.thead,je.th=je.td;var Le=/<|&#?\w+;/;!function(){var e=G.createDocumentFragment(),t=e.appendChild(G.createElement("div")),n=G.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),t.appendChild(n),re.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="",re.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue}();var Ue=/^key/,Fe=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,He=/^([^.]*)(?:\.(.+)|)/;ie.event={global:{},add:function(e,t,n,r,o){var i,a,s,u,l,c,p,d,f,h,m,g=Se.get(e);if(g)for(n.handler&&(i=n,n=i.handler,o=i.selector),n.guid||(n.guid=ie.guid++),(u=g.events)||(u=g.events={}),(a=g.handle)||(a=g.handle=function(t){return"undefined"!=typeof ie&&ie.event.triggered!==t.type?ie.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(_e)||[""],l=t.length;l--;)s=He.exec(t[l])||[],f=m=s[1],h=(s[2]||"").split(".").sort(),f&&(p=ie.event.special[f]||{},f=(o?p.delegateType:p.bindType)||f,p=ie.event.special[f]||{},c=ie.extend({type:f,origType:m,data:r,handler:n,guid:n.guid,selector:o,needsContext:o&&ie.expr.match.needsContext.test(o),namespace:h.join(".")},i),(d=u[f])||(d=u[f]=[],d.delegateCount=0,p.setup&&p.setup.call(e,r,h,a)!==!1||e.addEventListener&&e.addEventListener(f,a)),p.add&&(p.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),o?d.splice(d.delegateCount++,0,c):d.push(c),ie.event.global[f]=!0)},remove:function(e,t,n,r,o){var i,a,s,u,l,c,p,d,f,h,m,g=Se.hasData(e)&&Se.get(e);if(g&&(u=g.events)){for(t=(t||"").match(_e)||[""],l=t.length;l--;)if(s=He.exec(t[l])||[],f=m=s[1],h=(s[2]||"").split(".").sort(),f){for(p=ie.event.special[f]||{},f=(r?p.delegateType:p.bindType)||f,d=u[f]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=i=d.length;i--;)c=d[i],!o&&m!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(d.splice(i,1),c.selector&&d.delegateCount--,p.remove&&p.remove.call(e,c));a&&!d.length&&(p.teardown&&p.teardown.call(e,h,g.handle)!==!1||ie.removeEvent(e,f,g.handle),delete u[f])}else for(f in u)ie.event.remove(e,f+t[l],n,r,!0);ie.isEmptyObject(u)&&Se.remove(e,"handle events")}},dispatch:function(e){e=ie.event.fix(e);var t,n,r,o,i,a=[],s=K.call(arguments),u=(Se.get(this,"events")||{})[e.type]||[],l=ie.event.special[e.type]||{};if(s[0]=e,e.delegateTarget=this,!l.preDispatch||l.preDispatch.call(this,e)!==!1){for(a=ie.event.handlers.call(this,e,u),t=0;(o=a[t++])&&!e.isPropagationStopped();)for(e.currentTarget=o.elem,n=0;(i=o.handlers[n++])&&!e.isImmediatePropagationStopped();)e.rnamespace&&!e.rnamespace.test(i.namespace)||(e.handleObj=i,e.data=i.data,r=((ie.event.special[i.origType]||{}).handle||i.handler).apply(o.elem,s),void 0!==r&&(e.result=r)===!1&&(e.preventDefault(),e.stopPropagation()));return l.postDispatch&&l.postDispatch.call(this,e),e.result}},handlers:function(e,t){var n,r,o,i,a=[],s=t.delegateCount,u=e.target;if(s&&u.nodeType&&("click"!==e.type||isNaN(e.button)||e.button<1))for(;u!==this;u=u.parentNode||this)if(1===u.nodeType&&(u.disabled!==!0||"click"!==e.type)){for(r=[],n=0;n-1:ie.find(o,this,null,[u]).length),r[o]&&r.push(i);r.length&&a.push({elem:u,handlers:r})}return s]*)\/>/gi,Be=/\s*$/g;ie.extend({htmlPrefilter:function(e){return e.replace(We,"<$1>")},clone:function(e,t,n){var r,o,i,a,s=e.cloneNode(!0),u=ie.contains(e.ownerDocument,e);if(!(re.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||ie.isXMLDoc(e)))for(a=c(s),i=c(e),r=0,o=i.length;r0&&p(a,!u&&c(e,"script")),s},cleanData:function(e){for(var t,n,r,o=ie.event.special,i=0;void 0!==(n=e[i]);i++)if(Ee(n)){if(t=n[Se.expando]){if(t.events)for(r in t.events)o[r]?ie.event.remove(n,r):ie.removeEvent(n,r,t.handle);n[Se.expando]=void 0}n[Te.expando]&&(n[Te.expando]=void 0)}}}),ie.fn.extend({domManip:x,detach:function(e){return C(this,e,!0)},remove:function(e){return C(this,e)},text:function(e){return Ce(this,function(e){return void 0===e?ie.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return x(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=v(this,e);t.appendChild(e)}})},prepend:function(){return x(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=v(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return x(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return x(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(ie.cleanData(c(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return ie.clone(this,e,t)})},html:function(e){return Ce(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Be.test(e)&&!je[(Ie.exec(e)||["",""])[1].toLowerCase()]){e=ie.htmlPrefilter(e);try{for(;n1)},show:function(){return D(this,!0)},hide:function(){return D(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){De(this)?ie(this).show():ie(this).hide()})}}),ie.Tween=N,N.prototype={constructor:N,init:function(e,t,n,r,o,i){this.elem=e,this.prop=n,this.easing=o||ie.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=i||(ie.cssNumber[n]?"":"px")},cur:function(){var e=N.propHooks[this.prop];return e&&e.get?e.get(this):N.propHooks._default.get(this)},run:function(e){var t,n=N.propHooks[this.prop];return this.options.duration?this.pos=t=ie.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):N.propHooks._default.set(this),this}},N.prototype.init.prototype=N.prototype,N.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=ie.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){ie.fx.step[e.prop]?ie.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[ie.cssProps[e.prop]]&&!ie.cssHooks[e.prop]?e.elem[e.prop]=e.now:ie.style(e.elem,e.prop,e.now+e.unit)}}},N.propHooks.scrollTop=N.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},ie.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},ie.fx=N.prototype.init,ie.fx.step={};var ot,it,at=/^(?:toggle|show|hide)$/,st=/queueHooks$/;ie.Animation=ie.extend(F,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return l(n.elem,e,Pe.exec(t),n),n}]},tweener:function(e,t){ie.isFunction(e)?(t=e,e=["*"]):e=e.match(_e);for(var n,r=0,o=e.length;r1)},removeAttr:function(e){return this.each(function(){ +ie.removeAttr(this,e)})}}),ie.extend({attr:function(e,t,n){var r,o,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return"undefined"==typeof e.getAttribute?ie.prop(e,t,n):(1===i&&ie.isXMLDoc(e)||(t=t.toLowerCase(),o=ie.attrHooks[t]||(ie.expr.match.bool.test(t)?ut:void 0)),void 0!==n?null===n?void ie.removeAttr(e,t):o&&"set"in o&&void 0!==(r=o.set(e,n,t))?r:(e.setAttribute(t,n+""),n):o&&"get"in o&&null!==(r=o.get(e,t))?r:(r=ie.find.attr(e,t),null==r?void 0:r))},attrHooks:{type:{set:function(e,t){if(!re.radioValue&&"radio"===t&&ie.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r,o=0,i=t&&t.match(_e);if(i&&1===e.nodeType)for(;n=i[o++];)r=ie.propFix[n]||n,ie.expr.match.bool.test(n)&&(e[r]=!1),e.removeAttribute(n)}}),ut={set:function(e,t,n){return t===!1?ie.removeAttr(e,n):e.setAttribute(n,n),n}},ie.each(ie.expr.match.bool.source.match(/\w+/g),function(e,t){var n=lt[t]||ie.find.attr;lt[t]=function(e,t,r){var o,i;return r||(i=lt[t],lt[t]=o,o=null!=n(e,t,r)?t.toLowerCase():null,lt[t]=i),o}});var ct=/^(?:input|select|textarea|button)$/i,pt=/^(?:a|area)$/i;ie.fn.extend({prop:function(e,t){return Ce(this,ie.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[ie.propFix[e]||e]})}}),ie.extend({prop:function(e,t,n){var r,o,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return 1===i&&ie.isXMLDoc(e)||(t=ie.propFix[t]||t,o=ie.propHooks[t]),void 0!==n?o&&"set"in o&&void 0!==(r=o.set(e,n,t))?r:e[t]=n:o&&"get"in o&&null!==(r=o.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=ie.find.attr(e,"tabindex");return t?parseInt(t,10):ct.test(e.nodeName)||pt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),re.optSelected||(ie.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),ie.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){ie.propFix[this.toLowerCase()]=this});var dt=/[\t\r\n\f]/g;ie.fn.extend({addClass:function(e){var t,n,r,o,i,a,s,u=0;if(ie.isFunction(e))return this.each(function(t){ie(this).addClass(e.call(this,t,H(this)))});if("string"==typeof e&&e)for(t=e.match(_e)||[];n=this[u++];)if(o=H(n),r=1===n.nodeType&&(" "+o+" ").replace(dt," ")){for(a=0;i=t[a++];)r.indexOf(" "+i+" ")<0&&(r+=i+" ");s=ie.trim(r),o!==s&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,o,i,a,s,u=0;if(ie.isFunction(e))return this.each(function(t){ie(this).removeClass(e.call(this,t,H(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof e&&e)for(t=e.match(_e)||[];n=this[u++];)if(o=H(n),r=1===n.nodeType&&(" "+o+" ").replace(dt," ")){for(a=0;i=t[a++];)for(;r.indexOf(" "+i+" ")>-1;)r=r.replace(" "+i+" "," ");s=ie.trim(r),o!==s&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):ie.isFunction(e)?this.each(function(n){ie(this).toggleClass(e.call(this,n,H(this),t),t)}):this.each(function(){var t,r,o,i;if("string"===n)for(r=0,o=ie(this),i=e.match(_e)||[];t=i[r++];)o.hasClass(t)?o.removeClass(t):o.addClass(t);else void 0!==e&&"boolean"!==n||(t=H(this),t&&Se.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||e===!1?"":Se.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+H(n)+" ").replace(dt," ").indexOf(t)>-1)return!0;return!1}});var ft=/\r/g,ht=/[\x20\t\r\n\f]+/g;ie.fn.extend({val:function(e){var t,n,r,o=this[0];{if(arguments.length)return r=ie.isFunction(e),this.each(function(n){var o;1===this.nodeType&&(o=r?e.call(this,n,ie(this).val()):e,null==o?o="":"number"==typeof o?o+="":ie.isArray(o)&&(o=ie.map(o,function(e){return null==e?"":e+""})),t=ie.valHooks[this.type]||ie.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,o,"value")||(this.value=o))});if(o)return t=ie.valHooks[o.type]||ie.valHooks[o.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(n=t.get(o,"value"))?n:(n=o.value,"string"==typeof n?n.replace(ft,""):null==n?"":n)}}}),ie.extend({valHooks:{option:{get:function(e){var t=ie.find.attr(e,"value");return null!=t?t:ie.trim(ie.text(e)).replace(ht," ")}},select:{get:function(e){for(var t,n,r=e.options,o=e.selectedIndex,i="select-one"===e.type||o<0,a=i?null:[],s=i?o+1:r.length,u=o<0?s:i?o:0;u-1)&&(n=!0);return n||(e.selectedIndex=-1),i}}}}),ie.each(["radio","checkbox"],function(){ie.valHooks[this]={set:function(e,t){if(ie.isArray(t))return e.checked=ie.inArray(ie(e).val(),t)>-1}},re.checkOn||(ie.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var mt=/^(?:focusinfocus|focusoutblur)$/;ie.extend(ie.event,{trigger:function(t,n,r,o){var i,a,s,u,l,c,p,d=[r||G],f=ne.call(t,"type")?t.type:t,h=ne.call(t,"namespace")?t.namespace.split("."):[];if(a=s=r=r||G,3!==r.nodeType&&8!==r.nodeType&&!mt.test(f+ie.event.triggered)&&(f.indexOf(".")>-1&&(h=f.split("."),f=h.shift(),h.sort()),l=f.indexOf(":")<0&&"on"+f,t=t[ie.expando]?t:new ie.Event(f,"object"==typeof t&&t),t.isTrigger=o?2:3,t.namespace=h.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:ie.makeArray(n,[t]),p=ie.event.special[f]||{},o||!p.trigger||p.trigger.apply(r,n)!==!1)){if(!o&&!p.noBubble&&!ie.isWindow(r)){for(u=p.delegateType||f,mt.test(u+f)||(a=a.parentNode);a;a=a.parentNode)d.push(a),s=a;s===(r.ownerDocument||G)&&d.push(s.defaultView||s.parentWindow||e)}for(i=0;(a=d[i++])&&!t.isPropagationStopped();)t.type=i>1?u:p.bindType||f,c=(Se.get(a,"events")||{})[t.type]&&Se.get(a,"handle"),c&&c.apply(a,n),c=l&&a[l],c&&c.apply&&Ee(a)&&(t.result=c.apply(a,n),t.result===!1&&t.preventDefault());return t.type=f,o||t.isDefaultPrevented()||p._default&&p._default.apply(d.pop(),n)!==!1||!Ee(r)||l&&ie.isFunction(r[f])&&!ie.isWindow(r)&&(s=r[l],s&&(r[l]=null),ie.event.triggered=f,r[f](),ie.event.triggered=void 0,s&&(r[l]=s)),t.result}},simulate:function(e,t,n){var r=ie.extend(new ie.Event,n,{type:e,isSimulated:!0});ie.event.trigger(r,null,t)}}),ie.fn.extend({trigger:function(e,t){return this.each(function(){ie.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return ie.event.trigger(e,t,n,!0)}}),ie.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(e,t){ie.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),ie.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),re.focusin="onfocusin"in e,re.focusin||ie.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){ie.event.simulate(t,e.target,ie.event.fix(e))};ie.event.special[t]={setup:function(){var r=this.ownerDocument||this,o=Se.access(r,t);o||r.addEventListener(e,n,!0),Se.access(r,t,(o||0)+1)},teardown:function(){var r=this.ownerDocument||this,o=Se.access(r,t)-1;o?Se.access(r,t,o):(r.removeEventListener(e,n,!0),Se.remove(r,t))}}});var gt=e.location,vt=ie.now(),yt=/\?/;ie.parseJSON=function(e){return JSON.parse(e+"")},ie.parseXML=function(t){var n;if(!t||"string"!=typeof t)return null;try{n=(new e.DOMParser).parseFromString(t,"text/xml")}catch(r){n=void 0}return n&&!n.getElementsByTagName("parsererror").length||ie.error("Invalid XML: "+t),n};var bt=/#.*$/,wt=/([?&])_=[^&]*/,_t=/^(.*?):[ \t]*([^\r\n]*)$/gm,xt=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Ct=/^(?:GET|HEAD)$/,Et=/^\/\//,St={},Tt={},kt="*/".concat("*"),Rt=G.createElement("a");Rt.href=gt.href,ie.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:gt.href,type:"GET",isLocal:xt.test(gt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":kt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":ie.parseJSON,"text xml":ie.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?q(q(e,ie.ajaxSettings),t):q(ie.ajaxSettings,e)},ajaxPrefilter:W(St),ajaxTransport:W(Tt),ajax:function(t,n){function r(t,n,r,s){var l,p,y,b,_,C=n;2!==w&&(w=2,u&&e.clearTimeout(u),o=void 0,a=s||"",x.readyState=t>0?4:0,l=t>=200&&t<300||304===t,r&&(b=$(d,x,r)),b=V(d,b,x,l),l?(d.ifModified&&(_=x.getResponseHeader("Last-Modified"),_&&(ie.lastModified[i]=_),_=x.getResponseHeader("etag"),_&&(ie.etag[i]=_)),204===t||"HEAD"===d.type?C="nocontent":304===t?C="notmodified":(C=b.state,p=b.data,y=b.error,l=!y)):(y=C,!t&&C||(C="error",t<0&&(t=0))),x.status=t,x.statusText=(n||C)+"",l?m.resolveWith(f,[p,C,x]):m.rejectWith(f,[x,C,y]),x.statusCode(v),v=void 0,c&&h.trigger(l?"ajaxSuccess":"ajaxError",[x,d,l?p:y]),g.fireWith(f,[x,C]),c&&(h.trigger("ajaxComplete",[x,d]),--ie.active||ie.event.trigger("ajaxStop")))}"object"==typeof t&&(n=t,t=void 0),n=n||{};var o,i,a,s,u,l,c,p,d=ie.ajaxSetup({},n),f=d.context||d,h=d.context&&(f.nodeType||f.jquery)?ie(f):ie.event,m=ie.Deferred(),g=ie.Callbacks("once memory"),v=d.statusCode||{},y={},b={},w=0,_="canceled",x={readyState:0,getResponseHeader:function(e){var t;if(2===w){if(!s)for(s={};t=_t.exec(a);)s[t[1].toLowerCase()]=t[2];t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===w?a:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return w||(e=b[n]=b[n]||e,y[e]=t),this},overrideMimeType:function(e){return w||(d.mimeType=e),this},statusCode:function(e){var t;if(e)if(w<2)for(t in e)v[t]=[v[t],e[t]];else x.always(e[x.status]);return this},abort:function(e){var t=e||_;return o&&o.abort(t),r(0,t),this}};if(m.promise(x).complete=g.add,x.success=x.done,x.error=x.fail,d.url=((t||d.url||gt.href)+"").replace(bt,"").replace(Et,gt.protocol+"//"),d.type=n.method||n.type||d.method||d.type,d.dataTypes=ie.trim(d.dataType||"*").toLowerCase().match(_e)||[""],null==d.crossDomain){l=G.createElement("a");try{l.href=d.url,l.href=l.href,d.crossDomain=Rt.protocol+"//"+Rt.host!=l.protocol+"//"+l.host}catch(C){d.crossDomain=!0}}if(d.data&&d.processData&&"string"!=typeof d.data&&(d.data=ie.param(d.data,d.traditional)),B(St,d,n,x),2===w)return x;c=ie.event&&d.global,c&&0===ie.active++&&ie.event.trigger("ajaxStart"),d.type=d.type.toUpperCase(),d.hasContent=!Ct.test(d.type),i=d.url,d.hasContent||(d.data&&(i=d.url+=(yt.test(i)?"&":"?")+d.data,delete d.data),d.cache===!1&&(d.url=wt.test(i)?i.replace(wt,"$1_="+vt++):i+(yt.test(i)?"&":"?")+"_="+vt++)),d.ifModified&&(ie.lastModified[i]&&x.setRequestHeader("If-Modified-Since",ie.lastModified[i]),ie.etag[i]&&x.setRequestHeader("If-None-Match",ie.etag[i])),(d.data&&d.hasContent&&d.contentType!==!1||n.contentType)&&x.setRequestHeader("Content-Type",d.contentType),x.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+("*"!==d.dataTypes[0]?", "+kt+"; q=0.01":""):d.accepts["*"]);for(p in d.headers)x.setRequestHeader(p,d.headers[p]);if(d.beforeSend&&(d.beforeSend.call(f,x,d)===!1||2===w))return x.abort();_="abort";for(p in{success:1,error:1,complete:1})x[p](d[p]);if(o=B(Tt,d,n,x)){if(x.readyState=1,c&&h.trigger("ajaxSend",[x,d]),2===w)return x;d.async&&d.timeout>0&&(u=e.setTimeout(function(){x.abort("timeout")},d.timeout));try{w=1,o.send(y,r)}catch(C){if(!(w<2))throw C;r(-1,C)}}else r(-1,"No Transport");return x},getJSON:function(e,t,n){return ie.get(e,t,n,"json")},getScript:function(e,t){return ie.get(e,void 0,t,"script")}}),ie.each(["get","post"],function(e,t){ie[t]=function(e,n,r,o){return ie.isFunction(n)&&(o=o||r,r=n,n=void 0),ie.ajax(ie.extend({url:e,type:t,dataType:o,data:n,success:r},ie.isPlainObject(e)&&e))}}),ie._evalUrl=function(e){return ie.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},ie.fn.extend({wrapAll:function(e){var t;return ie.isFunction(e)?this.each(function(t){ie(this).wrapAll(e.call(this,t))}):(this[0]&&(t=ie(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this)},wrapInner:function(e){return ie.isFunction(e)?this.each(function(t){ie(this).wrapInner(e.call(this,t))}):this.each(function(){var t=ie(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=ie.isFunction(e);return this.each(function(n){ie(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){ie.nodeName(this,"body")||ie(this).replaceWith(this.childNodes)}).end()}}),ie.expr.filters.hidden=function(e){return!ie.expr.filters.visible(e)},ie.expr.filters.visible=function(e){return e.offsetWidth>0||e.offsetHeight>0||e.getClientRects().length>0};var Mt=/%20/g,Pt=/\[\]$/,Ot=/\r?\n/g,Dt=/^(?:submit|button|image|reset|file)$/i,Nt=/^(?:input|select|textarea|keygen)/i;ie.param=function(e,t){var n,r=[],o=function(e,t){t=ie.isFunction(t)?t():null==t?"":t,r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(void 0===t&&(t=ie.ajaxSettings&&ie.ajaxSettings.traditional),ie.isArray(e)||e.jquery&&!ie.isPlainObject(e))ie.each(e,function(){o(this.name,this.value)});else for(n in e)z(n,e[n],t,o);return r.join("&").replace(Mt,"+")},ie.fn.extend({serialize:function(){return ie.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=ie.prop(this,"elements");return e?ie.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!ie(this).is(":disabled")&&Nt.test(this.nodeName)&&!Dt.test(e)&&(this.checked||!Ne.test(e))}).map(function(e,t){var n=ie(this).val();return null==n?null:ie.isArray(n)?ie.map(n,function(e){return{name:t.name,value:e.replace(Ot,"\r\n")}}):{name:t.name,value:n.replace(Ot,"\r\n")}}).get()}}),ie.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(t){}};var It={0:200,1223:204},At=ie.ajaxSettings.xhr();re.cors=!!At&&"withCredentials"in At,re.ajax=At=!!At,ie.ajaxTransport(function(t){var n,r;if(re.cors||At&&!t.crossDomain)return{send:function(o,i){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||o["X-Requested-With"]||(o["X-Requested-With"]="XMLHttpRequest");for(a in o)s.setRequestHeader(a,o[a]);n=function(e){return function(){n&&(n=r=s.onload=s.onerror=s.onabort=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?i(0,"error"):i(s.status,s.statusText):i(It[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=n(),r=s.onerror=n("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&e.setTimeout(function(){n&&r()})},n=n("abort");try{s.send(t.hasContent&&t.data||null)}catch(u){if(n)throw u}},abort:function(){n&&n()}}}),ie.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return ie.globalEval(e),e}}}),ie.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),ie.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(r,o){t=ie("\", rE: !0, sL: [\"actionscript\", \"javascript\", \"handlebars\", \"xml\"] } }, { cN: \"meta\", v: [{ b: /<\\?xml/, e: /\\?>/, r: 10 }, { b: /<\\?\\w+/, e: /\\?>/ }] }, { cN: \"tag\", b: \"\", c: [{ cN: \"name\", b: /[^\\/><\\s]+/, r: 0 }, t] }] };\n});hljs.registerLanguage(\"markdown\", function (e) {\n return { aliases: [\"md\", \"mkdown\", \"mkd\"], c: [{ cN: \"section\", v: [{ b: \"^#{1,6}\", e: \"$\" }, { b: \"^.+?\\\\n[=-]{2,}$\" }] }, { b: \"<\", e: \">\", sL: \"xml\", r: 0 }, { cN: \"bullet\", b: \"^([*+-]|(\\\\d+\\\\.))\\\\s+\" }, { cN: \"strong\", b: \"[*_]{2}.+?[*_]{2}\" }, { cN: \"emphasis\", v: [{ b: \"\\\\*.+?\\\\*\" }, { b: \"_.+?_\", r: 0 }] }, { cN: \"quote\", b: \"^>\\\\s+\", e: \"$\" }, { cN: \"code\", v: [{ b: \"^```w*s*$\", e: \"^```s*$\" }, { b: \"`.+?`\" }, { b: \"^( {4}|\t)\", e: \"$\", r: 0 }] }, { b: \"^[-\\\\*]{3,}\", e: \"$\" }, { b: \"\\\\[.+?\\\\][\\\\(\\\\[].*?[\\\\)\\\\]]\", rB: !0, c: [{ cN: \"string\", b: \"\\\\[\", e: \"\\\\]\", eB: !0, rE: !0, r: 0 }, { cN: \"link\", b: \"\\\\]\\\\(\", e: \"\\\\)\", eB: !0, eE: !0 }, { cN: \"symbol\", b: \"\\\\]\\\\[\", e: \"\\\\]\", eB: !0, eE: !0 }], r: 10 }, { b: /^\\[[^\\n]+\\]:/, rB: !0, c: [{ cN: \"symbol\", b: /\\[/, e: /\\]/, eB: !0, eE: !0 }, { cN: \"link\", b: /:\\s*/, e: /$/, eB: !0 }] }] };\n});hljs.registerLanguage(\"ini\", function (e) {\n var b = { cN: \"string\", c: [e.BE], v: [{ b: \"'''\", e: \"'''\", r: 10 }, { b: '\"\"\"', e: '\"\"\"', r: 10 }, { b: '\"', e: '\"' }, { b: \"'\", e: \"'\" }] };return { aliases: [\"toml\"], cI: !0, i: /\\S/, c: [e.C(\";\", \"$\"), e.HCM, { cN: \"section\", b: /^\\s*\\[+/, e: /\\]+/ }, { b: /^[a-z0-9\\[\\]_-]+\\s*=\\s*/, e: \"$\", rB: !0, c: [{ cN: \"attr\", b: /[a-z0-9\\[\\]_-]+/ }, { b: /=/, eW: !0, r: 0, c: [{ cN: \"literal\", b: /\\bon|off|true|false|yes|no\\b/ }, { cN: \"variable\", v: [{ b: /\\$[\\w\\d\"][\\w\\d_]*/ }, { b: /\\$\\{(.*?)}/ }] }, b, { cN: \"number\", b: /([\\+\\-]+)?[\\d]+_[\\d_]+/ }, e.NM] }] }] };\n});hljs.registerLanguage(\"python\", function (e) {\n var r = { cN: \"meta\", b: /^(>>>|\\.\\.\\.) / },\n b = { cN: \"string\", c: [e.BE], v: [{ b: /(u|b)?r?'''/, e: /'''/, c: [r], r: 10 }, { b: /(u|b)?r?\"\"\"/, e: /\"\"\"/, c: [r], r: 10 }, { b: /(u|r|ur)'/, e: /'/, r: 10 }, { b: /(u|r|ur)\"/, e: /\"/, r: 10 }, { b: /(b|br)'/, e: /'/ }, { b: /(b|br)\"/, e: /\"/ }, e.ASM, e.QSM] },\n a = { cN: \"number\", r: 0, v: [{ b: e.BNR + \"[lLjJ]?\" }, { b: \"\\\\b(0o[0-7]+)[lLjJ]?\" }, { b: e.CNR + \"[lLjJ]?\" }] },\n l = { cN: \"params\", b: /\\(/, e: /\\)/, c: [\"self\", r, a, b] };return { aliases: [\"py\", \"gyp\"], k: { keyword: \"and elif is global as in if from raise for except finally print import pass return exec else break not with class assert yield try while continue del or def lambda async await nonlocal|10 None True False\", built_in: \"Ellipsis NotImplemented\" }, i: /(<\\/|->|\\?)|=>/, c: [r, a, b, e.HCM, { v: [{ cN: \"function\", bK: \"def\" }, { cN: \"class\", bK: \"class\" }], e: /:/, i: /[${=;\\n,]/, c: [e.UTM, l, { b: /->/, eW: !0, k: \"None\" }] }, { cN: \"meta\", b: /^[\\t ]*@/, e: /$/ }, { b: /\\b(print|exec)\\(/ }] };\n});hljs.registerLanguage(\"css\", function (e) {\n var c = \"[a-zA-Z-][a-zA-Z0-9_-]*\",\n t = { b: /[A-Z\\_\\.\\-]+\\s*:/, rB: !0, e: \";\", eW: !0, c: [{ cN: \"attribute\", b: /\\S/, e: \":\", eE: !0, starts: { eW: !0, eE: !0, c: [{ b: /[\\w-]+\\(/, rB: !0, c: [{ cN: \"built_in\", b: /[\\w-]+/ }, { b: /\\(/, e: /\\)/, c: [e.ASM, e.QSM] }] }, e.CSSNM, e.QSM, e.ASM, e.CBCM, { cN: \"number\", b: \"#[0-9A-Fa-f]+\" }, { cN: \"meta\", b: \"!important\" }] } }] };return { cI: !0, i: /[=\\/|'\\$]/, c: [e.CBCM, { cN: \"selector-id\", b: /#[A-Za-z0-9_-]+/ }, { cN: \"selector-class\", b: /\\.[A-Za-z0-9_-]+/ }, { cN: \"selector-attr\", b: /\\[/, e: /\\]/, i: \"$\" }, { cN: \"selector-pseudo\", b: /:(:)?[a-zA-Z0-9\\_\\-\\+\\(\\)\"'.]+/ }, { b: \"@(font-face|page)\", l: \"[a-z-]+\", k: \"font-face page\" }, { b: \"@\", e: \"[{;]\", i: /:/, c: [{ cN: \"keyword\", b: /\\w+/ }, { b: /\\s/, eW: !0, eE: !0, r: 0, c: [e.ASM, e.QSM, e.CSSNM] }] }, { cN: \"selector-tag\", b: c, r: 0 }, { b: \"{\", e: \"}\", i: /\\S/, c: [e.CBCM, t] }] };\n});hljs.registerLanguage(\"less\", function (e) {\n var r = \"[\\\\w-]+\",\n t = \"(\" + r + \"|@{\" + r + \"})\",\n a = [],\n c = [],\n s = function s(e) {\n return { cN: \"string\", b: \"~?\" + e + \".*?\" + e };\n },\n b = function b(e, r, t) {\n return { cN: e, b: r, r: t };\n },\n n = { b: \"\\\\(\", e: \"\\\\)\", c: c, r: 0 };c.push(e.CLCM, e.CBCM, s(\"'\"), s('\"'), e.CSSNM, { b: \"(url|data-uri)\\\\(\", starts: { cN: \"string\", e: \"[\\\\)\\\\n]\", eE: !0 } }, b(\"number\", \"#[0-9A-Fa-f]+\\\\b\"), n, b(\"variable\", \"@@?\" + r, 10), b(\"variable\", \"@{\" + r + \"}\"), b(\"built_in\", \"~?`[^`]*?`\"), { cN: \"attribute\", b: r + \"\\\\s*:\", e: \":\", rB: !0, eE: !0 }, { cN: \"meta\", b: \"!important\" });var i = c.concat({ b: \"{\", e: \"}\", c: a }),\n o = { bK: \"when\", eW: !0, c: [{ bK: \"and not\" }].concat(c) },\n u = { b: t + \"\\\\s*:\", rB: !0, e: \"[;}]\", r: 0, c: [{ cN: \"attribute\", b: t, e: \":\", eE: !0, starts: { eW: !0, i: \"[<=$]\", r: 0, c: c } }] },\n l = { cN: \"keyword\", b: \"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\\\b\", starts: { e: \"[;{}]\", rE: !0, c: c, r: 0 } },\n C = { cN: \"variable\", v: [{ b: \"@\" + r + \"\\\\s*:\", r: 15 }, { b: \"@\" + r }], starts: { e: \"[;}]\", rE: !0, c: i } },\n p = { v: [{ b: \"[\\\\.#:&\\\\[>]\", e: \"[;{}]\" }, { b: t, e: \"{\" }], rB: !0, rE: !0, i: \"[<='$\\\"]\", r: 0, c: [e.CLCM, e.CBCM, o, b(\"keyword\", \"all\\\\b\"), b(\"variable\", \"@{\" + r + \"}\"), b(\"selector-tag\", t + \"%?\", 0), b(\"selector-id\", \"#\" + t), b(\"selector-class\", \"\\\\.\" + t, 0), b(\"selector-tag\", \"&\", 0), { cN: \"selector-attr\", b: \"\\\\[\", e: \"\\\\]\" }, { cN: \"selector-pseudo\", b: /:(:)?[a-zA-Z0-9\\_\\-\\+\\(\\)\"'.]+/ }, { b: \"\\\\(\", e: \"\\\\)\", c: i }, { b: \"!important\" }] };return a.push(e.CLCM, e.CBCM, l, C, u, p), { cI: !0, i: \"[=>'/<($\\\"]\", c: a };\n});hljs.registerLanguage(\"scss\", function (e) {\n var t = \"[a-zA-Z-][a-zA-Z0-9_-]*\",\n i = { cN: \"variable\", b: \"(\\\\$\" + t + \")\\\\b\" },\n r = { cN: \"number\", b: \"#[0-9A-Fa-f]+\" };({ cN: \"attribute\", b: \"[A-Z\\\\_\\\\.\\\\-]+\", e: \":\", eE: !0, i: \"[^\\\\s]\", starts: { eW: !0, eE: !0, c: [r, e.CSSNM, e.QSM, e.ASM, e.CBCM, { cN: \"meta\", b: \"!important\" }] } });return { cI: !0, i: \"[=/|']\", c: [e.CLCM, e.CBCM, { cN: \"selector-id\", b: \"\\\\#[A-Za-z0-9_-]+\", r: 0 }, { cN: \"selector-class\", b: \"\\\\.[A-Za-z0-9_-]+\", r: 0 }, { cN: \"selector-attr\", b: \"\\\\[\", e: \"\\\\]\", i: \"$\" }, { cN: \"selector-tag\", b: \"\\\\b(a|abbr|acronym|address|area|article|aside|audio|b|base|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|div|dl|dt|em|embed|fieldset|figcaption|figure|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|map|mark|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|samp|script|section|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|ul|var|video)\\\\b\", r: 0 }, { b: \":(visited|valid|root|right|required|read-write|read-only|out-range|optional|only-of-type|only-child|nth-of-type|nth-last-of-type|nth-last-child|nth-child|not|link|left|last-of-type|last-child|lang|invalid|indeterminate|in-range|hover|focus|first-of-type|first-line|first-letter|first-child|first|enabled|empty|disabled|default|checked|before|after|active)\" }, { b: \"::(after|before|choices|first-letter|first-line|repeat-index|repeat-item|selection|value)\" }, i, { cN: \"attribute\", b: \"\\\\b(z-index|word-wrap|word-spacing|word-break|width|widows|white-space|visibility|vertical-align|unicode-bidi|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform-style|transform-origin|transform|top|text-underline-position|text-transform|text-shadow|text-rendering|text-overflow|text-indent|text-decoration-style|text-decoration-line|text-decoration-color|text-decoration|text-align-last|text-align|tab-size|table-layout|right|resize|quotes|position|pointer-events|perspective-origin|perspective|page-break-inside|page-break-before|page-break-after|padding-top|padding-right|padding-left|padding-bottom|padding|overflow-y|overflow-x|overflow-wrap|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|order|opacity|object-position|object-fit|normal|none|nav-up|nav-right|nav-left|nav-index|nav-down|min-width|min-height|max-width|max-height|mask|marks|margin-top|margin-right|margin-left|margin-bottom|margin|list-style-type|list-style-position|list-style-image|list-style|line-height|letter-spacing|left|justify-content|initial|inherit|ime-mode|image-orientation|image-resolution|image-rendering|icon|hyphens|height|font-weight|font-variant-ligatures|font-variant|font-style|font-stretch|font-size-adjust|font-size|font-language-override|font-kerning|font-feature-settings|font-family|font|float|flex-wrap|flex-shrink|flex-grow|flex-flow|flex-direction|flex-basis|flex|filter|empty-cells|display|direction|cursor|counter-reset|counter-increment|content|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|columns|color|clip-path|clip|clear|caption-side|break-inside|break-before|break-after|box-sizing|box-shadow|box-decoration-break|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-left-width|border-left-style|border-left-color|border-left|border-image-width|border-image-source|border-image-slice|border-image-repeat|border-image-outset|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-attachment|background-blend-mode|background|backface-visibility|auto|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation|align-self|align-items|align-content)\\\\b\", i: \"[^\\\\s]\" }, { b: \"\\\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\\\b\" }, { b: \":\", e: \";\", c: [i, r, e.CSSNM, e.QSM, e.ASM, { cN: \"meta\", b: \"!important\" }] }, { b: \"@\", e: \"[{;]\", k: \"mixin include extend for if else each while charset import debug media page content font-face namespace warn\", c: [i, e.QSM, e.ASM, r, e.CSSNM, { b: \"\\\\s[A-Za-z0-9_.-]+\", r: 0 }] }] };\n});hljs.registerLanguage(\"json\", function (e) {\n var i = { literal: \"true false null\" },\n n = [e.QSM, e.CNM],\n r = { e: \",\", eW: !0, eE: !0, c: n, k: i },\n t = { b: \"{\", e: \"}\", c: [{ cN: \"attr\", b: /\"/, e: /\"/, c: [e.BE], i: \"\\\\n\" }, e.inherit(r, { b: /:/ })], i: \"\\\\S\" },\n c = { b: \"\\\\[\", e: \"\\\\]\", c: [e.inherit(r)], i: \"\\\\S\" };return n.splice(n.length, 0, t, c), { c: n, k: i, i: \"\\\\S\" };\n});hljs.registerLanguage(\"javascript\", function (e) {\n var r = \"[A-Za-z$_][0-9A-Za-z$_]*\",\n t = { keyword: \"in of if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await static import from as\", literal: \"true false null undefined NaN Infinity\", built_in: \"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Promise\" },\n a = { cN: \"number\", v: [{ b: \"\\\\b(0[bB][01]+)\" }, { b: \"\\\\b(0[oO][0-7]+)\" }, { b: e.CNR }], r: 0 },\n n = { cN: \"subst\", b: \"\\\\$\\\\{\", e: \"\\\\}\", k: t, c: [] },\n c = { cN: \"string\", b: \"`\", e: \"`\", c: [e.BE, n] };n.c = [e.ASM, e.QSM, c, a, e.RM];var s = n.c.concat([e.CBCM, e.CLCM]);return { aliases: [\"js\", \"jsx\"], k: t, c: [{ cN: \"meta\", r: 10, b: /^\\s*['\"]use (strict|asm)['\"]/ }, { cN: \"meta\", b: /^#!/, e: /$/ }, e.ASM, e.QSM, c, e.CLCM, e.CBCM, a, { b: /[{,]\\s*/, r: 0, c: [{ b: r + \"\\\\s*:\", rB: !0, r: 0, c: [{ cN: \"attr\", b: r, r: 0 }] }] }, { b: \"(\" + e.RSR + \"|\\\\b(case|return|throw)\\\\b)\\\\s*\", k: \"return throw case\", c: [e.CLCM, e.CBCM, e.RM, { cN: \"function\", b: \"(\\\\(.*?\\\\)|\" + r + \")\\\\s*=>\", rB: !0, e: \"\\\\s*=>\", c: [{ cN: \"params\", v: [{ b: r }, { b: /\\(\\s*\\)/ }, { b: /\\(/, e: /\\)/, eB: !0, eE: !0, k: t, c: s }] }] }, { b: //, sL: \"xml\", c: [{ b: /<\\w+\\s*\\/>/, skip: !0 }, { b: /<\\w+/, e: /(\\/\\w+|\\w+\\/)>/, skip: !0, c: [{ b: /<\\w+\\s*\\/>/, skip: !0 }, \"self\"] }] }], r: 0 }, { cN: \"function\", bK: \"function\", e: /\\{/, eE: !0, c: [e.inherit(e.TM, { b: r }), { cN: \"params\", b: /\\(/, e: /\\)/, eB: !0, eE: !0, c: s }], i: /\\[|%/ }, { b: /\\$[(.]/ }, e.METHOD_GUARD, { cN: \"class\", bK: \"class\", e: /[{;=]/, eE: !0, i: /[:\"\\[\\]]/, c: [{ bK: \"extends\" }, e.UTM] }, { bK: \"constructor\", e: /\\{/, eE: !0 }], i: /#(?!!)/ };\n});hljs.registerLanguage(\"bash\", function (e) {\n var t = { cN: \"variable\", v: [{ b: /\\$[\\w\\d#@][\\w\\d_]*/ }, { b: /\\$\\{(.*?)}/ }] },\n s = { cN: \"string\", b: /\"/, e: /\"/, c: [e.BE, t, { cN: \"variable\", b: /\\$\\(/, e: /\\)/, c: [e.BE] }] },\n a = { cN: \"string\", b: /'/, e: /'/ };return { aliases: [\"sh\", \"zsh\"], l: /-?[a-z\\._]+/, k: { keyword: \"if then else elif fi for while in do done case esac function\", literal: \"true false\", built_in: \"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp\", _: \"-ne -eq -lt -gt -f -d -e -s -l -a\" }, c: [{ cN: \"meta\", b: /^#![^\\n]+sh\\s*$/, r: 10 }, { cN: \"function\", b: /\\w[\\w\\d_]*\\s*\\(\\s*\\)\\s*\\{/, rB: !0, c: [e.inherit(e.TM, { b: /\\w[\\w\\d_]*/ })], r: 0 }, e.HCM, s, a, t] };\n});\n\n},{}],2:[function(require,module,exports){\n!function(t,e){\"function\"==typeof define&&define.amd?define([\"jquery\"],function(t){return e(t)}):\"object\"==typeof exports?module.exports=e(require(\"jquery\")):e(jQuery)}(this,function(t){var e,i;i={ESC:27,TAB:9,ENTER:13,CTRL:17,A:65,P:80,N:78,LEFT:37,UP:38,RIGHT:39,DOWN:40,BACKSPACE:8,SPACE:32},e={beforeSave:function(t){return r.arrayToDefaultHash(t)},matcher:function(t,e,i,n){var r,o,s,a,h;return t=t.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g,\"\\\\$&\"),i&&(t=\"(?:^|\\\\s)\"+t),r=decodeURI(\"%C3%80\"),o=decodeURI(\"%C3%BF\"),h=n?\" \":\"\",a=new RegExp(t+\"([A-Za-z\"+r+\"-\"+o+\"0-9_\"+h+\"'.+-]*)$|\"+t+\"([^\\\\x00-\\\\xff]*)$\",\"gi\"),s=a.exec(e),s?s[2]||s[1]:null},filter:function(t,e,i){var n,r,o,s;for(n=[],r=0,s=e.length;s>r;r++)o=e[r],~new String(o[i]).toLowerCase().indexOf(t.toLowerCase())&&n.push(o);return n},remoteFilter:null,sorter:function(t,e,i){var n,r,o,s;if(!t)return e;for(n=[],r=0,s=e.length;s>r;r++)o=e[r],o.atwho_order=new String(o[i]).toLowerCase().indexOf(t.toLowerCase()),o.atwho_order>-1&&n.push(o);return n.sort(function(t,e){return t.atwho_order-e.atwho_order})},tplEval:function(t,e){var i,n,r;r=t;try{return\"string\"!=typeof t&&(r=t(e)),r.replace(/\\$\\{([^\\}]*)\\}/g,function(t,i,n){return e[i]})}catch(n){return i=n,\"\"}},highlighter:function(t,e){var i;return e?(i=new RegExp(\">\\\\s*([^<]*?)(\"+e.replace(\"+\",\"\\\\+\")+\")([^<]*)\\\\s*<\",\"ig\"),t.replace(i,function(t,e,i,n){return\"> \"+e+\"\"+i+\"\"+n+\" <\"})):t},beforeInsert:function(t,e,i){return t},beforeReposition:function(t){return t},afterMatchFailed:function(t,e){}};var n;n=function(){function e(e){this.currentFlag=null,this.controllers={},this.aliasMaps={},this.$inputor=t(e),this.setupRootElement(),this.listen()}return e.prototype.createContainer=function(e){var i;return null!=(i=this.$el)&&i.remove(),t(e.body).append(this.$el=t(\"
        \"))},e.prototype.setupRootElement=function(e,i){var n,r;if(null==i&&(i=!1),e)this.window=e.contentWindow,this.document=e.contentDocument||this.window.document,this.iframe=e;else{this.document=this.$inputor[0].ownerDocument,this.window=this.document.defaultView||this.document.parentWindow;try{this.iframe=this.window.frameElement}catch(r){if(n=r,this.iframe=null,t.fn.atwho.debug)throw new Error(\"iframe auto-discovery is failed.\\nPlease use `setIframe` to set the target iframe manually.\\n\"+n)}}return this.createContainer((this.iframeAsRoot=i)?this.document:document)},e.prototype.controller=function(t){var e,i,n,r;if(this.aliasMaps[t])i=this.controllers[this.aliasMaps[t]];else{r=this.controllers;for(n in r)if(e=r[n],n===t){i=e;break}}return i?i:this.controllers[this.currentFlag]},e.prototype.setContextFor=function(t){return this.currentFlag=t,this},e.prototype.reg=function(t,e){var i,n;return n=(i=this.controllers)[t]||(i[t]=this.$inputor.is(\"[contentEditable]\")?new l(this,t):new s(this,t)),e.alias&&(this.aliasMaps[e.alias]=t),n.init(e),this},e.prototype.listen=function(){return this.$inputor.on(\"compositionstart\",function(t){return function(e){var i;return null!=(i=t.controller())&&i.view.hide(),t.isComposing=!0,null}}(this)).on(\"compositionend\",function(t){return function(e){return t.isComposing=!1,setTimeout(function(e){return t.dispatch(e)}),null}}(this)).on(\"keyup.atwhoInner\",function(t){return function(e){return t.onKeyup(e)}}(this)).on(\"keydown.atwhoInner\",function(t){return function(e){return t.onKeydown(e)}}(this)).on(\"blur.atwhoInner\",function(t){return function(e){var i;return(i=t.controller())?(i.expectedQueryCBId=null,i.view.hide(e,i.getOpt(\"displayTimeout\"))):void 0}}(this)).on(\"click.atwhoInner\",function(t){return function(e){return t.dispatch(e)}}(this)).on(\"scroll.atwhoInner\",function(t){return function(){var e;return e=t.$inputor.scrollTop(),function(i){var n,r;return n=i.target.scrollTop,e!==n&&null!=(r=t.controller())&&r.view.hide(i),e=n,!0}}}(this)())},e.prototype.shutdown=function(){var t,e,i;i=this.controllers;for(t in i)e=i[t],e.destroy(),delete this.controllers[t];return this.$inputor.off(\".atwhoInner\"),this.$el.remove()},e.prototype.dispatch=function(t){var e,i,n,r;n=this.controllers,r=[];for(e in n)i=n[e],r.push(i.lookUp(t));return r},e.prototype.onKeyup=function(e){var n;switch(e.keyCode){case i.ESC:e.preventDefault(),null!=(n=this.controller())&&n.view.hide();break;case i.DOWN:case i.UP:case i.CTRL:case i.ENTER:t.noop();break;case i.P:case i.N:e.ctrlKey||this.dispatch(e);break;default:this.dispatch(e)}},e.prototype.onKeydown=function(e){var n,r;if(r=null!=(n=this.controller())?n.view:void 0,r&&r.visible())switch(e.keyCode){case i.ESC:e.preventDefault(),r.hide(e);break;case i.UP:e.preventDefault(),r.prev();break;case i.DOWN:e.preventDefault(),r.next();break;case i.P:if(!e.ctrlKey)return;e.preventDefault(),r.prev();break;case i.N:if(!e.ctrlKey)return;e.preventDefault(),r.next();break;case i.TAB:case i.ENTER:case i.SPACE:if(!r.visible())return;if(!this.controller().getOpt(\"spaceSelectsMatch\")&&e.keyCode===i.SPACE)return;if(!this.controller().getOpt(\"tabSelectsMatch\")&&e.keyCode===i.TAB)return;r.highlighted()?(e.preventDefault(),r.choose(e)):r.hide(e);break;default:t.noop()}},e}();var r,o=[].slice;r=function(){function i(e,i){this.app=e,this.at=i,this.$inputor=this.app.$inputor,this.id=this.$inputor[0].id||this.uid(),this.expectedQueryCBId=null,this.setting=null,this.query=null,this.pos=0,this.range=null,0===(this.$el=t(\"#atwho-ground-\"+this.id,this.app.$el)).length&&this.app.$el.append(this.$el=t(\"
        \")),this.model=new u(this),this.view=new c(this)}return i.prototype.uid=function(){return(Math.random().toString(16)+\"000000000\").substr(2,8)+(new Date).getTime()},i.prototype.init=function(e){return this.setting=t.extend({},this.setting||t.fn.atwho[\"default\"],e),this.view.init(),this.model.reload(this.setting.data)},i.prototype.destroy=function(){return this.trigger(\"beforeDestroy\"),this.model.destroy(),this.view.destroy(),this.$el.remove()},i.prototype.callDefault=function(){var i,n,r,s;s=arguments[0],i=2<=arguments.length?o.call(arguments,1):[];try{return e[s].apply(this,i)}catch(r){return n=r,t.error(n+\" Or maybe At.js doesn't have function \"+s)}},i.prototype.trigger=function(t,e){var i,n;return null==e&&(e=[]),e.push(this),i=this.getOpt(\"alias\"),n=i?t+\"-\"+i+\".atwho\":t+\".atwho\",this.$inputor.trigger(n,e)},i.prototype.callbacks=function(t){return this.getOpt(\"callbacks\")[t]||e[t]},i.prototype.getOpt=function(t,e){var i,n;try{return this.setting[t]}catch(n){return i=n,null}},i.prototype.insertContentFor=function(e){var i,n;return n=this.getOpt(\"insertTpl\"),i=t.extend({},e.data(\"item-data\"),{\"atwho-at\":this.at}),this.callbacks(\"tplEval\").call(this,n,i,\"onInsert\")},i.prototype.renderView=function(t){var e;return e=this.getOpt(\"searchKey\"),t=this.callbacks(\"sorter\").call(this,this.query.text,t.slice(0,1001),e),this.view.render(t.slice(0,this.getOpt(\"limit\")))},i.arrayToDefaultHash=function(e){var i,n,r,o;if(!t.isArray(e))return e;for(o=[],i=0,r=e.length;r>i;i++)n=e[i],t.isPlainObject(n)?o.push(n):o.push({name:n});return o},i.prototype.lookUp=function(t){var e,i;if((!t||\"click\"!==t.type||this.getOpt(\"lookUpOnClick\"))&&(!this.getOpt(\"suspendOnComposing\")||!this.app.isComposing))return(e=this.catchQuery(t))?(this.app.setContextFor(this.at),(i=this.getOpt(\"delay\"))?this._delayLookUp(e,i):this._lookUp(e),e):(this.expectedQueryCBId=null,e)},i.prototype._delayLookUp=function(t,e){var i,n;return i=Date.now?Date.now():(new Date).getTime(),this.previousCallTime||(this.previousCallTime=i),n=e-(i-this.previousCallTime),n>0&&e>n?(this.previousCallTime=i,this._stopDelayedCall(),this.delayedCallTimeout=setTimeout(function(e){return function(){return e.previousCallTime=0,e.delayedCallTimeout=null,e._lookUp(t)}}(this),e)):(this._stopDelayedCall(),this.previousCallTime!==i&&(this.previousCallTime=0),this._lookUp(t))},i.prototype._stopDelayedCall=function(){return this.delayedCallTimeout?(clearTimeout(this.delayedCallTimeout),this.delayedCallTimeout=null):void 0},i.prototype._generateQueryCBId=function(){return{}},i.prototype._lookUp=function(e){var i;return i=function(t,e){return t===this.expectedQueryCBId?e&&e.length>0?this.renderView(this.constructor.arrayToDefaultHash(e)):this.view.hide():void 0},this.expectedQueryCBId=this._generateQueryCBId(),this.model.query(e.text,t.proxy(i,this,this.expectedQueryCBId))},i}();var s,a=function(t,e){function i(){this.constructor=t}for(var n in e)h.call(e,n)&&(t[n]=e[n]);return i.prototype=e.prototype,t.prototype=new i,t.__super__=e.prototype,t},h={}.hasOwnProperty;s=function(e){function i(){return i.__super__.constructor.apply(this,arguments)}return a(i,e),i.prototype.catchQuery=function(){var t,e,i,n,r,o,s;return e=this.$inputor.val(),t=this.$inputor.caret(\"pos\",{iframe:this.app.iframe}),s=e.slice(0,t),r=this.callbacks(\"matcher\").call(this,this.at,s,this.getOpt(\"startWithSpace\"),this.getOpt(\"acceptSpaceBar\")),n=\"string\"==typeof r,n&&r.length0?t.getRangeAt(0):void 0},n.prototype._setRange=function(e,i,n){return null==n&&(n=this._getRange()),n&&i?(i=t(i)[0],\"after\"===e?(n.setEndAfter(i),n.setStartAfter(i)):(n.setEndBefore(i),n.setStartBefore(i)),n.collapse(!1),this._clearRange(n)):void 0},n.prototype._clearRange=function(t){var e;return null==t&&(t=this._getRange()),e=this.app.window.getSelection(),null==this.ctrl_a_pressed?(e.removeAllRanges(),e.addRange(t)):void 0},n.prototype._movingEvent=function(t){var e;return\"click\"===t.type||(e=t.which)===i.RIGHT||e===i.LEFT||e===i.UP||e===i.DOWN},n.prototype._unwrap=function(e){var i;return e=t(e).unwrap().get(0),(i=e.nextSibling)&&i.nodeValue&&(e.nodeValue+=i.nodeValue,t(i).remove()),e},n.prototype.catchQuery=function(e){var n,r,o,s,a,h,l,u,c,p,f,d;if((d=this._getRange())&&d.collapsed){if(e.which===i.ENTER)return(r=t(d.startContainer).closest(\".atwho-query\")).contents().unwrap(),r.is(\":empty\")&&r.remove(),(r=t(\".atwho-query\",this.app.document)).text(r.text()).contents().last().unwrap(),void this._clearRange();if(/firefox/i.test(navigator.userAgent)){if(t(d.startContainer).is(this.$inputor))return void this._clearRange();e.which===i.BACKSPACE&&d.startContainer.nodeType===document.ELEMENT_NODE&&(c=d.startOffset-1)>=0?(o=d.cloneRange(),o.setStart(d.startContainer,c),t(o.cloneContents()).contents().last().is(\".atwho-inserted\")&&(a=t(d.startContainer).contents().get(c),this._setRange(\"after\",t(a).contents().last()))):e.which===i.LEFT&&d.startContainer.nodeType===document.TEXT_NODE&&(n=t(d.startContainer.previousSibling),n.is(\".atwho-inserted\")&&0===d.startOffset&&this._setRange(\"after\",n.contents().last()))}if(t(d.startContainer).closest(\".atwho-inserted\").addClass(\"atwho-query\").siblings().removeClass(\"atwho-query\"),(r=t(\".atwho-query\",this.app.document)).length>0&&r.is(\":empty\")&&0===r.text().length&&r.remove(),this._movingEvent(e)||r.removeClass(\"atwho-inserted\"),r.length>0)switch(e.which){case i.LEFT:return this._setRange(\"before\",r.get(0),d),void r.removeClass(\"atwho-query\");case i.RIGHT:return this._setRange(\"after\",r.get(0).nextSibling,d),void r.removeClass(\"atwho-query\")}if(r.length>0&&(f=r.attr(\"data-atwho-at-query\"))&&(r.empty().html(f).attr(\"data-atwho-at-query\",null),this._setRange(\"after\",r.get(0),d)),o=d.cloneRange(),o.setStart(d.startContainer,0),u=this.callbacks(\"matcher\").call(this,this.at,o.toString(),this.getOpt(\"startWithSpace\"),this.getOpt(\"acceptSpaceBar\")),h=\"string\"==typeof u,0===r.length&&h&&(s=d.startOffset-this.at.length-u.length)>=0&&(d.setStart(d.startContainer,s),r=t(\"\",this.app.document).attr(this.getOpt(\"editableAtwhoQueryAttrs\")).addClass(\"atwho-query\"),d.surroundContents(r.get(0)),l=r.contents().last().get(0),l&&(/firefox/i.test(navigator.userAgent)?(d.setStart(l,l.length),d.setEnd(l,l.length),this._clearRange(d)):this._setRange(\"after\",l,d))),!(h&&u.length=0&&(this._movingEvent(e)&&r.hasClass(\"atwho-inserted\")?r.removeClass(\"atwho-query\"):!1!==this.callbacks(\"afterMatchFailed\").call(this,this.at,r)&&this._setRange(\"after\",this._unwrap(r.text(r.text()).contents().first()))),null)}},n.prototype.rect=function(){var e,i,n;return(n=this.query.el.offset())?(this.app.iframe&&!this.app.iframeAsRoot&&(i=(e=t(this.app.iframe)).offset(),n.left+=i.left-this.$inputor.scrollLeft(),n.top+=i.top-this.$inputor.scrollTop()),n.bottom=n.top+this.query.el.height(),n):void 0},n.prototype.insert=function(t,e){var i,n,r,o;return this.$inputor.is(\":focus\")||this.$inputor.focus(),r=\"\"===(r=this.getOpt(\"suffix\"))?r:r||\" \",i=e.data(\"item-data\"),this.query.el.removeClass(\"atwho-query\").addClass(\"atwho-inserted\").html(t).attr(\"data-atwho-at-query\",\"\"+i[\"atwho-at\"]+this.query.text).attr(\"contenteditable\",\"false\"),(n=this._getRange())&&(this.query.el.length&&n.setEndAfter(this.query.el[0]),n.collapse(!1),n.insertNode(o=this.app.document.createTextNode(\"\"+r)),this._setRange(\"after\",o,n)),this.$inputor.is(\":focus\")||this.$inputor.focus(),this.$inputor.change()},n}(r);var u;u=function(){function e(t){this.context=t,this.at=this.context.at,this.storage=this.context.$inputor}return e.prototype.destroy=function(){return this.storage.data(this.at,null)},e.prototype.saved=function(){return this.fetch()>0},e.prototype.query=function(t,e){var i,n,r;return n=this.fetch(),r=this.context.getOpt(\"searchKey\"),n=this.context.callbacks(\"filter\").call(this.context,t,n,r)||[],i=this.context.callbacks(\"remoteFilter\"),n.length>0||!i&&0===n.length?e(n):i.call(this.context,t,e)},e.prototype.fetch=function(){return this.storage.data(this.at)||[]},e.prototype.save=function(t){return this.storage.data(this.at,this.context.callbacks(\"beforeSave\").call(this.context,t||[]))},e.prototype.load=function(t){return!this.saved()&&t?this._load(t):void 0},e.prototype.reload=function(t){return this._load(t)},e.prototype._load=function(e){return\"string\"==typeof e?t.ajax(e,{dataType:\"json\"}).done(function(t){return function(e){return t.save(e)}}(this)):this.save(e)},e}();var c;c=function(){function e(e){this.context=e,this.$el=t(\"
          \"),this.$elUl=this.$el.children(),this.timeoutID=null,this.context.$el.append(this.$el),this.bindEvent()}return e.prototype.init=function(){var t,e;return e=this.context.getOpt(\"alias\")||this.context.at.charCodeAt(0),t=this.context.getOpt(\"headerTpl\"),t&&1===this.$el.children().length&&this.$el.prepend(t),this.$el.attr({id:\"at-view-\"+e})},e.prototype.destroy=function(){return this.$el.remove()},e.prototype.bindEvent=function(){var e,i,n;return e=this.$el.find(\"ul\"),i=0,n=0,e.on(\"mousemove.atwho-view\",\"li\",function(r){return function(r){var o;if((i!==r.clientX||n!==r.clientY)&&(i=r.clientX,n=r.clientY,o=t(r.currentTarget),!o.hasClass(\"cur\")))return e.find(\".cur\").removeClass(\"cur\"),o.addClass(\"cur\")}}(this)).on(\"click.atwho-view\",\"li\",function(i){return function(n){return e.find(\".cur\").removeClass(\"cur\"),t(n.currentTarget).addClass(\"cur\"),i.choose(n),n.preventDefault()}}(this))},e.prototype.visible=function(){return t.expr.filters.visible(this.$el[0])},e.prototype.highlighted=function(){return this.$el.find(\".cur\").length>0},e.prototype.choose=function(t){var e,i;return(e=this.$el.find(\".cur\")).length&&(i=this.context.insertContentFor(e),this.context._stopDelayedCall(),this.context.insert(this.context.callbacks(\"beforeInsert\").call(this.context,i,e,t),e),this.context.trigger(\"inserted\",[e,t]),this.hide(t)),this.context.getOpt(\"hideWithoutSuffix\")?this.stopShowing=!0:void 0},e.prototype.reposition=function(e){var i,n,r,o;return i=this.context.app.iframeAsRoot?this.context.app.window:window,e.bottom+this.$el.height()-t(i).scrollTop()>t(i).height()&&(e.bottom=e.top-this.$el.height()),e.left>(r=t(i).width()-this.$el.width()-5)&&(e.left=r),n={left:e.left,top:e.bottom},null!=(o=this.context.callbacks(\"beforeReposition\"))&&o.call(this.context,n),this.$el.offset(n),this.context.trigger(\"reposition\",[n])},e.prototype.next=function(){var t,e,i,n;return t=this.$el.find(\".cur\").removeClass(\"cur\"),e=t.next(),e.length||(e=this.$el.find(\"li:first\")),e.addClass(\"cur\"),i=e[0],n=i.offsetTop+i.offsetHeight+(i.nextSibling?i.nextSibling.offsetHeight:0),this.scrollTop(Math.max(0,n-this.$el.height()))},e.prototype.prev=function(){var t,e,i,n;return t=this.$el.find(\".cur\").removeClass(\"cur\"),i=t.prev(),i.length||(i=this.$el.find(\"li:last\")),i.addClass(\"cur\"),n=i[0],e=n.offsetTop+n.offsetHeight+(n.nextSibling?n.nextSibling.offsetHeight:0),this.scrollTop(Math.max(0,e-this.$el.height()))},e.prototype.scrollTop=function(t){var e;return e=this.context.getOpt(\"scrollDuration\"),e?this.$elUl.animate({scrollTop:t},e):this.$elUl.scrollTop(t)},e.prototype.show=function(){var t;return this.stopShowing?void(this.stopShowing=!1):(this.visible()||(this.$el.show(),this.$el.scrollTop(0),this.context.trigger(\"shown\")),(t=this.context.rect())?this.reposition(t):void 0)},e.prototype.hide=function(t,e){var i;if(this.visible())return isNaN(e)?(this.$el.hide(),this.context.trigger(\"hidden\",[t])):(i=function(t){return function(){return t.hide()}}(this),clearTimeout(this.timeoutID),this.timeoutID=setTimeout(i,e))},e.prototype.render=function(e){var i,n,r,o,s,a,h;if(!(t.isArray(e)&&e.length>0))return void this.hide();for(this.$el.find(\"ul\").empty(),n=this.$el.find(\"ul\"),h=this.context.getOpt(\"displayTpl\"),r=0,s=e.length;s>r;r++)o=e[r],o=t.extend({},o,{\"atwho-at\":this.context.at}),a=this.context.callbacks(\"tplEval\").call(this.context,h,o,\"onDisplay\"),i=t(this.context.callbacks(\"highlighter\").call(this.context,a,this.context.query.text)),i.data(\"item-data\",o),n.append(i);return this.show(),this.context.getOpt(\"highlightFirst\")?n.find(\"li:first\").addClass(\"cur\"):void 0},e}();var p;p={load:function(t,e){var i;return(i=this.controller(t))?i.model.load(e):void 0},isSelecting:function(){var t;return!!(null!=(t=this.controller())?t.view.visible():void 0)},hide:function(){var t;return null!=(t=this.controller())?t.view.hide():void 0},reposition:function(){var t;return(t=this.controller())?t.view.reposition(t.rect()):void 0},setIframe:function(t,e){return this.setupRootElement(t,e),null},run:function(){return this.dispatch()},destroy:function(){return this.shutdown(),this.$inputor.data(\"atwho\",null)}},t.fn.atwho=function(e){var i,r;return i=arguments,r=null,this.filter('textarea, input, [contenteditable=\"\"], [contenteditable=true]').each(function(){var o,s;return(s=(o=t(this)).data(\"atwho\"))||o.data(\"atwho\",s=new n(this)),\"object\"!=typeof e&&e?p[e]&&s?r=p[e].apply(s,Array.prototype.slice.call(i,1)):t.error(\"Method \"+e+\" does not exist on jQuery.atwho\"):s.reg(e.at,e)}),null!=r?r:this},t.fn.atwho[\"default\"]={at:void 0,alias:void 0,data:null,displayTpl:\"
        • ${name}
        • \",insertTpl:\"${atwho-at}${name}\",headerTpl:null,callbacks:e,searchKey:\"name\",suffix:void 0,hideWithoutSuffix:!1,startWithSpace:!0,acceptSpaceBar:!1,highlightFirst:!0,limit:5,maxLen:20,minLen:0,displayTimeout:300,delay:null,spaceSelectsMatch:!1,tabSelectsMatch:!0,editableAtwhoQueryAttrs:{},scrollDuration:150,suspendOnComposing:!0,lookUpOnClick:!0},t.fn.atwho.debug=!1});\n},{\"jquery\":52}],3:[function(require,module,exports){\n/* ========================================================================\n * Bootstrap: affix.js v3.3.7\n * http://getbootstrap.com/javascript/#affix\n * ========================================================================\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // AFFIX CLASS DEFINITION\n // ======================\n\n var Affix = function (element, options) {\n this.options = $.extend({}, Affix.DEFAULTS, options)\n\n this.$target = $(this.options.target)\n .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this))\n .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this))\n\n this.$element = $(element)\n this.affixed = null\n this.unpin = null\n this.pinnedOffset = null\n\n this.checkPosition()\n }\n\n Affix.VERSION = '3.3.7'\n\n Affix.RESET = 'affix affix-top affix-bottom'\n\n Affix.DEFAULTS = {\n offset: 0,\n target: window\n }\n\n Affix.prototype.getState = function (scrollHeight, height, offsetTop, offsetBottom) {\n var scrollTop = this.$target.scrollTop()\n var position = this.$element.offset()\n var targetHeight = this.$target.height()\n\n if (offsetTop != null && this.affixed == 'top') return scrollTop < offsetTop ? 'top' : false\n\n if (this.affixed == 'bottom') {\n if (offsetTop != null) return (scrollTop + this.unpin <= position.top) ? false : 'bottom'\n return (scrollTop + targetHeight <= scrollHeight - offsetBottom) ? false : 'bottom'\n }\n\n var initializing = this.affixed == null\n var colliderTop = initializing ? scrollTop : position.top\n var colliderHeight = initializing ? targetHeight : height\n\n if (offsetTop != null && scrollTop <= offsetTop) return 'top'\n if (offsetBottom != null && (colliderTop + colliderHeight >= scrollHeight - offsetBottom)) return 'bottom'\n\n return false\n }\n\n Affix.prototype.getPinnedOffset = function () {\n if (this.pinnedOffset) return this.pinnedOffset\n this.$element.removeClass(Affix.RESET).addClass('affix')\n var scrollTop = this.$target.scrollTop()\n var position = this.$element.offset()\n return (this.pinnedOffset = position.top - scrollTop)\n }\n\n Affix.prototype.checkPositionWithEventLoop = function () {\n setTimeout($.proxy(this.checkPosition, this), 1)\n }\n\n Affix.prototype.checkPosition = function () {\n if (!this.$element.is(':visible')) return\n\n var height = this.$element.height()\n var offset = this.options.offset\n var offsetTop = offset.top\n var offsetBottom = offset.bottom\n var scrollHeight = Math.max($(document).height(), $(document.body).height())\n\n if (typeof offset != 'object') offsetBottom = offsetTop = offset\n if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element)\n if (typeof offsetBottom == 'function') offsetBottom = offset.bottom(this.$element)\n\n var affix = this.getState(scrollHeight, height, offsetTop, offsetBottom)\n\n if (this.affixed != affix) {\n if (this.unpin != null) this.$element.css('top', '')\n\n var affixType = 'affix' + (affix ? '-' + affix : '')\n var e = $.Event(affixType + '.bs.affix')\n\n this.$element.trigger(e)\n\n if (e.isDefaultPrevented()) return\n\n this.affixed = affix\n this.unpin = affix == 'bottom' ? this.getPinnedOffset() : null\n\n this.$element\n .removeClass(Affix.RESET)\n .addClass(affixType)\n .trigger(affixType.replace('affix', 'affixed') + '.bs.affix')\n }\n\n if (affix == 'bottom') {\n this.$element.offset({\n top: scrollHeight - height - offsetBottom\n })\n }\n }\n\n\n // AFFIX PLUGIN DEFINITION\n // =======================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.affix')\n var options = typeof option == 'object' && option\n\n if (!data) $this.data('bs.affix', (data = new Affix(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n var old = $.fn.affix\n\n $.fn.affix = Plugin\n $.fn.affix.Constructor = Affix\n\n\n // AFFIX NO CONFLICT\n // =================\n\n $.fn.affix.noConflict = function () {\n $.fn.affix = old\n return this\n }\n\n\n // AFFIX DATA-API\n // ==============\n\n $(window).on('load', function () {\n $('[data-spy=\"affix\"]').each(function () {\n var $spy = $(this)\n var data = $spy.data()\n\n data.offset = data.offset || {}\n\n if (data.offsetBottom != null) data.offset.bottom = data.offsetBottom\n if (data.offsetTop != null) data.offset.top = data.offsetTop\n\n Plugin.call($spy, data)\n })\n })\n\n}(jQuery);\n\n},{}],4:[function(require,module,exports){\n/* ========================================================================\n * Bootstrap: dropdown.js v3.3.7\n * http://getbootstrap.com/javascript/#dropdowns\n * ========================================================================\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // DROPDOWN CLASS DEFINITION\n // =========================\n\n var backdrop = '.dropdown-backdrop'\n var toggle = '[data-toggle=\"dropdown\"]'\n var Dropdown = function (element) {\n $(element).on('click.bs.dropdown', this.toggle)\n }\n\n Dropdown.VERSION = '3.3.7'\n\n function getParent($this) {\n var selector = $this.attr('data-target')\n\n if (!selector) {\n selector = $this.attr('href')\n selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\\s]*$)/, '') // strip for ie7\n }\n\n var $parent = selector && $(selector)\n\n return $parent && $parent.length ? $parent : $this.parent()\n }\n\n function clearMenus(e) {\n if (e && e.which === 3) return\n $(backdrop).remove()\n $(toggle).each(function () {\n var $this = $(this)\n var $parent = getParent($this)\n var relatedTarget = { relatedTarget: this }\n\n if (!$parent.hasClass('open')) return\n\n if (e && e.type == 'click' && /input|textarea/i.test(e.target.tagName) && $.contains($parent[0], e.target)) return\n\n $parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget))\n\n if (e.isDefaultPrevented()) return\n\n $this.attr('aria-expanded', 'false')\n $parent.removeClass('open').trigger($.Event('hidden.bs.dropdown', relatedTarget))\n })\n }\n\n Dropdown.prototype.toggle = function (e) {\n var $this = $(this)\n\n if ($this.is('.disabled, :disabled')) return\n\n var $parent = getParent($this)\n var isActive = $parent.hasClass('open')\n\n clearMenus()\n\n if (!isActive) {\n if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {\n // if mobile we use a backdrop because click events don't delegate\n $(document.createElement('div'))\n .addClass('dropdown-backdrop')\n .insertAfter($(this))\n .on('click', clearMenus)\n }\n\n var relatedTarget = { relatedTarget: this }\n $parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget))\n\n if (e.isDefaultPrevented()) return\n\n $this\n .trigger('focus')\n .attr('aria-expanded', 'true')\n\n $parent\n .toggleClass('open')\n .trigger($.Event('shown.bs.dropdown', relatedTarget))\n }\n\n return false\n }\n\n Dropdown.prototype.keydown = function (e) {\n if (!/(38|40|27|32)/.test(e.which) || /input|textarea/i.test(e.target.tagName)) return\n\n var $this = $(this)\n\n e.preventDefault()\n e.stopPropagation()\n\n if ($this.is('.disabled, :disabled')) return\n\n var $parent = getParent($this)\n var isActive = $parent.hasClass('open')\n\n if (!isActive && e.which != 27 || isActive && e.which == 27) {\n if (e.which == 27) $parent.find(toggle).trigger('focus')\n return $this.trigger('click')\n }\n\n var desc = ' li:not(.disabled):visible a'\n var $items = $parent.find('.dropdown-menu' + desc)\n\n if (!$items.length) return\n\n var index = $items.index(e.target)\n\n if (e.which == 38 && index > 0) index-- // up\n if (e.which == 40 && index < $items.length - 1) index++ // down\n if (!~index) index = 0\n\n $items.eq(index).trigger('focus')\n }\n\n\n // DROPDOWN PLUGIN DEFINITION\n // ==========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.dropdown')\n\n if (!data) $this.data('bs.dropdown', (data = new Dropdown(this)))\n if (typeof option == 'string') data[option].call($this)\n })\n }\n\n var old = $.fn.dropdown\n\n $.fn.dropdown = Plugin\n $.fn.dropdown.Constructor = Dropdown\n\n\n // DROPDOWN NO CONFLICT\n // ====================\n\n $.fn.dropdown.noConflict = function () {\n $.fn.dropdown = old\n return this\n }\n\n\n // APPLY TO STANDARD DROPDOWN ELEMENTS\n // ===================================\n\n $(document)\n .on('click.bs.dropdown.data-api', clearMenus)\n .on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })\n .on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle)\n .on('keydown.bs.dropdown.data-api', toggle, Dropdown.prototype.keydown)\n .on('keydown.bs.dropdown.data-api', '.dropdown-menu', Dropdown.prototype.keydown)\n\n}(jQuery);\n\n},{}],5:[function(require,module,exports){\n/* ========================================================================\n * Bootstrap: modal.js v3.3.7\n * http://getbootstrap.com/javascript/#modals\n * ========================================================================\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // MODAL CLASS DEFINITION\n // ======================\n\n var Modal = function (element, options) {\n this.options = options\n this.$body = $(document.body)\n this.$element = $(element)\n this.$dialog = this.$element.find('.modal-dialog')\n this.$backdrop = null\n this.isShown = null\n this.originalBodyPad = null\n this.scrollbarWidth = 0\n this.ignoreBackdropClick = false\n\n if (this.options.remote) {\n this.$element\n .find('.modal-content')\n .load(this.options.remote, $.proxy(function () {\n this.$element.trigger('loaded.bs.modal')\n }, this))\n }\n }\n\n Modal.VERSION = '3.3.7'\n\n Modal.TRANSITION_DURATION = 300\n Modal.BACKDROP_TRANSITION_DURATION = 150\n\n Modal.DEFAULTS = {\n backdrop: true,\n keyboard: true,\n show: true\n }\n\n Modal.prototype.toggle = function (_relatedTarget) {\n return this.isShown ? this.hide() : this.show(_relatedTarget)\n }\n\n Modal.prototype.show = function (_relatedTarget) {\n var that = this\n var e = $.Event('show.bs.modal', { relatedTarget: _relatedTarget })\n\n this.$element.trigger(e)\n\n if (this.isShown || e.isDefaultPrevented()) return\n\n this.isShown = true\n\n this.checkScrollbar()\n this.setScrollbar()\n this.$body.addClass('modal-open')\n\n this.escape()\n this.resize()\n\n this.$element.on('click.dismiss.bs.modal', '[data-dismiss=\"modal\"]', $.proxy(this.hide, this))\n\n this.$dialog.on('mousedown.dismiss.bs.modal', function () {\n that.$element.one('mouseup.dismiss.bs.modal', function (e) {\n if ($(e.target).is(that.$element)) that.ignoreBackdropClick = true\n })\n })\n\n this.backdrop(function () {\n var transition = $.support.transition && that.$element.hasClass('fade')\n\n if (!that.$element.parent().length) {\n that.$element.appendTo(that.$body) // don't move modals dom position\n }\n\n that.$element\n .show()\n .scrollTop(0)\n\n that.adjustDialog()\n\n if (transition) {\n that.$element[0].offsetWidth // force reflow\n }\n\n that.$element.addClass('in')\n\n that.enforceFocus()\n\n var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget })\n\n transition ?\n that.$dialog // wait for modal to slide in\n .one('bsTransitionEnd', function () {\n that.$element.trigger('focus').trigger(e)\n })\n .emulateTransitionEnd(Modal.TRANSITION_DURATION) :\n that.$element.trigger('focus').trigger(e)\n })\n }\n\n Modal.prototype.hide = function (e) {\n if (e) e.preventDefault()\n\n e = $.Event('hide.bs.modal')\n\n this.$element.trigger(e)\n\n if (!this.isShown || e.isDefaultPrevented()) return\n\n this.isShown = false\n\n this.escape()\n this.resize()\n\n $(document).off('focusin.bs.modal')\n\n this.$element\n .removeClass('in')\n .off('click.dismiss.bs.modal')\n .off('mouseup.dismiss.bs.modal')\n\n this.$dialog.off('mousedown.dismiss.bs.modal')\n\n $.support.transition && this.$element.hasClass('fade') ?\n this.$element\n .one('bsTransitionEnd', $.proxy(this.hideModal, this))\n .emulateTransitionEnd(Modal.TRANSITION_DURATION) :\n this.hideModal()\n }\n\n Modal.prototype.enforceFocus = function () {\n $(document)\n .off('focusin.bs.modal') // guard against infinite focus loop\n .on('focusin.bs.modal', $.proxy(function (e) {\n if (document !== e.target &&\n this.$element[0] !== e.target &&\n !this.$element.has(e.target).length) {\n this.$element.trigger('focus')\n }\n }, this))\n }\n\n Modal.prototype.escape = function () {\n if (this.isShown && this.options.keyboard) {\n this.$element.on('keydown.dismiss.bs.modal', $.proxy(function (e) {\n e.which == 27 && this.hide()\n }, this))\n } else if (!this.isShown) {\n this.$element.off('keydown.dismiss.bs.modal')\n }\n }\n\n Modal.prototype.resize = function () {\n if (this.isShown) {\n $(window).on('resize.bs.modal', $.proxy(this.handleUpdate, this))\n } else {\n $(window).off('resize.bs.modal')\n }\n }\n\n Modal.prototype.hideModal = function () {\n var that = this\n this.$element.hide()\n this.backdrop(function () {\n that.$body.removeClass('modal-open')\n that.resetAdjustments()\n that.resetScrollbar()\n that.$element.trigger('hidden.bs.modal')\n })\n }\n\n Modal.prototype.removeBackdrop = function () {\n this.$backdrop && this.$backdrop.remove()\n this.$backdrop = null\n }\n\n Modal.prototype.backdrop = function (callback) {\n var that = this\n var animate = this.$element.hasClass('fade') ? 'fade' : ''\n\n if (this.isShown && this.options.backdrop) {\n var doAnimate = $.support.transition && animate\n\n this.$backdrop = $(document.createElement('div'))\n .addClass('modal-backdrop ' + animate)\n .appendTo(this.$body)\n\n this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) {\n if (this.ignoreBackdropClick) {\n this.ignoreBackdropClick = false\n return\n }\n if (e.target !== e.currentTarget) return\n this.options.backdrop == 'static'\n ? this.$element[0].focus()\n : this.hide()\n }, this))\n\n if (doAnimate) this.$backdrop[0].offsetWidth // force reflow\n\n this.$backdrop.addClass('in')\n\n if (!callback) return\n\n doAnimate ?\n this.$backdrop\n .one('bsTransitionEnd', callback)\n .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) :\n callback()\n\n } else if (!this.isShown && this.$backdrop) {\n this.$backdrop.removeClass('in')\n\n var callbackRemove = function () {\n that.removeBackdrop()\n callback && callback()\n }\n $.support.transition && this.$element.hasClass('fade') ?\n this.$backdrop\n .one('bsTransitionEnd', callbackRemove)\n .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) :\n callbackRemove()\n\n } else if (callback) {\n callback()\n }\n }\n\n // these following methods are used to handle overflowing modals\n\n Modal.prototype.handleUpdate = function () {\n this.adjustDialog()\n }\n\n Modal.prototype.adjustDialog = function () {\n var modalIsOverflowing = this.$element[0].scrollHeight > document.documentElement.clientHeight\n\n this.$element.css({\n paddingLeft: !this.bodyIsOverflowing && modalIsOverflowing ? this.scrollbarWidth : '',\n paddingRight: this.bodyIsOverflowing && !modalIsOverflowing ? this.scrollbarWidth : ''\n })\n }\n\n Modal.prototype.resetAdjustments = function () {\n this.$element.css({\n paddingLeft: '',\n paddingRight: ''\n })\n }\n\n Modal.prototype.checkScrollbar = function () {\n var fullWindowWidth = window.innerWidth\n if (!fullWindowWidth) { // workaround for missing window.innerWidth in IE8\n var documentElementRect = document.documentElement.getBoundingClientRect()\n fullWindowWidth = documentElementRect.right - Math.abs(documentElementRect.left)\n }\n this.bodyIsOverflowing = document.body.clientWidth < fullWindowWidth\n this.scrollbarWidth = this.measureScrollbar()\n }\n\n Modal.prototype.setScrollbar = function () {\n var bodyPad = parseInt((this.$body.css('padding-right') || 0), 10)\n this.originalBodyPad = document.body.style.paddingRight || ''\n if (this.bodyIsOverflowing) this.$body.css('padding-right', bodyPad + this.scrollbarWidth)\n }\n\n Modal.prototype.resetScrollbar = function () {\n this.$body.css('padding-right', this.originalBodyPad)\n }\n\n Modal.prototype.measureScrollbar = function () { // thx walsh\n var scrollDiv = document.createElement('div')\n scrollDiv.className = 'modal-scrollbar-measure'\n this.$body.append(scrollDiv)\n var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth\n this.$body[0].removeChild(scrollDiv)\n return scrollbarWidth\n }\n\n\n // MODAL PLUGIN DEFINITION\n // =======================\n\n function Plugin(option, _relatedTarget) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.modal')\n var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option)\n\n if (!data) $this.data('bs.modal', (data = new Modal(this, options)))\n if (typeof option == 'string') data[option](_relatedTarget)\n else if (options.show) data.show(_relatedTarget)\n })\n }\n\n var old = $.fn.modal\n\n $.fn.modal = Plugin\n $.fn.modal.Constructor = Modal\n\n\n // MODAL NO CONFLICT\n // =================\n\n $.fn.modal.noConflict = function () {\n $.fn.modal = old\n return this\n }\n\n\n // MODAL DATA-API\n // ==============\n\n $(document).on('click.bs.modal.data-api', '[data-toggle=\"modal\"]', function (e) {\n var $this = $(this)\n var href = $this.attr('href')\n var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\\s]+$)/, ''))) // strip for ie7\n var option = $target.data('bs.modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())\n\n if ($this.is('a')) e.preventDefault()\n\n $target.one('show.bs.modal', function (showEvent) {\n if (showEvent.isDefaultPrevented()) return // only register focus restorer if modal will actually get shown\n $target.one('hidden.bs.modal', function () {\n $this.is(':visible') && $this.trigger('focus')\n })\n })\n Plugin.call($target, option, this)\n })\n\n}(jQuery);\n\n},{}],6:[function(require,module,exports){\n/* ========================================================================\n * Bootstrap: transition.js v3.3.7\n * http://getbootstrap.com/javascript/#transitions\n * ========================================================================\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/)\n // ============================================================\n\n function transitionEnd() {\n var el = document.createElement('bootstrap')\n\n var transEndEventNames = {\n WebkitTransition : 'webkitTransitionEnd',\n MozTransition : 'transitionend',\n OTransition : 'oTransitionEnd otransitionend',\n transition : 'transitionend'\n }\n\n for (var name in transEndEventNames) {\n if (el.style[name] !== undefined) {\n return { end: transEndEventNames[name] }\n }\n }\n\n return false // explicit for ie8 ( ._.)\n }\n\n // http://blog.alexmaccaw.com/css-transitions\n $.fn.emulateTransitionEnd = function (duration) {\n var called = false\n var $el = this\n $(this).one('bsTransitionEnd', function () { called = true })\n var callback = function () { if (!called) $($el).trigger($.support.transition.end) }\n setTimeout(callback, duration)\n return this\n }\n\n $(function () {\n $.support.transition = transitionEnd()\n\n if (!$.support.transition) return\n\n $.event.special.bsTransitionEnd = {\n bindType: $.support.transition.end,\n delegateType: $.support.transition.end,\n handle: function (e) {\n if ($(e.target).is(this)) return e.handleObj.handler.apply(this, arguments)\n }\n }\n })\n\n}(jQuery);\n\n},{}],7:[function(require,module,exports){\nvar pSlice = Array.prototype.slice;\nvar objectKeys = require('./lib/keys.js');\nvar isArguments = require('./lib/is_arguments.js');\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n},{\"./lib/is_arguments.js\":8,\"./lib/keys.js\":9}],8:[function(require,module,exports){\nvar supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n},{}],9:[function(require,module,exports){\nexports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n},{}],10:[function(require,module,exports){\n'use strict';\n\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * @typechecks\n */\n\nvar emptyFunction = require('./emptyFunction');\n\n/**\n * Upstream version of event listener. Does not take into account specific\n * nature of platform.\n */\nvar EventListener = {\n /**\n * Listen to DOM events during the bubble phase.\n *\n * @param {DOMEventTarget} target DOM element to register listener on.\n * @param {string} eventType Event type, e.g. 'click' or 'mouseover'.\n * @param {function} callback Callback function.\n * @return {object} Object with a `remove` method.\n */\n listen: function listen(target, eventType, callback) {\n if (target.addEventListener) {\n target.addEventListener(eventType, callback, false);\n return {\n remove: function remove() {\n target.removeEventListener(eventType, callback, false);\n }\n };\n } else if (target.attachEvent) {\n target.attachEvent('on' + eventType, callback);\n return {\n remove: function remove() {\n target.detachEvent('on' + eventType, callback);\n }\n };\n }\n },\n\n /**\n * Listen to DOM events during the capture phase.\n *\n * @param {DOMEventTarget} target DOM element to register listener on.\n * @param {string} eventType Event type, e.g. 'click' or 'mouseover'.\n * @param {function} callback Callback function.\n * @return {object} Object with a `remove` method.\n */\n capture: function capture(target, eventType, callback) {\n if (target.addEventListener) {\n target.addEventListener(eventType, callback, true);\n return {\n remove: function remove() {\n target.removeEventListener(eventType, callback, true);\n }\n };\n } else {\n if (\"production\" !== 'production') {\n console.error('Attempted to listen to events during the capture phase on a ' + 'browser that does not support the capture phase. Your application ' + 'will not receive some events.');\n }\n return {\n remove: emptyFunction\n };\n }\n },\n\n registerDefault: function registerDefault() {}\n};\n\nmodule.exports = EventListener;\n},{\"./emptyFunction\":17}],11:[function(require,module,exports){\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n */\n\n'use strict';\n\nvar canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n\n/**\n * Simple, lightweight module assisting with the detection and context of\n * Worker. Helps avoid circular dependencies and allows code to reason about\n * whether or not they are in a Worker, even if they never include the main\n * `ReactWorker` dependency.\n */\nvar ExecutionEnvironment = {\n\n canUseDOM: canUseDOM,\n\n canUseWorkers: typeof Worker !== 'undefined',\n\n canUseEventListeners: canUseDOM && !!(window.addEventListener || window.attachEvent),\n\n canUseViewport: canUseDOM && !!window.screen,\n\n isInWorker: !canUseDOM // For now, this is true - might change in the future.\n\n};\n\nmodule.exports = ExecutionEnvironment;\n},{}],12:[function(require,module,exports){\n\"use strict\";\n\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n * @typechecks\n */\n\nvar _hyphenPattern = /-(.)/g;\n\n/**\n * Camelcases a hyphenated string, for example:\n *\n * > camelize('background-color')\n * < \"backgroundColor\"\n *\n * @param {string} string\n * @return {string}\n */\nfunction camelize(string) {\n return string.replace(_hyphenPattern, function (_, character) {\n return character.toUpperCase();\n });\n}\n\nmodule.exports = camelize;\n},{}],13:[function(require,module,exports){\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n * @typechecks\n */\n\n'use strict';\n\nvar camelize = require('./camelize');\n\nvar msPattern = /^-ms-/;\n\n/**\n * Camelcases a hyphenated CSS property name, for example:\n *\n * > camelizeStyleName('background-color')\n * < \"backgroundColor\"\n * > camelizeStyleName('-moz-transition')\n * < \"MozTransition\"\n * > camelizeStyleName('-ms-transition')\n * < \"msTransition\"\n *\n * As Andi Smith suggests\n * (http://www.andismith.com/blog/2012/02/modernizr-prefixed/), an `-ms` prefix\n * is converted to lowercase `ms`.\n *\n * @param {string} string\n * @return {string}\n */\nfunction camelizeStyleName(string) {\n return camelize(string.replace(msPattern, 'ms-'));\n}\n\nmodule.exports = camelizeStyleName;\n},{\"./camelize\":12}],14:[function(require,module,exports){\n'use strict';\n\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n * \n */\n\nvar isTextNode = require('./isTextNode');\n\n/*eslint-disable no-bitwise */\n\n/**\n * Checks if a given DOM node contains or is another DOM node.\n */\nfunction containsNode(outerNode, innerNode) {\n if (!outerNode || !innerNode) {\n return false;\n } else if (outerNode === innerNode) {\n return true;\n } else if (isTextNode(outerNode)) {\n return false;\n } else if (isTextNode(innerNode)) {\n return containsNode(outerNode, innerNode.parentNode);\n } else if ('contains' in outerNode) {\n return outerNode.contains(innerNode);\n } else if (outerNode.compareDocumentPosition) {\n return !!(outerNode.compareDocumentPosition(innerNode) & 16);\n } else {\n return false;\n }\n}\n\nmodule.exports = containsNode;\n},{\"./isTextNode\":27}],15:[function(require,module,exports){\n'use strict';\n\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n * @typechecks\n */\n\nvar invariant = require('./invariant');\n\n/**\n * Convert array-like objects to arrays.\n *\n * This API assumes the caller knows the contents of the data type. For less\n * well defined inputs use createArrayFromMixed.\n *\n * @param {object|function|filelist} obj\n * @return {array}\n */\nfunction toArray(obj) {\n var length = obj.length;\n\n // Some browsers builtin objects can report typeof 'function' (e.g. NodeList\n // in old versions of Safari).\n !(!Array.isArray(obj) && (typeof obj === 'object' || typeof obj === 'function')) ? \"production\" !== 'production' ? invariant(false, 'toArray: Array-like object expected') : invariant(false) : void 0;\n\n !(typeof length === 'number') ? \"production\" !== 'production' ? invariant(false, 'toArray: Object needs a length property') : invariant(false) : void 0;\n\n !(length === 0 || length - 1 in obj) ? \"production\" !== 'production' ? invariant(false, 'toArray: Object should have keys for indices') : invariant(false) : void 0;\n\n !(typeof obj.callee !== 'function') ? \"production\" !== 'production' ? invariant(false, 'toArray: Object can\\'t be `arguments`. Use rest params ' + '(function(...args) {}) or Array.from() instead.') : invariant(false) : void 0;\n\n // Old IE doesn't give collections access to hasOwnProperty. Assume inputs\n // without method will throw during the slice call and skip straight to the\n // fallback.\n if (obj.hasOwnProperty) {\n try {\n return Array.prototype.slice.call(obj);\n } catch (e) {\n // IE < 9 does not support Array#slice on collections objects\n }\n }\n\n // Fall back to copying key by key. This assumes all keys have a value,\n // so will not preserve sparsely populated inputs.\n var ret = Array(length);\n for (var ii = 0; ii < length; ii++) {\n ret[ii] = obj[ii];\n }\n return ret;\n}\n\n/**\n * Perform a heuristic test to determine if an object is \"array-like\".\n *\n * A monk asked Joshu, a Zen master, \"Has a dog Buddha nature?\"\n * Joshu replied: \"Mu.\"\n *\n * This function determines if its argument has \"array nature\": it returns\n * true if the argument is an actual array, an `arguments' object, or an\n * HTMLCollection (e.g. node.childNodes or node.getElementsByTagName()).\n *\n * It will return false for other array-like objects like Filelist.\n *\n * @param {*} obj\n * @return {boolean}\n */\nfunction hasArrayNature(obj) {\n return (\n // not null/false\n !!obj && (\n // arrays are objects, NodeLists are functions in Safari\n typeof obj == 'object' || typeof obj == 'function') &&\n // quacks like an array\n 'length' in obj &&\n // not window\n !('setInterval' in obj) &&\n // no DOM node should be considered an array-like\n // a 'select' element has 'length' and 'item' properties on IE8\n typeof obj.nodeType != 'number' && (\n // a real array\n Array.isArray(obj) ||\n // arguments\n 'callee' in obj ||\n // HTMLCollection/NodeList\n 'item' in obj)\n );\n}\n\n/**\n * Ensure that the argument is an array by wrapping it in an array if it is not.\n * Creates a copy of the argument if it is already an array.\n *\n * This is mostly useful idiomatically:\n *\n * var createArrayFromMixed = require('createArrayFromMixed');\n *\n * function takesOneOrMoreThings(things) {\n * things = createArrayFromMixed(things);\n * ...\n * }\n *\n * This allows you to treat `things' as an array, but accept scalars in the API.\n *\n * If you need to convert an array-like object, like `arguments`, into an array\n * use toArray instead.\n *\n * @param {*} obj\n * @return {array}\n */\nfunction createArrayFromMixed(obj) {\n if (!hasArrayNature(obj)) {\n return [obj];\n } else if (Array.isArray(obj)) {\n return obj.slice();\n } else {\n return toArray(obj);\n }\n}\n\nmodule.exports = createArrayFromMixed;\n},{\"./invariant\":25}],16:[function(require,module,exports){\n'use strict';\n\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n *\n * @typechecks\n */\n\n/*eslint-disable fb-www/unsafe-html*/\n\nvar ExecutionEnvironment = require('./ExecutionEnvironment');\n\nvar createArrayFromMixed = require('./createArrayFromMixed');\nvar getMarkupWrap = require('./getMarkupWrap');\nvar invariant = require('./invariant');\n\n/**\n * Dummy container used to render all markup.\n */\nvar dummyNode = ExecutionEnvironment.canUseDOM ? document.createElement('div') : null;\n\n/**\n * Pattern used by `getNodeName`.\n */\nvar nodeNamePattern = /^\\s*<(\\w+)/;\n\n/**\n * Extracts the `nodeName` of the first element in a string of markup.\n *\n * @param {string} markup String of markup.\n * @return {?string} Node name of the supplied markup.\n */\nfunction getNodeName(markup) {\n var nodeNameMatch = markup.match(nodeNamePattern);\n return nodeNameMatch && nodeNameMatch[1].toLowerCase();\n}\n\n/**\n * Creates an array containing the nodes rendered from the supplied markup. The\n * optionally supplied `handleScript` function will be invoked once for each\n * \", rE: !0, sL: [\"actionscript\", \"javascript\", \"handlebars\", \"xml\"] } }, { cN: \"meta\", v: [{ b: /<\\?xml/, e: /\\?>/, r: 10 }, { b: /<\\?\\w+/, e: /\\?>/ }] }, { cN: \"tag\", b: \"\", c: [{ cN: \"name\", b: /[^\\/><\\s]+/, r: 0 }, t] }] };\n});hljs.registerLanguage(\"markdown\", function (e) {\n return { aliases: [\"md\", \"mkdown\", \"mkd\"], c: [{ cN: \"section\", v: [{ b: \"^#{1,6}\", e: \"$\" }, { b: \"^.+?\\\\n[=-]{2,}$\" }] }, { b: \"<\", e: \">\", sL: \"xml\", r: 0 }, { cN: \"bullet\", b: \"^([*+-]|(\\\\d+\\\\.))\\\\s+\" }, { cN: \"strong\", b: \"[*_]{2}.+?[*_]{2}\" }, { cN: \"emphasis\", v: [{ b: \"\\\\*.+?\\\\*\" }, { b: \"_.+?_\", r: 0 }] }, { cN: \"quote\", b: \"^>\\\\s+\", e: \"$\" }, { cN: \"code\", v: [{ b: \"^```w*s*$\", e: \"^```s*$\" }, { b: \"`.+?`\" }, { b: \"^( {4}|\t)\", e: \"$\", r: 0 }] }, { b: \"^[-\\\\*]{3,}\", e: \"$\" }, { b: \"\\\\[.+?\\\\][\\\\(\\\\[].*?[\\\\)\\\\]]\", rB: !0, c: [{ cN: \"string\", b: \"\\\\[\", e: \"\\\\]\", eB: !0, rE: !0, r: 0 }, { cN: \"link\", b: \"\\\\]\\\\(\", e: \"\\\\)\", eB: !0, eE: !0 }, { cN: \"symbol\", b: \"\\\\]\\\\[\", e: \"\\\\]\", eB: !0, eE: !0 }], r: 10 }, { b: /^\\[[^\\n]+\\]:/, rB: !0, c: [{ cN: \"symbol\", b: /\\[/, e: /\\]/, eB: !0, eE: !0 }, { cN: \"link\", b: /:\\s*/, e: /$/, eB: !0 }] }] };\n});hljs.registerLanguage(\"ini\", function (e) {\n var b = { cN: \"string\", c: [e.BE], v: [{ b: \"'''\", e: \"'''\", r: 10 }, { b: '\"\"\"', e: '\"\"\"', r: 10 }, { b: '\"', e: '\"' }, { b: \"'\", e: \"'\" }] };return { aliases: [\"toml\"], cI: !0, i: /\\S/, c: [e.C(\";\", \"$\"), e.HCM, { cN: \"section\", b: /^\\s*\\[+/, e: /\\]+/ }, { b: /^[a-z0-9\\[\\]_-]+\\s*=\\s*/, e: \"$\", rB: !0, c: [{ cN: \"attr\", b: /[a-z0-9\\[\\]_-]+/ }, { b: /=/, eW: !0, r: 0, c: [{ cN: \"literal\", b: /\\bon|off|true|false|yes|no\\b/ }, { cN: \"variable\", v: [{ b: /\\$[\\w\\d\"][\\w\\d_]*/ }, { b: /\\$\\{(.*?)}/ }] }, b, { cN: \"number\", b: /([\\+\\-]+)?[\\d]+_[\\d_]+/ }, e.NM] }] }] };\n});hljs.registerLanguage(\"python\", function (e) {\n var r = { cN: \"meta\", b: /^(>>>|\\.\\.\\.) / },\n b = { cN: \"string\", c: [e.BE], v: [{ b: /(u|b)?r?'''/, e: /'''/, c: [r], r: 10 }, { b: /(u|b)?r?\"\"\"/, e: /\"\"\"/, c: [r], r: 10 }, { b: /(u|r|ur)'/, e: /'/, r: 10 }, { b: /(u|r|ur)\"/, e: /\"/, r: 10 }, { b: /(b|br)'/, e: /'/ }, { b: /(b|br)\"/, e: /\"/ }, e.ASM, e.QSM] },\n a = { cN: \"number\", r: 0, v: [{ b: e.BNR + \"[lLjJ]?\" }, { b: \"\\\\b(0o[0-7]+)[lLjJ]?\" }, { b: e.CNR + \"[lLjJ]?\" }] },\n l = { cN: \"params\", b: /\\(/, e: /\\)/, c: [\"self\", r, a, b] };return { aliases: [\"py\", \"gyp\"], k: { keyword: \"and elif is global as in if from raise for except finally print import pass return exec else break not with class assert yield try while continue del or def lambda async await nonlocal|10 None True False\", built_in: \"Ellipsis NotImplemented\" }, i: /(<\\/|->|\\?)|=>/, c: [r, a, b, e.HCM, { v: [{ cN: \"function\", bK: \"def\" }, { cN: \"class\", bK: \"class\" }], e: /:/, i: /[${=;\\n,]/, c: [e.UTM, l, { b: /->/, eW: !0, k: \"None\" }] }, { cN: \"meta\", b: /^[\\t ]*@/, e: /$/ }, { b: /\\b(print|exec)\\(/ }] };\n});hljs.registerLanguage(\"css\", function (e) {\n var c = \"[a-zA-Z-][a-zA-Z0-9_-]*\",\n t = { b: /[A-Z\\_\\.\\-]+\\s*:/, rB: !0, e: \";\", eW: !0, c: [{ cN: \"attribute\", b: /\\S/, e: \":\", eE: !0, starts: { eW: !0, eE: !0, c: [{ b: /[\\w-]+\\(/, rB: !0, c: [{ cN: \"built_in\", b: /[\\w-]+/ }, { b: /\\(/, e: /\\)/, c: [e.ASM, e.QSM] }] }, e.CSSNM, e.QSM, e.ASM, e.CBCM, { cN: \"number\", b: \"#[0-9A-Fa-f]+\" }, { cN: \"meta\", b: \"!important\" }] } }] };return { cI: !0, i: /[=\\/|'\\$]/, c: [e.CBCM, { cN: \"selector-id\", b: /#[A-Za-z0-9_-]+/ }, { cN: \"selector-class\", b: /\\.[A-Za-z0-9_-]+/ }, { cN: \"selector-attr\", b: /\\[/, e: /\\]/, i: \"$\" }, { cN: \"selector-pseudo\", b: /:(:)?[a-zA-Z0-9\\_\\-\\+\\(\\)\"'.]+/ }, { b: \"@(font-face|page)\", l: \"[a-z-]+\", k: \"font-face page\" }, { b: \"@\", e: \"[{;]\", i: /:/, c: [{ cN: \"keyword\", b: /\\w+/ }, { b: /\\s/, eW: !0, eE: !0, r: 0, c: [e.ASM, e.QSM, e.CSSNM] }] }, { cN: \"selector-tag\", b: c, r: 0 }, { b: \"{\", e: \"}\", i: /\\S/, c: [e.CBCM, t] }] };\n});hljs.registerLanguage(\"less\", function (e) {\n var r = \"[\\\\w-]+\",\n t = \"(\" + r + \"|@{\" + r + \"})\",\n a = [],\n c = [],\n s = function s(e) {\n return { cN: \"string\", b: \"~?\" + e + \".*?\" + e };\n },\n b = function b(e, r, t) {\n return { cN: e, b: r, r: t };\n },\n n = { b: \"\\\\(\", e: \"\\\\)\", c: c, r: 0 };c.push(e.CLCM, e.CBCM, s(\"'\"), s('\"'), e.CSSNM, { b: \"(url|data-uri)\\\\(\", starts: { cN: \"string\", e: \"[\\\\)\\\\n]\", eE: !0 } }, b(\"number\", \"#[0-9A-Fa-f]+\\\\b\"), n, b(\"variable\", \"@@?\" + r, 10), b(\"variable\", \"@{\" + r + \"}\"), b(\"built_in\", \"~?`[^`]*?`\"), { cN: \"attribute\", b: r + \"\\\\s*:\", e: \":\", rB: !0, eE: !0 }, { cN: \"meta\", b: \"!important\" });var i = c.concat({ b: \"{\", e: \"}\", c: a }),\n o = { bK: \"when\", eW: !0, c: [{ bK: \"and not\" }].concat(c) },\n u = { b: t + \"\\\\s*:\", rB: !0, e: \"[;}]\", r: 0, c: [{ cN: \"attribute\", b: t, e: \":\", eE: !0, starts: { eW: !0, i: \"[<=$]\", r: 0, c: c } }] },\n l = { cN: \"keyword\", b: \"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\\\b\", starts: { e: \"[;{}]\", rE: !0, c: c, r: 0 } },\n C = { cN: \"variable\", v: [{ b: \"@\" + r + \"\\\\s*:\", r: 15 }, { b: \"@\" + r }], starts: { e: \"[;}]\", rE: !0, c: i } },\n p = { v: [{ b: \"[\\\\.#:&\\\\[>]\", e: \"[;{}]\" }, { b: t, e: \"{\" }], rB: !0, rE: !0, i: \"[<='$\\\"]\", r: 0, c: [e.CLCM, e.CBCM, o, b(\"keyword\", \"all\\\\b\"), b(\"variable\", \"@{\" + r + \"}\"), b(\"selector-tag\", t + \"%?\", 0), b(\"selector-id\", \"#\" + t), b(\"selector-class\", \"\\\\.\" + t, 0), b(\"selector-tag\", \"&\", 0), { cN: \"selector-attr\", b: \"\\\\[\", e: \"\\\\]\" }, { cN: \"selector-pseudo\", b: /:(:)?[a-zA-Z0-9\\_\\-\\+\\(\\)\"'.]+/ }, { b: \"\\\\(\", e: \"\\\\)\", c: i }, { b: \"!important\" }] };return a.push(e.CLCM, e.CBCM, l, C, u, p), { cI: !0, i: \"[=>'/<($\\\"]\", c: a };\n});hljs.registerLanguage(\"scss\", function (e) {\n var t = \"[a-zA-Z-][a-zA-Z0-9_-]*\",\n i = { cN: \"variable\", b: \"(\\\\$\" + t + \")\\\\b\" },\n r = { cN: \"number\", b: \"#[0-9A-Fa-f]+\" };({ cN: \"attribute\", b: \"[A-Z\\\\_\\\\.\\\\-]+\", e: \":\", eE: !0, i: \"[^\\\\s]\", starts: { eW: !0, eE: !0, c: [r, e.CSSNM, e.QSM, e.ASM, e.CBCM, { cN: \"meta\", b: \"!important\" }] } });return { cI: !0, i: \"[=/|']\", c: [e.CLCM, e.CBCM, { cN: \"selector-id\", b: \"\\\\#[A-Za-z0-9_-]+\", r: 0 }, { cN: \"selector-class\", b: \"\\\\.[A-Za-z0-9_-]+\", r: 0 }, { cN: \"selector-attr\", b: \"\\\\[\", e: \"\\\\]\", i: \"$\" }, { cN: \"selector-tag\", b: \"\\\\b(a|abbr|acronym|address|area|article|aside|audio|b|base|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|div|dl|dt|em|embed|fieldset|figcaption|figure|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|map|mark|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|samp|script|section|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|ul|var|video)\\\\b\", r: 0 }, { b: \":(visited|valid|root|right|required|read-write|read-only|out-range|optional|only-of-type|only-child|nth-of-type|nth-last-of-type|nth-last-child|nth-child|not|link|left|last-of-type|last-child|lang|invalid|indeterminate|in-range|hover|focus|first-of-type|first-line|first-letter|first-child|first|enabled|empty|disabled|default|checked|before|after|active)\" }, { b: \"::(after|before|choices|first-letter|first-line|repeat-index|repeat-item|selection|value)\" }, i, { cN: \"attribute\", b: \"\\\\b(z-index|word-wrap|word-spacing|word-break|width|widows|white-space|visibility|vertical-align|unicode-bidi|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform-style|transform-origin|transform|top|text-underline-position|text-transform|text-shadow|text-rendering|text-overflow|text-indent|text-decoration-style|text-decoration-line|text-decoration-color|text-decoration|text-align-last|text-align|tab-size|table-layout|right|resize|quotes|position|pointer-events|perspective-origin|perspective|page-break-inside|page-break-before|page-break-after|padding-top|padding-right|padding-left|padding-bottom|padding|overflow-y|overflow-x|overflow-wrap|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|order|opacity|object-position|object-fit|normal|none|nav-up|nav-right|nav-left|nav-index|nav-down|min-width|min-height|max-width|max-height|mask|marks|margin-top|margin-right|margin-left|margin-bottom|margin|list-style-type|list-style-position|list-style-image|list-style|line-height|letter-spacing|left|justify-content|initial|inherit|ime-mode|image-orientation|image-resolution|image-rendering|icon|hyphens|height|font-weight|font-variant-ligatures|font-variant|font-style|font-stretch|font-size-adjust|font-size|font-language-override|font-kerning|font-feature-settings|font-family|font|float|flex-wrap|flex-shrink|flex-grow|flex-flow|flex-direction|flex-basis|flex|filter|empty-cells|display|direction|cursor|counter-reset|counter-increment|content|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|columns|color|clip-path|clip|clear|caption-side|break-inside|break-before|break-after|box-sizing|box-shadow|box-decoration-break|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-left-width|border-left-style|border-left-color|border-left|border-image-width|border-image-source|border-image-slice|border-image-repeat|border-image-outset|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-attachment|background-blend-mode|background|backface-visibility|auto|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation|align-self|align-items|align-content)\\\\b\", i: \"[^\\\\s]\" }, { b: \"\\\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\\\b\" }, { b: \":\", e: \";\", c: [i, r, e.CSSNM, e.QSM, e.ASM, { cN: \"meta\", b: \"!important\" }] }, { b: \"@\", e: \"[{;]\", k: \"mixin include extend for if else each while charset import debug media page content font-face namespace warn\", c: [i, e.QSM, e.ASM, r, e.CSSNM, { b: \"\\\\s[A-Za-z0-9_.-]+\", r: 0 }] }] };\n});hljs.registerLanguage(\"json\", function (e) {\n var i = { literal: \"true false null\" },\n n = [e.QSM, e.CNM],\n r = { e: \",\", eW: !0, eE: !0, c: n, k: i },\n t = { b: \"{\", e: \"}\", c: [{ cN: \"attr\", b: /\"/, e: /\"/, c: [e.BE], i: \"\\\\n\" }, e.inherit(r, { b: /:/ })], i: \"\\\\S\" },\n c = { b: \"\\\\[\", e: \"\\\\]\", c: [e.inherit(r)], i: \"\\\\S\" };return n.splice(n.length, 0, t, c), { c: n, k: i, i: \"\\\\S\" };\n});hljs.registerLanguage(\"javascript\", function (e) {\n var r = \"[A-Za-z$_][0-9A-Za-z$_]*\",\n t = { keyword: \"in of if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await static import from as\", literal: \"true false null undefined NaN Infinity\", built_in: \"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Promise\" },\n a = { cN: \"number\", v: [{ b: \"\\\\b(0[bB][01]+)\" }, { b: \"\\\\b(0[oO][0-7]+)\" }, { b: e.CNR }], r: 0 },\n n = { cN: \"subst\", b: \"\\\\$\\\\{\", e: \"\\\\}\", k: t, c: [] },\n c = { cN: \"string\", b: \"`\", e: \"`\", c: [e.BE, n] };n.c = [e.ASM, e.QSM, c, a, e.RM];var s = n.c.concat([e.CBCM, e.CLCM]);return { aliases: [\"js\", \"jsx\"], k: t, c: [{ cN: \"meta\", r: 10, b: /^\\s*['\"]use (strict|asm)['\"]/ }, { cN: \"meta\", b: /^#!/, e: /$/ }, e.ASM, e.QSM, c, e.CLCM, e.CBCM, a, { b: /[{,]\\s*/, r: 0, c: [{ b: r + \"\\\\s*:\", rB: !0, r: 0, c: [{ cN: \"attr\", b: r, r: 0 }] }] }, { b: \"(\" + e.RSR + \"|\\\\b(case|return|throw)\\\\b)\\\\s*\", k: \"return throw case\", c: [e.CLCM, e.CBCM, e.RM, { cN: \"function\", b: \"(\\\\(.*?\\\\)|\" + r + \")\\\\s*=>\", rB: !0, e: \"\\\\s*=>\", c: [{ cN: \"params\", v: [{ b: r }, { b: /\\(\\s*\\)/ }, { b: /\\(/, e: /\\)/, eB: !0, eE: !0, k: t, c: s }] }] }, { b: //, sL: \"xml\", c: [{ b: /<\\w+\\s*\\/>/, skip: !0 }, { b: /<\\w+/, e: /(\\/\\w+|\\w+\\/)>/, skip: !0, c: [{ b: /<\\w+\\s*\\/>/, skip: !0 }, \"self\"] }] }], r: 0 }, { cN: \"function\", bK: \"function\", e: /\\{/, eE: !0, c: [e.inherit(e.TM, { b: r }), { cN: \"params\", b: /\\(/, e: /\\)/, eB: !0, eE: !0, c: s }], i: /\\[|%/ }, { b: /\\$[(.]/ }, e.METHOD_GUARD, { cN: \"class\", bK: \"class\", e: /[{;=]/, eE: !0, i: /[:\"\\[\\]]/, c: [{ bK: \"extends\" }, e.UTM] }, { bK: \"constructor\", e: /\\{/, eE: !0 }], i: /#(?!!)/ };\n});hljs.registerLanguage(\"bash\", function (e) {\n var t = { cN: \"variable\", v: [{ b: /\\$[\\w\\d#@][\\w\\d_]*/ }, { b: /\\$\\{(.*?)}/ }] },\n s = { cN: \"string\", b: /\"/, e: /\"/, c: [e.BE, t, { cN: \"variable\", b: /\\$\\(/, e: /\\)/, c: [e.BE] }] },\n a = { cN: \"string\", b: /'/, e: /'/ };return { aliases: [\"sh\", \"zsh\"], l: /-?[a-z\\._]+/, k: { keyword: \"if then else elif fi for while in do done case esac function\", literal: \"true false\", built_in: \"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp\", _: \"-ne -eq -lt -gt -f -d -e -s -l -a\" }, c: [{ cN: \"meta\", b: /^#![^\\n]+sh\\s*$/, r: 10 }, { cN: \"function\", b: /\\w[\\w\\d_]*\\s*\\(\\s*\\)\\s*\\{/, rB: !0, c: [e.inherit(e.TM, { b: /\\w[\\w\\d_]*/ })], r: 0 }, e.HCM, s, a, t] };\n});\n\n},{}],2:[function(require,module,exports){\n!function(t,e){\"function\"==typeof define&&define.amd?define([\"jquery\"],function(t){return e(t)}):\"object\"==typeof exports?module.exports=e(require(\"jquery\")):e(jQuery)}(this,function(t){var e,i;i={ESC:27,TAB:9,ENTER:13,CTRL:17,A:65,P:80,N:78,LEFT:37,UP:38,RIGHT:39,DOWN:40,BACKSPACE:8,SPACE:32},e={beforeSave:function(t){return r.arrayToDefaultHash(t)},matcher:function(t,e,i,n){var r,o,s,a,h;return t=t.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g,\"\\\\$&\"),i&&(t=\"(?:^|\\\\s)\"+t),r=decodeURI(\"%C3%80\"),o=decodeURI(\"%C3%BF\"),h=n?\" \":\"\",a=new RegExp(t+\"([A-Za-z\"+r+\"-\"+o+\"0-9_\"+h+\"'.+-]*)$|\"+t+\"([^\\\\x00-\\\\xff]*)$\",\"gi\"),s=a.exec(e),s?s[2]||s[1]:null},filter:function(t,e,i){var n,r,o,s;for(n=[],r=0,s=e.length;s>r;r++)o=e[r],~new String(o[i]).toLowerCase().indexOf(t.toLowerCase())&&n.push(o);return n},remoteFilter:null,sorter:function(t,e,i){var n,r,o,s;if(!t)return e;for(n=[],r=0,s=e.length;s>r;r++)o=e[r],o.atwho_order=new String(o[i]).toLowerCase().indexOf(t.toLowerCase()),o.atwho_order>-1&&n.push(o);return n.sort(function(t,e){return t.atwho_order-e.atwho_order})},tplEval:function(t,e){var i,n,r;r=t;try{return\"string\"!=typeof t&&(r=t(e)),r.replace(/\\$\\{([^\\}]*)\\}/g,function(t,i,n){return e[i]})}catch(n){return i=n,\"\"}},highlighter:function(t,e){var i;return e?(i=new RegExp(\">\\\\s*([^<]*?)(\"+e.replace(\"+\",\"\\\\+\")+\")([^<]*)\\\\s*<\",\"ig\"),t.replace(i,function(t,e,i,n){return\"> \"+e+\"\"+i+\"\"+n+\" <\"})):t},beforeInsert:function(t,e,i){return t},beforeReposition:function(t){return t},afterMatchFailed:function(t,e){}};var n;n=function(){function e(e){this.currentFlag=null,this.controllers={},this.aliasMaps={},this.$inputor=t(e),this.setupRootElement(),this.listen()}return e.prototype.createContainer=function(e){var i;return null!=(i=this.$el)&&i.remove(),t(e.body).append(this.$el=t(\"
          \"))},e.prototype.setupRootElement=function(e,i){var n,r;if(null==i&&(i=!1),e)this.window=e.contentWindow,this.document=e.contentDocument||this.window.document,this.iframe=e;else{this.document=this.$inputor[0].ownerDocument,this.window=this.document.defaultView||this.document.parentWindow;try{this.iframe=this.window.frameElement}catch(r){if(n=r,this.iframe=null,t.fn.atwho.debug)throw new Error(\"iframe auto-discovery is failed.\\nPlease use `setIframe` to set the target iframe manually.\\n\"+n)}}return this.createContainer((this.iframeAsRoot=i)?this.document:document)},e.prototype.controller=function(t){var e,i,n,r;if(this.aliasMaps[t])i=this.controllers[this.aliasMaps[t]];else{r=this.controllers;for(n in r)if(e=r[n],n===t){i=e;break}}return i?i:this.controllers[this.currentFlag]},e.prototype.setContextFor=function(t){return this.currentFlag=t,this},e.prototype.reg=function(t,e){var i,n;return n=(i=this.controllers)[t]||(i[t]=this.$inputor.is(\"[contentEditable]\")?new l(this,t):new s(this,t)),e.alias&&(this.aliasMaps[e.alias]=t),n.init(e),this},e.prototype.listen=function(){return this.$inputor.on(\"compositionstart\",function(t){return function(e){var i;return null!=(i=t.controller())&&i.view.hide(),t.isComposing=!0,null}}(this)).on(\"compositionend\",function(t){return function(e){return t.isComposing=!1,setTimeout(function(e){return t.dispatch(e)}),null}}(this)).on(\"keyup.atwhoInner\",function(t){return function(e){return t.onKeyup(e)}}(this)).on(\"keydown.atwhoInner\",function(t){return function(e){return t.onKeydown(e)}}(this)).on(\"blur.atwhoInner\",function(t){return function(e){var i;return(i=t.controller())?(i.expectedQueryCBId=null,i.view.hide(e,i.getOpt(\"displayTimeout\"))):void 0}}(this)).on(\"click.atwhoInner\",function(t){return function(e){return t.dispatch(e)}}(this)).on(\"scroll.atwhoInner\",function(t){return function(){var e;return e=t.$inputor.scrollTop(),function(i){var n,r;return n=i.target.scrollTop,e!==n&&null!=(r=t.controller())&&r.view.hide(i),e=n,!0}}}(this)())},e.prototype.shutdown=function(){var t,e,i;i=this.controllers;for(t in i)e=i[t],e.destroy(),delete this.controllers[t];return this.$inputor.off(\".atwhoInner\"),this.$el.remove()},e.prototype.dispatch=function(t){var e,i,n,r;n=this.controllers,r=[];for(e in n)i=n[e],r.push(i.lookUp(t));return r},e.prototype.onKeyup=function(e){var n;switch(e.keyCode){case i.ESC:e.preventDefault(),null!=(n=this.controller())&&n.view.hide();break;case i.DOWN:case i.UP:case i.CTRL:case i.ENTER:t.noop();break;case i.P:case i.N:e.ctrlKey||this.dispatch(e);break;default:this.dispatch(e)}},e.prototype.onKeydown=function(e){var n,r;if(r=null!=(n=this.controller())?n.view:void 0,r&&r.visible())switch(e.keyCode){case i.ESC:e.preventDefault(),r.hide(e);break;case i.UP:e.preventDefault(),r.prev();break;case i.DOWN:e.preventDefault(),r.next();break;case i.P:if(!e.ctrlKey)return;e.preventDefault(),r.prev();break;case i.N:if(!e.ctrlKey)return;e.preventDefault(),r.next();break;case i.TAB:case i.ENTER:case i.SPACE:if(!r.visible())return;if(!this.controller().getOpt(\"spaceSelectsMatch\")&&e.keyCode===i.SPACE)return;if(!this.controller().getOpt(\"tabSelectsMatch\")&&e.keyCode===i.TAB)return;r.highlighted()?(e.preventDefault(),r.choose(e)):r.hide(e);break;default:t.noop()}},e}();var r,o=[].slice;r=function(){function i(e,i){this.app=e,this.at=i,this.$inputor=this.app.$inputor,this.id=this.$inputor[0].id||this.uid(),this.expectedQueryCBId=null,this.setting=null,this.query=null,this.pos=0,this.range=null,0===(this.$el=t(\"#atwho-ground-\"+this.id,this.app.$el)).length&&this.app.$el.append(this.$el=t(\"
          \")),this.model=new u(this),this.view=new c(this)}return i.prototype.uid=function(){return(Math.random().toString(16)+\"000000000\").substr(2,8)+(new Date).getTime()},i.prototype.init=function(e){return this.setting=t.extend({},this.setting||t.fn.atwho[\"default\"],e),this.view.init(),this.model.reload(this.setting.data)},i.prototype.destroy=function(){return this.trigger(\"beforeDestroy\"),this.model.destroy(),this.view.destroy(),this.$el.remove()},i.prototype.callDefault=function(){var i,n,r,s;s=arguments[0],i=2<=arguments.length?o.call(arguments,1):[];try{return e[s].apply(this,i)}catch(r){return n=r,t.error(n+\" Or maybe At.js doesn't have function \"+s)}},i.prototype.trigger=function(t,e){var i,n;return null==e&&(e=[]),e.push(this),i=this.getOpt(\"alias\"),n=i?t+\"-\"+i+\".atwho\":t+\".atwho\",this.$inputor.trigger(n,e)},i.prototype.callbacks=function(t){return this.getOpt(\"callbacks\")[t]||e[t]},i.prototype.getOpt=function(t,e){var i,n;try{return this.setting[t]}catch(n){return i=n,null}},i.prototype.insertContentFor=function(e){var i,n;return n=this.getOpt(\"insertTpl\"),i=t.extend({},e.data(\"item-data\"),{\"atwho-at\":this.at}),this.callbacks(\"tplEval\").call(this,n,i,\"onInsert\")},i.prototype.renderView=function(t){var e;return e=this.getOpt(\"searchKey\"),t=this.callbacks(\"sorter\").call(this,this.query.text,t.slice(0,1001),e),this.view.render(t.slice(0,this.getOpt(\"limit\")))},i.arrayToDefaultHash=function(e){var i,n,r,o;if(!t.isArray(e))return e;for(o=[],i=0,r=e.length;r>i;i++)n=e[i],t.isPlainObject(n)?o.push(n):o.push({name:n});return o},i.prototype.lookUp=function(t){var e,i;if((!t||\"click\"!==t.type||this.getOpt(\"lookUpOnClick\"))&&(!this.getOpt(\"suspendOnComposing\")||!this.app.isComposing))return(e=this.catchQuery(t))?(this.app.setContextFor(this.at),(i=this.getOpt(\"delay\"))?this._delayLookUp(e,i):this._lookUp(e),e):(this.expectedQueryCBId=null,e)},i.prototype._delayLookUp=function(t,e){var i,n;return i=Date.now?Date.now():(new Date).getTime(),this.previousCallTime||(this.previousCallTime=i),n=e-(i-this.previousCallTime),n>0&&e>n?(this.previousCallTime=i,this._stopDelayedCall(),this.delayedCallTimeout=setTimeout(function(e){return function(){return e.previousCallTime=0,e.delayedCallTimeout=null,e._lookUp(t)}}(this),e)):(this._stopDelayedCall(),this.previousCallTime!==i&&(this.previousCallTime=0),this._lookUp(t))},i.prototype._stopDelayedCall=function(){return this.delayedCallTimeout?(clearTimeout(this.delayedCallTimeout),this.delayedCallTimeout=null):void 0},i.prototype._generateQueryCBId=function(){return{}},i.prototype._lookUp=function(e){var i;return i=function(t,e){return t===this.expectedQueryCBId?e&&e.length>0?this.renderView(this.constructor.arrayToDefaultHash(e)):this.view.hide():void 0},this.expectedQueryCBId=this._generateQueryCBId(),this.model.query(e.text,t.proxy(i,this,this.expectedQueryCBId))},i}();var s,a=function(t,e){function i(){this.constructor=t}for(var n in e)h.call(e,n)&&(t[n]=e[n]);return i.prototype=e.prototype,t.prototype=new i,t.__super__=e.prototype,t},h={}.hasOwnProperty;s=function(e){function i(){return i.__super__.constructor.apply(this,arguments)}return a(i,e),i.prototype.catchQuery=function(){var t,e,i,n,r,o,s;return e=this.$inputor.val(),t=this.$inputor.caret(\"pos\",{iframe:this.app.iframe}),s=e.slice(0,t),r=this.callbacks(\"matcher\").call(this,this.at,s,this.getOpt(\"startWithSpace\"),this.getOpt(\"acceptSpaceBar\")),n=\"string\"==typeof r,n&&r.length0?t.getRangeAt(0):void 0},n.prototype._setRange=function(e,i,n){return null==n&&(n=this._getRange()),n&&i?(i=t(i)[0],\"after\"===e?(n.setEndAfter(i),n.setStartAfter(i)):(n.setEndBefore(i),n.setStartBefore(i)),n.collapse(!1),this._clearRange(n)):void 0},n.prototype._clearRange=function(t){var e;return null==t&&(t=this._getRange()),e=this.app.window.getSelection(),null==this.ctrl_a_pressed?(e.removeAllRanges(),e.addRange(t)):void 0},n.prototype._movingEvent=function(t){var e;return\"click\"===t.type||(e=t.which)===i.RIGHT||e===i.LEFT||e===i.UP||e===i.DOWN},n.prototype._unwrap=function(e){var i;return e=t(e).unwrap().get(0),(i=e.nextSibling)&&i.nodeValue&&(e.nodeValue+=i.nodeValue,t(i).remove()),e},n.prototype.catchQuery=function(e){var n,r,o,s,a,h,l,u,c,p,f,d;if((d=this._getRange())&&d.collapsed){if(e.which===i.ENTER)return(r=t(d.startContainer).closest(\".atwho-query\")).contents().unwrap(),r.is(\":empty\")&&r.remove(),(r=t(\".atwho-query\",this.app.document)).text(r.text()).contents().last().unwrap(),void this._clearRange();if(/firefox/i.test(navigator.userAgent)){if(t(d.startContainer).is(this.$inputor))return void this._clearRange();e.which===i.BACKSPACE&&d.startContainer.nodeType===document.ELEMENT_NODE&&(c=d.startOffset-1)>=0?(o=d.cloneRange(),o.setStart(d.startContainer,c),t(o.cloneContents()).contents().last().is(\".atwho-inserted\")&&(a=t(d.startContainer).contents().get(c),this._setRange(\"after\",t(a).contents().last()))):e.which===i.LEFT&&d.startContainer.nodeType===document.TEXT_NODE&&(n=t(d.startContainer.previousSibling),n.is(\".atwho-inserted\")&&0===d.startOffset&&this._setRange(\"after\",n.contents().last()))}if(t(d.startContainer).closest(\".atwho-inserted\").addClass(\"atwho-query\").siblings().removeClass(\"atwho-query\"),(r=t(\".atwho-query\",this.app.document)).length>0&&r.is(\":empty\")&&0===r.text().length&&r.remove(),this._movingEvent(e)||r.removeClass(\"atwho-inserted\"),r.length>0)switch(e.which){case i.LEFT:return this._setRange(\"before\",r.get(0),d),void r.removeClass(\"atwho-query\");case i.RIGHT:return this._setRange(\"after\",r.get(0).nextSibling,d),void r.removeClass(\"atwho-query\")}if(r.length>0&&(f=r.attr(\"data-atwho-at-query\"))&&(r.empty().html(f).attr(\"data-atwho-at-query\",null),this._setRange(\"after\",r.get(0),d)),o=d.cloneRange(),o.setStart(d.startContainer,0),u=this.callbacks(\"matcher\").call(this,this.at,o.toString(),this.getOpt(\"startWithSpace\"),this.getOpt(\"acceptSpaceBar\")),h=\"string\"==typeof u,0===r.length&&h&&(s=d.startOffset-this.at.length-u.length)>=0&&(d.setStart(d.startContainer,s),r=t(\"\",this.app.document).attr(this.getOpt(\"editableAtwhoQueryAttrs\")).addClass(\"atwho-query\"),d.surroundContents(r.get(0)),l=r.contents().last().get(0),l&&(/firefox/i.test(navigator.userAgent)?(d.setStart(l,l.length),d.setEnd(l,l.length),this._clearRange(d)):this._setRange(\"after\",l,d))),!(h&&u.length=0&&(this._movingEvent(e)&&r.hasClass(\"atwho-inserted\")?r.removeClass(\"atwho-query\"):!1!==this.callbacks(\"afterMatchFailed\").call(this,this.at,r)&&this._setRange(\"after\",this._unwrap(r.text(r.text()).contents().first()))),null)}},n.prototype.rect=function(){var e,i,n;return(n=this.query.el.offset())?(this.app.iframe&&!this.app.iframeAsRoot&&(i=(e=t(this.app.iframe)).offset(),n.left+=i.left-this.$inputor.scrollLeft(),n.top+=i.top-this.$inputor.scrollTop()),n.bottom=n.top+this.query.el.height(),n):void 0},n.prototype.insert=function(t,e){var i,n,r,o;return this.$inputor.is(\":focus\")||this.$inputor.focus(),r=\"\"===(r=this.getOpt(\"suffix\"))?r:r||\" \",i=e.data(\"item-data\"),this.query.el.removeClass(\"atwho-query\").addClass(\"atwho-inserted\").html(t).attr(\"data-atwho-at-query\",\"\"+i[\"atwho-at\"]+this.query.text).attr(\"contenteditable\",\"false\"),(n=this._getRange())&&(this.query.el.length&&n.setEndAfter(this.query.el[0]),n.collapse(!1),n.insertNode(o=this.app.document.createTextNode(\"\"+r)),this._setRange(\"after\",o,n)),this.$inputor.is(\":focus\")||this.$inputor.focus(),this.$inputor.change()},n}(r);var u;u=function(){function e(t){this.context=t,this.at=this.context.at,this.storage=this.context.$inputor}return e.prototype.destroy=function(){return this.storage.data(this.at,null)},e.prototype.saved=function(){return this.fetch()>0},e.prototype.query=function(t,e){var i,n,r;return n=this.fetch(),r=this.context.getOpt(\"searchKey\"),n=this.context.callbacks(\"filter\").call(this.context,t,n,r)||[],i=this.context.callbacks(\"remoteFilter\"),n.length>0||!i&&0===n.length?e(n):i.call(this.context,t,e)},e.prototype.fetch=function(){return this.storage.data(this.at)||[]},e.prototype.save=function(t){return this.storage.data(this.at,this.context.callbacks(\"beforeSave\").call(this.context,t||[]))},e.prototype.load=function(t){return!this.saved()&&t?this._load(t):void 0},e.prototype.reload=function(t){return this._load(t)},e.prototype._load=function(e){return\"string\"==typeof e?t.ajax(e,{dataType:\"json\"}).done(function(t){return function(e){return t.save(e)}}(this)):this.save(e)},e}();var c;c=function(){function e(e){this.context=e,this.$el=t(\"
            \"),this.$elUl=this.$el.children(),this.timeoutID=null,this.context.$el.append(this.$el),this.bindEvent()}return e.prototype.init=function(){var t,e;return e=this.context.getOpt(\"alias\")||this.context.at.charCodeAt(0),t=this.context.getOpt(\"headerTpl\"),t&&1===this.$el.children().length&&this.$el.prepend(t),this.$el.attr({id:\"at-view-\"+e})},e.prototype.destroy=function(){return this.$el.remove()},e.prototype.bindEvent=function(){var e,i,n;return e=this.$el.find(\"ul\"),i=0,n=0,e.on(\"mousemove.atwho-view\",\"li\",function(r){return function(r){var o;if((i!==r.clientX||n!==r.clientY)&&(i=r.clientX,n=r.clientY,o=t(r.currentTarget),!o.hasClass(\"cur\")))return e.find(\".cur\").removeClass(\"cur\"),o.addClass(\"cur\")}}(this)).on(\"click.atwho-view\",\"li\",function(i){return function(n){return e.find(\".cur\").removeClass(\"cur\"),t(n.currentTarget).addClass(\"cur\"),i.choose(n),n.preventDefault()}}(this))},e.prototype.visible=function(){return t.expr.filters.visible(this.$el[0])},e.prototype.highlighted=function(){return this.$el.find(\".cur\").length>0},e.prototype.choose=function(t){var e,i;return(e=this.$el.find(\".cur\")).length&&(i=this.context.insertContentFor(e),this.context._stopDelayedCall(),this.context.insert(this.context.callbacks(\"beforeInsert\").call(this.context,i,e,t),e),this.context.trigger(\"inserted\",[e,t]),this.hide(t)),this.context.getOpt(\"hideWithoutSuffix\")?this.stopShowing=!0:void 0},e.prototype.reposition=function(e){var i,n,r,o;return i=this.context.app.iframeAsRoot?this.context.app.window:window,e.bottom+this.$el.height()-t(i).scrollTop()>t(i).height()&&(e.bottom=e.top-this.$el.height()),e.left>(r=t(i).width()-this.$el.width()-5)&&(e.left=r),n={left:e.left,top:e.bottom},null!=(o=this.context.callbacks(\"beforeReposition\"))&&o.call(this.context,n),this.$el.offset(n),this.context.trigger(\"reposition\",[n])},e.prototype.next=function(){var t,e,i,n;return t=this.$el.find(\".cur\").removeClass(\"cur\"),e=t.next(),e.length||(e=this.$el.find(\"li:first\")),e.addClass(\"cur\"),i=e[0],n=i.offsetTop+i.offsetHeight+(i.nextSibling?i.nextSibling.offsetHeight:0),this.scrollTop(Math.max(0,n-this.$el.height()))},e.prototype.prev=function(){var t,e,i,n;return t=this.$el.find(\".cur\").removeClass(\"cur\"),i=t.prev(),i.length||(i=this.$el.find(\"li:last\")),i.addClass(\"cur\"),n=i[0],e=n.offsetTop+n.offsetHeight+(n.nextSibling?n.nextSibling.offsetHeight:0),this.scrollTop(Math.max(0,e-this.$el.height()))},e.prototype.scrollTop=function(t){var e;return e=this.context.getOpt(\"scrollDuration\"),e?this.$elUl.animate({scrollTop:t},e):this.$elUl.scrollTop(t)},e.prototype.show=function(){var t;return this.stopShowing?void(this.stopShowing=!1):(this.visible()||(this.$el.show(),this.$el.scrollTop(0),this.context.trigger(\"shown\")),(t=this.context.rect())?this.reposition(t):void 0)},e.prototype.hide=function(t,e){var i;if(this.visible())return isNaN(e)?(this.$el.hide(),this.context.trigger(\"hidden\",[t])):(i=function(t){return function(){return t.hide()}}(this),clearTimeout(this.timeoutID),this.timeoutID=setTimeout(i,e))},e.prototype.render=function(e){var i,n,r,o,s,a,h;if(!(t.isArray(e)&&e.length>0))return void this.hide();for(this.$el.find(\"ul\").empty(),n=this.$el.find(\"ul\"),h=this.context.getOpt(\"displayTpl\"),r=0,s=e.length;s>r;r++)o=e[r],o=t.extend({},o,{\"atwho-at\":this.context.at}),a=this.context.callbacks(\"tplEval\").call(this.context,h,o,\"onDisplay\"),i=t(this.context.callbacks(\"highlighter\").call(this.context,a,this.context.query.text)),i.data(\"item-data\",o),n.append(i);return this.show(),this.context.getOpt(\"highlightFirst\")?n.find(\"li:first\").addClass(\"cur\"):void 0},e}();var p;p={load:function(t,e){var i;return(i=this.controller(t))?i.model.load(e):void 0},isSelecting:function(){var t;return!!(null!=(t=this.controller())?t.view.visible():void 0)},hide:function(){var t;return null!=(t=this.controller())?t.view.hide():void 0},reposition:function(){var t;return(t=this.controller())?t.view.reposition(t.rect()):void 0},setIframe:function(t,e){return this.setupRootElement(t,e),null},run:function(){return this.dispatch()},destroy:function(){return this.shutdown(),this.$inputor.data(\"atwho\",null)}},t.fn.atwho=function(e){var i,r;return i=arguments,r=null,this.filter('textarea, input, [contenteditable=\"\"], [contenteditable=true]').each(function(){var o,s;return(s=(o=t(this)).data(\"atwho\"))||o.data(\"atwho\",s=new n(this)),\"object\"!=typeof e&&e?p[e]&&s?r=p[e].apply(s,Array.prototype.slice.call(i,1)):t.error(\"Method \"+e+\" does not exist on jQuery.atwho\"):s.reg(e.at,e)}),null!=r?r:this},t.fn.atwho[\"default\"]={at:void 0,alias:void 0,data:null,displayTpl:\"
          • ${name}
          • \",insertTpl:\"${atwho-at}${name}\",headerTpl:null,callbacks:e,searchKey:\"name\",suffix:void 0,hideWithoutSuffix:!1,startWithSpace:!0,acceptSpaceBar:!1,highlightFirst:!0,limit:5,maxLen:20,minLen:0,displayTimeout:300,delay:null,spaceSelectsMatch:!1,tabSelectsMatch:!0,editableAtwhoQueryAttrs:{},scrollDuration:150,suspendOnComposing:!0,lookUpOnClick:!0},t.fn.atwho.debug=!1});\n},{\"jquery\":38}],3:[function(require,module,exports){\n/* ========================================================================\n * Bootstrap: affix.js v3.3.7\n * http://getbootstrap.com/javascript/#affix\n * ========================================================================\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // AFFIX CLASS DEFINITION\n // ======================\n\n var Affix = function (element, options) {\n this.options = $.extend({}, Affix.DEFAULTS, options)\n\n this.$target = $(this.options.target)\n .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this))\n .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this))\n\n this.$element = $(element)\n this.affixed = null\n this.unpin = null\n this.pinnedOffset = null\n\n this.checkPosition()\n }\n\n Affix.VERSION = '3.3.7'\n\n Affix.RESET = 'affix affix-top affix-bottom'\n\n Affix.DEFAULTS = {\n offset: 0,\n target: window\n }\n\n Affix.prototype.getState = function (scrollHeight, height, offsetTop, offsetBottom) {\n var scrollTop = this.$target.scrollTop()\n var position = this.$element.offset()\n var targetHeight = this.$target.height()\n\n if (offsetTop != null && this.affixed == 'top') return scrollTop < offsetTop ? 'top' : false\n\n if (this.affixed == 'bottom') {\n if (offsetTop != null) return (scrollTop + this.unpin <= position.top) ? false : 'bottom'\n return (scrollTop + targetHeight <= scrollHeight - offsetBottom) ? false : 'bottom'\n }\n\n var initializing = this.affixed == null\n var colliderTop = initializing ? scrollTop : position.top\n var colliderHeight = initializing ? targetHeight : height\n\n if (offsetTop != null && scrollTop <= offsetTop) return 'top'\n if (offsetBottom != null && (colliderTop + colliderHeight >= scrollHeight - offsetBottom)) return 'bottom'\n\n return false\n }\n\n Affix.prototype.getPinnedOffset = function () {\n if (this.pinnedOffset) return this.pinnedOffset\n this.$element.removeClass(Affix.RESET).addClass('affix')\n var scrollTop = this.$target.scrollTop()\n var position = this.$element.offset()\n return (this.pinnedOffset = position.top - scrollTop)\n }\n\n Affix.prototype.checkPositionWithEventLoop = function () {\n setTimeout($.proxy(this.checkPosition, this), 1)\n }\n\n Affix.prototype.checkPosition = function () {\n if (!this.$element.is(':visible')) return\n\n var height = this.$element.height()\n var offset = this.options.offset\n var offsetTop = offset.top\n var offsetBottom = offset.bottom\n var scrollHeight = Math.max($(document).height(), $(document.body).height())\n\n if (typeof offset != 'object') offsetBottom = offsetTop = offset\n if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element)\n if (typeof offsetBottom == 'function') offsetBottom = offset.bottom(this.$element)\n\n var affix = this.getState(scrollHeight, height, offsetTop, offsetBottom)\n\n if (this.affixed != affix) {\n if (this.unpin != null) this.$element.css('top', '')\n\n var affixType = 'affix' + (affix ? '-' + affix : '')\n var e = $.Event(affixType + '.bs.affix')\n\n this.$element.trigger(e)\n\n if (e.isDefaultPrevented()) return\n\n this.affixed = affix\n this.unpin = affix == 'bottom' ? this.getPinnedOffset() : null\n\n this.$element\n .removeClass(Affix.RESET)\n .addClass(affixType)\n .trigger(affixType.replace('affix', 'affixed') + '.bs.affix')\n }\n\n if (affix == 'bottom') {\n this.$element.offset({\n top: scrollHeight - height - offsetBottom\n })\n }\n }\n\n\n // AFFIX PLUGIN DEFINITION\n // =======================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.affix')\n var options = typeof option == 'object' && option\n\n if (!data) $this.data('bs.affix', (data = new Affix(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n var old = $.fn.affix\n\n $.fn.affix = Plugin\n $.fn.affix.Constructor = Affix\n\n\n // AFFIX NO CONFLICT\n // =================\n\n $.fn.affix.noConflict = function () {\n $.fn.affix = old\n return this\n }\n\n\n // AFFIX DATA-API\n // ==============\n\n $(window).on('load', function () {\n $('[data-spy=\"affix\"]').each(function () {\n var $spy = $(this)\n var data = $spy.data()\n\n data.offset = data.offset || {}\n\n if (data.offsetBottom != null) data.offset.bottom = data.offsetBottom\n if (data.offsetTop != null) data.offset.top = data.offsetTop\n\n Plugin.call($spy, data)\n })\n })\n\n}(jQuery);\n\n},{}],4:[function(require,module,exports){\n/* ========================================================================\n * Bootstrap: dropdown.js v3.3.7\n * http://getbootstrap.com/javascript/#dropdowns\n * ========================================================================\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // DROPDOWN CLASS DEFINITION\n // =========================\n\n var backdrop = '.dropdown-backdrop'\n var toggle = '[data-toggle=\"dropdown\"]'\n var Dropdown = function (element) {\n $(element).on('click.bs.dropdown', this.toggle)\n }\n\n Dropdown.VERSION = '3.3.7'\n\n function getParent($this) {\n var selector = $this.attr('data-target')\n\n if (!selector) {\n selector = $this.attr('href')\n selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\\s]*$)/, '') // strip for ie7\n }\n\n var $parent = selector && $(selector)\n\n return $parent && $parent.length ? $parent : $this.parent()\n }\n\n function clearMenus(e) {\n if (e && e.which === 3) return\n $(backdrop).remove()\n $(toggle).each(function () {\n var $this = $(this)\n var $parent = getParent($this)\n var relatedTarget = { relatedTarget: this }\n\n if (!$parent.hasClass('open')) return\n\n if (e && e.type == 'click' && /input|textarea/i.test(e.target.tagName) && $.contains($parent[0], e.target)) return\n\n $parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget))\n\n if (e.isDefaultPrevented()) return\n\n $this.attr('aria-expanded', 'false')\n $parent.removeClass('open').trigger($.Event('hidden.bs.dropdown', relatedTarget))\n })\n }\n\n Dropdown.prototype.toggle = function (e) {\n var $this = $(this)\n\n if ($this.is('.disabled, :disabled')) return\n\n var $parent = getParent($this)\n var isActive = $parent.hasClass('open')\n\n clearMenus()\n\n if (!isActive) {\n if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {\n // if mobile we use a backdrop because click events don't delegate\n $(document.createElement('div'))\n .addClass('dropdown-backdrop')\n .insertAfter($(this))\n .on('click', clearMenus)\n }\n\n var relatedTarget = { relatedTarget: this }\n $parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget))\n\n if (e.isDefaultPrevented()) return\n\n $this\n .trigger('focus')\n .attr('aria-expanded', 'true')\n\n $parent\n .toggleClass('open')\n .trigger($.Event('shown.bs.dropdown', relatedTarget))\n }\n\n return false\n }\n\n Dropdown.prototype.keydown = function (e) {\n if (!/(38|40|27|32)/.test(e.which) || /input|textarea/i.test(e.target.tagName)) return\n\n var $this = $(this)\n\n e.preventDefault()\n e.stopPropagation()\n\n if ($this.is('.disabled, :disabled')) return\n\n var $parent = getParent($this)\n var isActive = $parent.hasClass('open')\n\n if (!isActive && e.which != 27 || isActive && e.which == 27) {\n if (e.which == 27) $parent.find(toggle).trigger('focus')\n return $this.trigger('click')\n }\n\n var desc = ' li:not(.disabled):visible a'\n var $items = $parent.find('.dropdown-menu' + desc)\n\n if (!$items.length) return\n\n var index = $items.index(e.target)\n\n if (e.which == 38 && index > 0) index-- // up\n if (e.which == 40 && index < $items.length - 1) index++ // down\n if (!~index) index = 0\n\n $items.eq(index).trigger('focus')\n }\n\n\n // DROPDOWN PLUGIN DEFINITION\n // ==========================\n\n function Plugin(option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.dropdown')\n\n if (!data) $this.data('bs.dropdown', (data = new Dropdown(this)))\n if (typeof option == 'string') data[option].call($this)\n })\n }\n\n var old = $.fn.dropdown\n\n $.fn.dropdown = Plugin\n $.fn.dropdown.Constructor = Dropdown\n\n\n // DROPDOWN NO CONFLICT\n // ====================\n\n $.fn.dropdown.noConflict = function () {\n $.fn.dropdown = old\n return this\n }\n\n\n // APPLY TO STANDARD DROPDOWN ELEMENTS\n // ===================================\n\n $(document)\n .on('click.bs.dropdown.data-api', clearMenus)\n .on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })\n .on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle)\n .on('keydown.bs.dropdown.data-api', toggle, Dropdown.prototype.keydown)\n .on('keydown.bs.dropdown.data-api', '.dropdown-menu', Dropdown.prototype.keydown)\n\n}(jQuery);\n\n},{}],5:[function(require,module,exports){\n/* ========================================================================\n * Bootstrap: modal.js v3.3.7\n * http://getbootstrap.com/javascript/#modals\n * ========================================================================\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // MODAL CLASS DEFINITION\n // ======================\n\n var Modal = function (element, options) {\n this.options = options\n this.$body = $(document.body)\n this.$element = $(element)\n this.$dialog = this.$element.find('.modal-dialog')\n this.$backdrop = null\n this.isShown = null\n this.originalBodyPad = null\n this.scrollbarWidth = 0\n this.ignoreBackdropClick = false\n\n if (this.options.remote) {\n this.$element\n .find('.modal-content')\n .load(this.options.remote, $.proxy(function () {\n this.$element.trigger('loaded.bs.modal')\n }, this))\n }\n }\n\n Modal.VERSION = '3.3.7'\n\n Modal.TRANSITION_DURATION = 300\n Modal.BACKDROP_TRANSITION_DURATION = 150\n\n Modal.DEFAULTS = {\n backdrop: true,\n keyboard: true,\n show: true\n }\n\n Modal.prototype.toggle = function (_relatedTarget) {\n return this.isShown ? this.hide() : this.show(_relatedTarget)\n }\n\n Modal.prototype.show = function (_relatedTarget) {\n var that = this\n var e = $.Event('show.bs.modal', { relatedTarget: _relatedTarget })\n\n this.$element.trigger(e)\n\n if (this.isShown || e.isDefaultPrevented()) return\n\n this.isShown = true\n\n this.checkScrollbar()\n this.setScrollbar()\n this.$body.addClass('modal-open')\n\n this.escape()\n this.resize()\n\n this.$element.on('click.dismiss.bs.modal', '[data-dismiss=\"modal\"]', $.proxy(this.hide, this))\n\n this.$dialog.on('mousedown.dismiss.bs.modal', function () {\n that.$element.one('mouseup.dismiss.bs.modal', function (e) {\n if ($(e.target).is(that.$element)) that.ignoreBackdropClick = true\n })\n })\n\n this.backdrop(function () {\n var transition = $.support.transition && that.$element.hasClass('fade')\n\n if (!that.$element.parent().length) {\n that.$element.appendTo(that.$body) // don't move modals dom position\n }\n\n that.$element\n .show()\n .scrollTop(0)\n\n that.adjustDialog()\n\n if (transition) {\n that.$element[0].offsetWidth // force reflow\n }\n\n that.$element.addClass('in')\n\n that.enforceFocus()\n\n var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget })\n\n transition ?\n that.$dialog // wait for modal to slide in\n .one('bsTransitionEnd', function () {\n that.$element.trigger('focus').trigger(e)\n })\n .emulateTransitionEnd(Modal.TRANSITION_DURATION) :\n that.$element.trigger('focus').trigger(e)\n })\n }\n\n Modal.prototype.hide = function (e) {\n if (e) e.preventDefault()\n\n e = $.Event('hide.bs.modal')\n\n this.$element.trigger(e)\n\n if (!this.isShown || e.isDefaultPrevented()) return\n\n this.isShown = false\n\n this.escape()\n this.resize()\n\n $(document).off('focusin.bs.modal')\n\n this.$element\n .removeClass('in')\n .off('click.dismiss.bs.modal')\n .off('mouseup.dismiss.bs.modal')\n\n this.$dialog.off('mousedown.dismiss.bs.modal')\n\n $.support.transition && this.$element.hasClass('fade') ?\n this.$element\n .one('bsTransitionEnd', $.proxy(this.hideModal, this))\n .emulateTransitionEnd(Modal.TRANSITION_DURATION) :\n this.hideModal()\n }\n\n Modal.prototype.enforceFocus = function () {\n $(document)\n .off('focusin.bs.modal') // guard against infinite focus loop\n .on('focusin.bs.modal', $.proxy(function (e) {\n if (document !== e.target &&\n this.$element[0] !== e.target &&\n !this.$element.has(e.target).length) {\n this.$element.trigger('focus')\n }\n }, this))\n }\n\n Modal.prototype.escape = function () {\n if (this.isShown && this.options.keyboard) {\n this.$element.on('keydown.dismiss.bs.modal', $.proxy(function (e) {\n e.which == 27 && this.hide()\n }, this))\n } else if (!this.isShown) {\n this.$element.off('keydown.dismiss.bs.modal')\n }\n }\n\n Modal.prototype.resize = function () {\n if (this.isShown) {\n $(window).on('resize.bs.modal', $.proxy(this.handleUpdate, this))\n } else {\n $(window).off('resize.bs.modal')\n }\n }\n\n Modal.prototype.hideModal = function () {\n var that = this\n this.$element.hide()\n this.backdrop(function () {\n that.$body.removeClass('modal-open')\n that.resetAdjustments()\n that.resetScrollbar()\n that.$element.trigger('hidden.bs.modal')\n })\n }\n\n Modal.prototype.removeBackdrop = function () {\n this.$backdrop && this.$backdrop.remove()\n this.$backdrop = null\n }\n\n Modal.prototype.backdrop = function (callback) {\n var that = this\n var animate = this.$element.hasClass('fade') ? 'fade' : ''\n\n if (this.isShown && this.options.backdrop) {\n var doAnimate = $.support.transition && animate\n\n this.$backdrop = $(document.createElement('div'))\n .addClass('modal-backdrop ' + animate)\n .appendTo(this.$body)\n\n this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) {\n if (this.ignoreBackdropClick) {\n this.ignoreBackdropClick = false\n return\n }\n if (e.target !== e.currentTarget) return\n this.options.backdrop == 'static'\n ? this.$element[0].focus()\n : this.hide()\n }, this))\n\n if (doAnimate) this.$backdrop[0].offsetWidth // force reflow\n\n this.$backdrop.addClass('in')\n\n if (!callback) return\n\n doAnimate ?\n this.$backdrop\n .one('bsTransitionEnd', callback)\n .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) :\n callback()\n\n } else if (!this.isShown && this.$backdrop) {\n this.$backdrop.removeClass('in')\n\n var callbackRemove = function () {\n that.removeBackdrop()\n callback && callback()\n }\n $.support.transition && this.$element.hasClass('fade') ?\n this.$backdrop\n .one('bsTransitionEnd', callbackRemove)\n .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) :\n callbackRemove()\n\n } else if (callback) {\n callback()\n }\n }\n\n // these following methods are used to handle overflowing modals\n\n Modal.prototype.handleUpdate = function () {\n this.adjustDialog()\n }\n\n Modal.prototype.adjustDialog = function () {\n var modalIsOverflowing = this.$element[0].scrollHeight > document.documentElement.clientHeight\n\n this.$element.css({\n paddingLeft: !this.bodyIsOverflowing && modalIsOverflowing ? this.scrollbarWidth : '',\n paddingRight: this.bodyIsOverflowing && !modalIsOverflowing ? this.scrollbarWidth : ''\n })\n }\n\n Modal.prototype.resetAdjustments = function () {\n this.$element.css({\n paddingLeft: '',\n paddingRight: ''\n })\n }\n\n Modal.prototype.checkScrollbar = function () {\n var fullWindowWidth = window.innerWidth\n if (!fullWindowWidth) { // workaround for missing window.innerWidth in IE8\n var documentElementRect = document.documentElement.getBoundingClientRect()\n fullWindowWidth = documentElementRect.right - Math.abs(documentElementRect.left)\n }\n this.bodyIsOverflowing = document.body.clientWidth < fullWindowWidth\n this.scrollbarWidth = this.measureScrollbar()\n }\n\n Modal.prototype.setScrollbar = function () {\n var bodyPad = parseInt((this.$body.css('padding-right') || 0), 10)\n this.originalBodyPad = document.body.style.paddingRight || ''\n if (this.bodyIsOverflowing) this.$body.css('padding-right', bodyPad + this.scrollbarWidth)\n }\n\n Modal.prototype.resetScrollbar = function () {\n this.$body.css('padding-right', this.originalBodyPad)\n }\n\n Modal.prototype.measureScrollbar = function () { // thx walsh\n var scrollDiv = document.createElement('div')\n scrollDiv.className = 'modal-scrollbar-measure'\n this.$body.append(scrollDiv)\n var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth\n this.$body[0].removeChild(scrollDiv)\n return scrollbarWidth\n }\n\n\n // MODAL PLUGIN DEFINITION\n // =======================\n\n function Plugin(option, _relatedTarget) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.modal')\n var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option)\n\n if (!data) $this.data('bs.modal', (data = new Modal(this, options)))\n if (typeof option == 'string') data[option](_relatedTarget)\n else if (options.show) data.show(_relatedTarget)\n })\n }\n\n var old = $.fn.modal\n\n $.fn.modal = Plugin\n $.fn.modal.Constructor = Modal\n\n\n // MODAL NO CONFLICT\n // =================\n\n $.fn.modal.noConflict = function () {\n $.fn.modal = old\n return this\n }\n\n\n // MODAL DATA-API\n // ==============\n\n $(document).on('click.bs.modal.data-api', '[data-toggle=\"modal\"]', function (e) {\n var $this = $(this)\n var href = $this.attr('href')\n var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\\s]+$)/, ''))) // strip for ie7\n var option = $target.data('bs.modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())\n\n if ($this.is('a')) e.preventDefault()\n\n $target.one('show.bs.modal', function (showEvent) {\n if (showEvent.isDefaultPrevented()) return // only register focus restorer if modal will actually get shown\n $target.one('hidden.bs.modal', function () {\n $this.is(':visible') && $this.trigger('focus')\n })\n })\n Plugin.call($target, option, this)\n })\n\n}(jQuery);\n\n},{}],6:[function(require,module,exports){\n/* ========================================================================\n * Bootstrap: transition.js v3.3.7\n * http://getbootstrap.com/javascript/#transitions\n * ========================================================================\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/)\n // ============================================================\n\n function transitionEnd() {\n var el = document.createElement('bootstrap')\n\n var transEndEventNames = {\n WebkitTransition : 'webkitTransitionEnd',\n MozTransition : 'transitionend',\n OTransition : 'oTransitionEnd otransitionend',\n transition : 'transitionend'\n }\n\n for (var name in transEndEventNames) {\n if (el.style[name] !== undefined) {\n return { end: transEndEventNames[name] }\n }\n }\n\n return false // explicit for ie8 ( ._.)\n }\n\n // http://blog.alexmaccaw.com/css-transitions\n $.fn.emulateTransitionEnd = function (duration) {\n var called = false\n var $el = this\n $(this).one('bsTransitionEnd', function () { called = true })\n var callback = function () { if (!called) $($el).trigger($.support.transition.end) }\n setTimeout(callback, duration)\n return this\n }\n\n $(function () {\n $.support.transition = transitionEnd()\n\n if (!$.support.transition) return\n\n $.event.special.bsTransitionEnd = {\n bindType: $.support.transition.end,\n delegateType: $.support.transition.end,\n handle: function (e) {\n if ($(e.target).is(this)) return e.handleObj.handler.apply(this, arguments)\n }\n }\n })\n\n}(jQuery);\n\n},{}],7:[function(require,module,exports){\n// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // 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\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // 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.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n},{}],8:[function(require,module,exports){\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\nvar _assign = require('object-assign');\n\nvar emptyObject = require('fbjs/lib/emptyObject');\nvar _invariant = require('fbjs/lib/invariant');\n\nif (\"production\" !== 'production') {\n var warning = require('fbjs/lib/warning');\n}\n\nvar MIXINS_KEY = 'mixins';\n\n// Helper function to allow the creation of anonymous functions which do not\n// have .name set to the name of the variable being assigned to.\nfunction identity(fn) {\n return fn;\n}\n\nvar ReactPropTypeLocationNames;\nif (\"production\" !== 'production') {\n ReactPropTypeLocationNames = {\n prop: 'prop',\n context: 'context',\n childContext: 'child context'\n };\n} else {\n ReactPropTypeLocationNames = {};\n}\n\nfunction factory(ReactComponent, isValidElement, ReactNoopUpdateQueue) {\n /**\n * Policies that describe methods in `ReactClassInterface`.\n */\n\n var injectedMixins = [];\n\n /**\n * Composite components are higher-level components that compose other composite\n * or host components.\n *\n * To create a new type of `ReactClass`, pass a specification of\n * your new class to `React.createClass`. The only requirement of your class\n * specification is that you implement a `render` method.\n *\n * var MyComponent = React.createClass({\n * render: function() {\n * return
            Hello World
            ;\n * }\n * });\n *\n * The class specification supports a specific protocol of methods that have\n * special meaning (e.g. `render`). See `ReactClassInterface` for\n * more the comprehensive protocol. Any other properties and methods in the\n * class specification will be available on the prototype.\n *\n * @interface ReactClassInterface\n * @internal\n */\n var ReactClassInterface = {\n /**\n * An array of Mixin objects to include when defining your component.\n *\n * @type {array}\n * @optional\n */\n mixins: 'DEFINE_MANY',\n\n /**\n * An object containing properties and methods that should be defined on\n * the component's constructor instead of its prototype (static methods).\n *\n * @type {object}\n * @optional\n */\n statics: 'DEFINE_MANY',\n\n /**\n * Definition of prop types for this component.\n *\n * @type {object}\n * @optional\n */\n propTypes: 'DEFINE_MANY',\n\n /**\n * Definition of context types for this component.\n *\n * @type {object}\n * @optional\n */\n contextTypes: 'DEFINE_MANY',\n\n /**\n * Definition of context types this component sets for its children.\n *\n * @type {object}\n * @optional\n */\n childContextTypes: 'DEFINE_MANY',\n\n // ==== Definition methods ====\n\n /**\n * Invoked when the component is mounted. Values in the mapping will be set on\n * `this.props` if that prop is not specified (i.e. using an `in` check).\n *\n * This method is invoked before `getInitialState` and therefore cannot rely\n * on `this.state` or use `this.setState`.\n *\n * @return {object}\n * @optional\n */\n getDefaultProps: 'DEFINE_MANY_MERGED',\n\n /**\n * Invoked once before the component is mounted. The return value will be used\n * as the initial value of `this.state`.\n *\n * getInitialState: function() {\n * return {\n * isOn: false,\n * fooBaz: new BazFoo()\n * }\n * }\n *\n * @return {object}\n * @optional\n */\n getInitialState: 'DEFINE_MANY_MERGED',\n\n /**\n * @return {object}\n * @optional\n */\n getChildContext: 'DEFINE_MANY_MERGED',\n\n /**\n * Uses props from `this.props` and state from `this.state` to render the\n * structure of the component.\n *\n * No guarantees are made about when or how often this method is invoked, so\n * it must not have side effects.\n *\n * render: function() {\n * var name = this.props.name;\n * return
            Hello, {name}!
            ;\n * }\n *\n * @return {ReactComponent}\n * @required\n */\n render: 'DEFINE_ONCE',\n\n // ==== Delegate methods ====\n\n /**\n * Invoked when the component is initially created and about to be mounted.\n * This may have side effects, but any external subscriptions or data created\n * by this method must be cleaned up in `componentWillUnmount`.\n *\n * @optional\n */\n componentWillMount: 'DEFINE_MANY',\n\n /**\n * Invoked when the component has been mounted and has a DOM representation.\n * However, there is no guarantee that the DOM node is in the document.\n *\n * Use this as an opportunity to operate on the DOM when the component has\n * been mounted (initialized and rendered) for the first time.\n *\n * @param {DOMElement} rootNode DOM element representing the component.\n * @optional\n */\n componentDidMount: 'DEFINE_MANY',\n\n /**\n * Invoked before the component receives new props.\n *\n * Use this as an opportunity to react to a prop transition by updating the\n * state using `this.setState`. Current props are accessed via `this.props`.\n *\n * componentWillReceiveProps: function(nextProps, nextContext) {\n * this.setState({\n * likesIncreasing: nextProps.likeCount > this.props.likeCount\n * });\n * }\n *\n * NOTE: There is no equivalent `componentWillReceiveState`. An incoming prop\n * transition may cause a state change, but the opposite is not true. If you\n * need it, you are probably looking for `componentWillUpdate`.\n *\n * @param {object} nextProps\n * @optional\n */\n componentWillReceiveProps: 'DEFINE_MANY',\n\n /**\n * Invoked while deciding if the component should be updated as a result of\n * receiving new props, state and/or context.\n *\n * Use this as an opportunity to `return false` when you're certain that the\n * transition to the new props/state/context will not require a component\n * update.\n *\n * shouldComponentUpdate: function(nextProps, nextState, nextContext) {\n * return !equal(nextProps, this.props) ||\n * !equal(nextState, this.state) ||\n * !equal(nextContext, this.context);\n * }\n *\n * @param {object} nextProps\n * @param {?object} nextState\n * @param {?object} nextContext\n * @return {boolean} True if the component should update.\n * @optional\n */\n shouldComponentUpdate: 'DEFINE_ONCE',\n\n /**\n * Invoked when the component is about to update due to a transition from\n * `this.props`, `this.state` and `this.context` to `nextProps`, `nextState`\n * and `nextContext`.\n *\n * Use this as an opportunity to perform preparation before an update occurs.\n *\n * NOTE: You **cannot** use `this.setState()` in this method.\n *\n * @param {object} nextProps\n * @param {?object} nextState\n * @param {?object} nextContext\n * @param {ReactReconcileTransaction} transaction\n * @optional\n */\n componentWillUpdate: 'DEFINE_MANY',\n\n /**\n * Invoked when the component's DOM representation has been updated.\n *\n * Use this as an opportunity to operate on the DOM when the component has\n * been updated.\n *\n * @param {object} prevProps\n * @param {?object} prevState\n * @param {?object} prevContext\n * @param {DOMElement} rootNode DOM element representing the component.\n * @optional\n */\n componentDidUpdate: 'DEFINE_MANY',\n\n /**\n * Invoked when the component is about to be removed from its parent and have\n * its DOM representation destroyed.\n *\n * Use this as an opportunity to deallocate any external resources.\n *\n * NOTE: There is no `componentDidUnmount` since your component will have been\n * destroyed by that point.\n *\n * @optional\n */\n componentWillUnmount: 'DEFINE_MANY',\n\n // ==== Advanced methods ====\n\n /**\n * Updates the component's currently mounted DOM representation.\n *\n * By default, this implements React's rendering and reconciliation algorithm.\n * Sophisticated clients may wish to override this.\n *\n * @param {ReactReconcileTransaction} transaction\n * @internal\n * @overridable\n */\n updateComponent: 'OVERRIDE_BASE'\n };\n\n /**\n * Mapping from class specification keys to special processing functions.\n *\n * Although these are declared like instance properties in the specification\n * when defining classes using `React.createClass`, they are actually static\n * and are accessible on the constructor instead of the prototype. Despite\n * being static, they must be defined outside of the \"statics\" key under\n * which all other static methods are defined.\n */\n var RESERVED_SPEC_KEYS = {\n displayName: function(Constructor, displayName) {\n Constructor.displayName = displayName;\n },\n mixins: function(Constructor, mixins) {\n if (mixins) {\n for (var i = 0; i < mixins.length; i++) {\n mixSpecIntoComponent(Constructor, mixins[i]);\n }\n }\n },\n childContextTypes: function(Constructor, childContextTypes) {\n if (\"production\" !== 'production') {\n validateTypeDef(Constructor, childContextTypes, 'childContext');\n }\n Constructor.childContextTypes = _assign(\n {},\n Constructor.childContextTypes,\n childContextTypes\n );\n },\n contextTypes: function(Constructor, contextTypes) {\n if (\"production\" !== 'production') {\n validateTypeDef(Constructor, contextTypes, 'context');\n }\n Constructor.contextTypes = _assign(\n {},\n Constructor.contextTypes,\n contextTypes\n );\n },\n /**\n * Special case getDefaultProps which should move into statics but requires\n * automatic merging.\n */\n getDefaultProps: function(Constructor, getDefaultProps) {\n if (Constructor.getDefaultProps) {\n Constructor.getDefaultProps = createMergedResultFunction(\n Constructor.getDefaultProps,\n getDefaultProps\n );\n } else {\n Constructor.getDefaultProps = getDefaultProps;\n }\n },\n propTypes: function(Constructor, propTypes) {\n if (\"production\" !== 'production') {\n validateTypeDef(Constructor, propTypes, 'prop');\n }\n Constructor.propTypes = _assign({}, Constructor.propTypes, propTypes);\n },\n statics: function(Constructor, statics) {\n mixStaticSpecIntoComponent(Constructor, statics);\n },\n autobind: function() {}\n };\n\n function validateTypeDef(Constructor, typeDef, location) {\n for (var propName in typeDef) {\n if (typeDef.hasOwnProperty(propName)) {\n // use a warning instead of an _invariant so components\n // don't show up in prod but only in __DEV__\n if (\"production\" !== 'production') {\n warning(\n typeof typeDef[propName] === 'function',\n '%s: %s type `%s` is invalid; it must be a function, usually from ' +\n 'React.PropTypes.',\n Constructor.displayName || 'ReactClass',\n ReactPropTypeLocationNames[location],\n propName\n );\n }\n }\n }\n }\n\n function validateMethodOverride(isAlreadyDefined, name) {\n var specPolicy = ReactClassInterface.hasOwnProperty(name)\n ? ReactClassInterface[name]\n : null;\n\n // Disallow overriding of base class methods unless explicitly allowed.\n if (ReactClassMixin.hasOwnProperty(name)) {\n _invariant(\n specPolicy === 'OVERRIDE_BASE',\n 'ReactClassInterface: You are attempting to override ' +\n '`%s` from your class specification. Ensure that your method names ' +\n 'do not overlap with React methods.',\n name\n );\n }\n\n // Disallow defining methods more than once unless explicitly allowed.\n if (isAlreadyDefined) {\n _invariant(\n specPolicy === 'DEFINE_MANY' || specPolicy === 'DEFINE_MANY_MERGED',\n 'ReactClassInterface: You are attempting to define ' +\n '`%s` on your component more than once. This conflict may be due ' +\n 'to a mixin.',\n name\n );\n }\n }\n\n /**\n * Mixin helper which handles policy validation and reserved\n * specification keys when building React classes.\n */\n function mixSpecIntoComponent(Constructor, spec) {\n if (!spec) {\n if (\"production\" !== 'production') {\n var typeofSpec = typeof spec;\n var isMixinValid = typeofSpec === 'object' && spec !== null;\n\n if (\"production\" !== 'production') {\n warning(\n isMixinValid,\n \"%s: You're attempting to include a mixin that is either null \" +\n 'or not an object. Check the mixins included by the component, ' +\n 'as well as any mixins they include themselves. ' +\n 'Expected object but got %s.',\n Constructor.displayName || 'ReactClass',\n spec === null ? null : typeofSpec\n );\n }\n }\n\n return;\n }\n\n _invariant(\n typeof spec !== 'function',\n \"ReactClass: You're attempting to \" +\n 'use a component class or function as a mixin. Instead, just use a ' +\n 'regular object.'\n );\n _invariant(\n !isValidElement(spec),\n \"ReactClass: You're attempting to \" +\n 'use a component as a mixin. Instead, just use a regular object.'\n );\n\n var proto = Constructor.prototype;\n var autoBindPairs = proto.__reactAutoBindPairs;\n\n // By handling mixins before any other properties, we ensure the same\n // chaining order is applied to methods with DEFINE_MANY policy, whether\n // mixins are listed before or after these methods in the spec.\n if (spec.hasOwnProperty(MIXINS_KEY)) {\n RESERVED_SPEC_KEYS.mixins(Constructor, spec.mixins);\n }\n\n for (var name in spec) {\n if (!spec.hasOwnProperty(name)) {\n continue;\n }\n\n if (name === MIXINS_KEY) {\n // We have already handled mixins in a special case above.\n continue;\n }\n\n var property = spec[name];\n var isAlreadyDefined = proto.hasOwnProperty(name);\n validateMethodOverride(isAlreadyDefined, name);\n\n if (RESERVED_SPEC_KEYS.hasOwnProperty(name)) {\n RESERVED_SPEC_KEYS[name](Constructor, property);\n } else {\n // Setup methods on prototype:\n // The following member methods should not be automatically bound:\n // 1. Expected ReactClass methods (in the \"interface\").\n // 2. Overridden methods (that were mixed in).\n var isReactClassMethod = ReactClassInterface.hasOwnProperty(name);\n var isFunction = typeof property === 'function';\n var shouldAutoBind =\n isFunction &&\n !isReactClassMethod &&\n !isAlreadyDefined &&\n spec.autobind !== false;\n\n if (shouldAutoBind) {\n autoBindPairs.push(name, property);\n proto[name] = property;\n } else {\n if (isAlreadyDefined) {\n var specPolicy = ReactClassInterface[name];\n\n // These cases should already be caught by validateMethodOverride.\n _invariant(\n isReactClassMethod &&\n (specPolicy === 'DEFINE_MANY_MERGED' ||\n specPolicy === 'DEFINE_MANY'),\n 'ReactClass: Unexpected spec policy %s for key %s ' +\n 'when mixing in component specs.',\n specPolicy,\n name\n );\n\n // For methods which are defined more than once, call the existing\n // methods before calling the new property, merging if appropriate.\n if (specPolicy === 'DEFINE_MANY_MERGED') {\n proto[name] = createMergedResultFunction(proto[name], property);\n } else if (specPolicy === 'DEFINE_MANY') {\n proto[name] = createChainedFunction(proto[name], property);\n }\n } else {\n proto[name] = property;\n if (\"production\" !== 'production') {\n // Add verbose displayName to the function, which helps when looking\n // at profiling tools.\n if (typeof property === 'function' && spec.displayName) {\n proto[name].displayName = spec.displayName + '_' + name;\n }\n }\n }\n }\n }\n }\n }\n\n function mixStaticSpecIntoComponent(Constructor, statics) {\n if (!statics) {\n return;\n }\n for (var name in statics) {\n var property = statics[name];\n if (!statics.hasOwnProperty(name)) {\n continue;\n }\n\n var isReserved = name in RESERVED_SPEC_KEYS;\n _invariant(\n !isReserved,\n 'ReactClass: You are attempting to define a reserved ' +\n 'property, `%s`, that shouldn\\'t be on the \"statics\" key. Define it ' +\n 'as an instance property instead; it will still be accessible on the ' +\n 'constructor.',\n name\n );\n\n var isInherited = name in Constructor;\n _invariant(\n !isInherited,\n 'ReactClass: You are attempting to define ' +\n '`%s` on your component more than once. This conflict may be ' +\n 'due to a mixin.',\n name\n );\n Constructor[name] = property;\n }\n }\n\n /**\n * Merge two objects, but throw if both contain the same key.\n *\n * @param {object} one The first object, which is mutated.\n * @param {object} two The second object\n * @return {object} one after it has been mutated to contain everything in two.\n */\n function mergeIntoWithNoDuplicateKeys(one, two) {\n _invariant(\n one && two && typeof one === 'object' && typeof two === 'object',\n 'mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.'\n );\n\n for (var key in two) {\n if (two.hasOwnProperty(key)) {\n _invariant(\n one[key] === undefined,\n 'mergeIntoWithNoDuplicateKeys(): ' +\n 'Tried to merge two objects with the same key: `%s`. This conflict ' +\n 'may be due to a mixin; in particular, this may be caused by two ' +\n 'getInitialState() or getDefaultProps() methods returning objects ' +\n 'with clashing keys.',\n key\n );\n one[key] = two[key];\n }\n }\n return one;\n }\n\n /**\n * Creates a function that invokes two functions and merges their return values.\n *\n * @param {function} one Function to invoke first.\n * @param {function} two Function to invoke second.\n * @return {function} Function that invokes the two argument functions.\n * @private\n */\n function createMergedResultFunction(one, two) {\n return function mergedResult() {\n var a = one.apply(this, arguments);\n var b = two.apply(this, arguments);\n if (a == null) {\n return b;\n } else if (b == null) {\n return a;\n }\n var c = {};\n mergeIntoWithNoDuplicateKeys(c, a);\n mergeIntoWithNoDuplicateKeys(c, b);\n return c;\n };\n }\n\n /**\n * Creates a function that invokes two functions and ignores their return vales.\n *\n * @param {function} one Function to invoke first.\n * @param {function} two Function to invoke second.\n * @return {function} Function that invokes the two argument functions.\n * @private\n */\n function createChainedFunction(one, two) {\n return function chainedFunction() {\n one.apply(this, arguments);\n two.apply(this, arguments);\n };\n }\n\n /**\n * Binds a method to the component.\n *\n * @param {object} component Component whose method is going to be bound.\n * @param {function} method Method to be bound.\n * @return {function} The bound method.\n */\n function bindAutoBindMethod(component, method) {\n var boundMethod = method.bind(component);\n if (\"production\" !== 'production') {\n boundMethod.__reactBoundContext = component;\n boundMethod.__reactBoundMethod = method;\n boundMethod.__reactBoundArguments = null;\n var componentName = component.constructor.displayName;\n var _bind = boundMethod.bind;\n boundMethod.bind = function(newThis) {\n for (\n var _len = arguments.length,\n args = Array(_len > 1 ? _len - 1 : 0),\n _key = 1;\n _key < _len;\n _key++\n ) {\n args[_key - 1] = arguments[_key];\n }\n\n // User is trying to bind() an autobound method; we effectively will\n // ignore the value of \"this\" that the user is trying to use, so\n // let's warn.\n if (newThis !== component && newThis !== null) {\n if (\"production\" !== 'production') {\n warning(\n false,\n 'bind(): React component methods may only be bound to the ' +\n 'component instance. See %s',\n componentName\n );\n }\n } else if (!args.length) {\n if (\"production\" !== 'production') {\n warning(\n false,\n 'bind(): You are binding a component method to the component. ' +\n 'React does this for you automatically in a high-performance ' +\n 'way, so you can safely remove this call. See %s',\n componentName\n );\n }\n return boundMethod;\n }\n var reboundMethod = _bind.apply(boundMethod, arguments);\n reboundMethod.__reactBoundContext = component;\n reboundMethod.__reactBoundMethod = method;\n reboundMethod.__reactBoundArguments = args;\n return reboundMethod;\n };\n }\n return boundMethod;\n }\n\n /**\n * Binds all auto-bound methods in a component.\n *\n * @param {object} component Component whose method is going to be bound.\n */\n function bindAutoBindMethods(component) {\n var pairs = component.__reactAutoBindPairs;\n for (var i = 0; i < pairs.length; i += 2) {\n var autoBindKey = pairs[i];\n var method = pairs[i + 1];\n component[autoBindKey] = bindAutoBindMethod(component, method);\n }\n }\n\n var IsMountedPreMixin = {\n componentDidMount: function() {\n this.__isMounted = true;\n }\n };\n\n var IsMountedPostMixin = {\n componentWillUnmount: function() {\n this.__isMounted = false;\n }\n };\n\n /**\n * Add more to the ReactClass base class. These are all legacy features and\n * therefore not already part of the modern ReactComponent.\n */\n var ReactClassMixin = {\n /**\n * TODO: This will be deprecated because state should always keep a consistent\n * type signature and the only use case for this, is to avoid that.\n */\n replaceState: function(newState, callback) {\n this.updater.enqueueReplaceState(this, newState, callback);\n },\n\n /**\n * Checks whether or not this composite component is mounted.\n * @return {boolean} True if mounted, false otherwise.\n * @protected\n * @final\n */\n isMounted: function() {\n if (\"production\" !== 'production') {\n warning(\n this.__didWarnIsMounted,\n '%s: isMounted is deprecated. Instead, make sure to clean up ' +\n 'subscriptions and pending requests in componentWillUnmount to ' +\n 'prevent memory leaks.',\n (this.constructor && this.constructor.displayName) ||\n this.name ||\n 'Component'\n );\n this.__didWarnIsMounted = true;\n }\n return !!this.__isMounted;\n }\n };\n\n var ReactClassComponent = function() {};\n _assign(\n ReactClassComponent.prototype,\n ReactComponent.prototype,\n ReactClassMixin\n );\n\n /**\n * Creates a composite component class given a class specification.\n * See https://facebook.github.io/react/docs/top-level-api.html#react.createclass\n *\n * @param {object} spec Class specification (which must define `render`).\n * @return {function} Component constructor function.\n * @public\n */\n function createClass(spec) {\n // To keep our warnings more understandable, we'll use a little hack here to\n // ensure that Constructor.name !== 'Constructor'. This makes sure we don't\n // unnecessarily identify a class without displayName as 'Constructor'.\n var Constructor = identity(function(props, context, updater) {\n // This constructor gets overridden by mocks. The argument is used\n // by mocks to assert on what gets mounted.\n\n if (\"production\" !== 'production') {\n warning(\n this instanceof Constructor,\n 'Something is calling a React component directly. Use a factory or ' +\n 'JSX instead. See: https://fb.me/react-legacyfactory'\n );\n }\n\n // Wire up auto-binding\n if (this.__reactAutoBindPairs.length) {\n bindAutoBindMethods(this);\n }\n\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n\n this.state = null;\n\n // ReactClasses doesn't have constructors. Instead, they use the\n // getInitialState and componentWillMount methods for initialization.\n\n var initialState = this.getInitialState ? this.getInitialState() : null;\n if (\"production\" !== 'production') {\n // We allow auto-mocks to proceed as if they're returning null.\n if (\n initialState === undefined &&\n this.getInitialState._isMockFunction\n ) {\n // This is probably bad practice. Consider warning here and\n // deprecating this convenience.\n initialState = null;\n }\n }\n _invariant(\n typeof initialState === 'object' && !Array.isArray(initialState),\n '%s.getInitialState(): must return an object or null',\n Constructor.displayName || 'ReactCompositeComponent'\n );\n\n this.state = initialState;\n });\n Constructor.prototype = new ReactClassComponent();\n Constructor.prototype.constructor = Constructor;\n Constructor.prototype.__reactAutoBindPairs = [];\n\n injectedMixins.forEach(mixSpecIntoComponent.bind(null, Constructor));\n\n mixSpecIntoComponent(Constructor, IsMountedPreMixin);\n mixSpecIntoComponent(Constructor, spec);\n mixSpecIntoComponent(Constructor, IsMountedPostMixin);\n\n // Initialize the defaultProps property after all mixins have been merged.\n if (Constructor.getDefaultProps) {\n Constructor.defaultProps = Constructor.getDefaultProps();\n }\n\n if (\"production\" !== 'production') {\n // This is a tag to indicate that the use of these method names is ok,\n // since it's used with createClass. If it's not, then it's likely a\n // mistake so we'll warn you to use the static property, property\n // initializer or constructor respectively.\n if (Constructor.getDefaultProps) {\n Constructor.getDefaultProps.isReactClassApproved = {};\n }\n if (Constructor.prototype.getInitialState) {\n Constructor.prototype.getInitialState.isReactClassApproved = {};\n }\n }\n\n _invariant(\n Constructor.prototype.render,\n 'createClass(...): Class specification must implement a `render` method.'\n );\n\n if (\"production\" !== 'production') {\n warning(\n !Constructor.prototype.componentShouldUpdate,\n '%s has a method called ' +\n 'componentShouldUpdate(). Did you mean shouldComponentUpdate()? ' +\n 'The name is phrased as a question because the function is ' +\n 'expected to return a value.',\n spec.displayName || 'A component'\n );\n warning(\n !Constructor.prototype.componentWillRecieveProps,\n '%s has a method called ' +\n 'componentWillRecieveProps(). Did you mean componentWillReceiveProps()?',\n spec.displayName || 'A component'\n );\n }\n\n // Reduce time spent doing lookups by setting these on the prototype.\n for (var methodName in ReactClassInterface) {\n if (!Constructor.prototype[methodName]) {\n Constructor.prototype[methodName] = null;\n }\n }\n\n return Constructor;\n }\n\n return createClass;\n}\n\nmodule.exports = factory;\n\n},{\"fbjs/lib/emptyObject\":10,\"fbjs/lib/invariant\":11,\"fbjs/lib/warning\":12,\"object-assign\":13}],9:[function(require,module,exports){\n\"use strict\";\n\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nfunction makeEmptyFunction(arg) {\n return function () {\n return arg;\n };\n}\n\n/**\n * This function accepts and discards inputs; it has no side effects. This is\n * primarily useful idiomatically for overridable function endpoints which\n * always need to be callable, since JS lacks a null-call idiom ala Cocoa.\n */\nvar emptyFunction = function emptyFunction() {};\n\nemptyFunction.thatReturns = makeEmptyFunction;\nemptyFunction.thatReturnsFalse = makeEmptyFunction(false);\nemptyFunction.thatReturnsTrue = makeEmptyFunction(true);\nemptyFunction.thatReturnsNull = makeEmptyFunction(null);\nemptyFunction.thatReturnsThis = function () {\n return this;\n};\nemptyFunction.thatReturnsArgument = function (arg) {\n return arg;\n};\n\nmodule.exports = emptyFunction;\n},{}],10:[function(require,module,exports){\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\nvar emptyObject = {};\n\nif (\"production\" !== 'production') {\n Object.freeze(emptyObject);\n}\n\nmodule.exports = emptyObject;\n},{}],11:[function(require,module,exports){\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar validateFormat = function validateFormat(format) {};\n\nif (\"production\" !== 'production') {\n validateFormat = function validateFormat(format) {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n };\n}\n\nfunction invariant(condition, format, a, b, c, d, e, f) {\n validateFormat(format);\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(format.replace(/%s/g, function () {\n return args[argIndex++];\n }));\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n}\n\nmodule.exports = invariant;\n},{}],12:[function(require,module,exports){\n/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\nvar emptyFunction = require('./emptyFunction');\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar warning = emptyFunction;\n\nif (\"production\" !== 'production') {\n var printWarning = function printWarning(format) {\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var argIndex = 0;\n var message = 'Warning: ' + format.replace(/%s/g, function () {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n\n warning = function warning(condition, format) {\n if (format === undefined) {\n throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument');\n }\n\n if (format.indexOf('Failed Composite propType: ') === 0) {\n return; // Ignore CompositeComponent proptype check.\n }\n\n if (!condition) {\n for (var _len2 = arguments.length, args = Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {\n args[_key2 - 2] = arguments[_key2];\n }\n\n printWarning.apply(undefined, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n},{\"./emptyFunction\":9}],13:[function(require,module,exports){\n/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n\n},{}],14:[function(require,module,exports){\n/**\n * Indicates that navigation was caused by a call to history.push.\n */\n'use strict';\n\nexports.__esModule = true;\nvar PUSH = 'PUSH';\n\nexports.PUSH = PUSH;\n/**\n * Indicates that navigation was caused by a call to history.replace.\n */\nvar REPLACE = 'REPLACE';\n\nexports.REPLACE = REPLACE;\n/**\n * Indicates that navigation was caused by some other action such\n * as using a browser's back/forward buttons and/or manually manipulating\n * the URL in a browser's location bar. This is the default.\n *\n * See https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onpopstate\n * for more information.\n */\nvar POP = 'POP';\n\nexports.POP = POP;\nexports['default'] = {\n PUSH: PUSH,\n REPLACE: REPLACE,\n POP: POP\n};\n},{}],15:[function(require,module,exports){\n\"use strict\";\n\nexports.__esModule = true;\nvar _slice = Array.prototype.slice;\nexports.loopAsync = loopAsync;\n\nfunction loopAsync(turns, work, callback) {\n var currentTurn = 0,\n isDone = false;\n var sync = false,\n hasNext = false,\n doneArgs = undefined;\n\n function done() {\n isDone = true;\n if (sync) {\n // Iterate instead of recursing if possible.\n doneArgs = [].concat(_slice.call(arguments));\n return;\n }\n\n callback.apply(this, arguments);\n }\n\n function next() {\n if (isDone) {\n return;\n }\n\n hasNext = true;\n if (sync) {\n // Iterate instead of recursing if possible.\n return;\n }\n\n sync = true;\n\n while (!isDone && currentTurn < turns && hasNext) {\n hasNext = false;\n work.call(this, currentTurn++, next, done);\n }\n\n sync = false;\n\n if (isDone) {\n // This means the loop finished synchronously.\n callback.apply(this, doneArgs);\n return;\n }\n\n if (currentTurn >= turns && hasNext) {\n isDone = true;\n callback();\n }\n }\n\n next();\n}\n},{}],16:[function(require,module,exports){\n(function (process){\n/*eslint-disable no-empty */\n'use strict';\n\nexports.__esModule = true;\nexports.saveState = saveState;\nexports.readState = readState;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar KeyPrefix = '@@History/';\nvar QuotaExceededErrors = ['QuotaExceededError', 'QUOTA_EXCEEDED_ERR'];\n\nvar SecurityError = 'SecurityError';\n\nfunction createKey(key) {\n return KeyPrefix + key;\n}\n\nfunction saveState(key, state) {\n try {\n if (state == null) {\n window.sessionStorage.removeItem(createKey(key));\n } else {\n window.sessionStorage.setItem(createKey(key), JSON.stringify(state));\n }\n } catch (error) {\n if (error.name === SecurityError) {\n // Blocking cookies in Chrome/Firefox/Safari throws SecurityError on any\n // attempt to access window.sessionStorage.\n process.env.NODE_ENV !== 'production' ? _warning2['default'](false, '[history] Unable to save state; sessionStorage is not available due to security settings') : undefined;\n\n return;\n }\n\n if (QuotaExceededErrors.indexOf(error.name) >= 0 && window.sessionStorage.length === 0) {\n // Safari \"private mode\" throws QuotaExceededError.\n process.env.NODE_ENV !== 'production' ? _warning2['default'](false, '[history] Unable to save state; sessionStorage is not available in Safari private mode') : undefined;\n\n return;\n }\n\n throw error;\n }\n}\n\nfunction readState(key) {\n var json = undefined;\n try {\n json = window.sessionStorage.getItem(createKey(key));\n } catch (error) {\n if (error.name === SecurityError) {\n // Blocking cookies in Chrome/Firefox/Safari throws SecurityError on any\n // attempt to access window.sessionStorage.\n process.env.NODE_ENV !== 'production' ? _warning2['default'](false, '[history] Unable to read state; sessionStorage is not available due to security settings') : undefined;\n\n return null;\n }\n }\n\n if (json) {\n try {\n return JSON.parse(json);\n } catch (error) {\n // Ignore invalid JSON.\n }\n }\n\n return null;\n}\n}).call(this,require('_process'))\n},{\"_process\":7,\"warning\":36}],17:[function(require,module,exports){\n'use strict';\n\nexports.__esModule = true;\nexports.addEventListener = addEventListener;\nexports.removeEventListener = removeEventListener;\nexports.getHashPath = getHashPath;\nexports.replaceHashPath = replaceHashPath;\nexports.getWindowPath = getWindowPath;\nexports.go = go;\nexports.getUserConfirmation = getUserConfirmation;\nexports.supportsHistory = supportsHistory;\nexports.supportsGoWithoutReloadUsingHash = supportsGoWithoutReloadUsingHash;\n\nfunction addEventListener(node, event, listener) {\n if (node.addEventListener) {\n node.addEventListener(event, listener, false);\n } else {\n node.attachEvent('on' + event, listener);\n }\n}\n\nfunction removeEventListener(node, event, listener) {\n if (node.removeEventListener) {\n node.removeEventListener(event, listener, false);\n } else {\n node.detachEvent('on' + event, listener);\n }\n}\n\nfunction getHashPath() {\n // We can't use window.location.hash here because it's not\n // consistent across browsers - Firefox will pre-decode it!\n return window.location.href.split('#')[1] || '';\n}\n\nfunction replaceHashPath(path) {\n window.location.replace(window.location.pathname + window.location.search + '#' + path);\n}\n\nfunction getWindowPath() {\n return window.location.pathname + window.location.search + window.location.hash;\n}\n\nfunction go(n) {\n if (n) window.history.go(n);\n}\n\nfunction getUserConfirmation(message, callback) {\n callback(window.confirm(message));\n}\n\n/**\n * Returns true if the HTML5 history API is supported. Taken from Modernizr.\n *\n * https://github.com/Modernizr/Modernizr/blob/master/LICENSE\n * https://github.com/Modernizr/Modernizr/blob/master/feature-detects/history.js\n * changed to avoid false negatives for Windows Phones: https://github.com/rackt/react-router/issues/586\n */\n\nfunction supportsHistory() {\n var ua = navigator.userAgent;\n 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) {\n return false;\n }\n return window.history && 'pushState' in window.history;\n}\n\n/**\n * Returns false if using go(n) with hash history causes a full page reload.\n */\n\nfunction supportsGoWithoutReloadUsingHash() {\n var ua = navigator.userAgent;\n return ua.indexOf('Firefox') === -1;\n}\n},{}],18:[function(require,module,exports){\n'use strict';\n\nexports.__esModule = true;\nvar canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\nexports.canUseDOM = canUseDOM;\n},{}],19:[function(require,module,exports){\n(function (process){\n'use strict';\n\nexports.__esModule = true;\nexports.extractPath = extractPath;\nexports.parsePath = parsePath;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nfunction extractPath(string) {\n var match = string.match(/^https?:\\/\\/[^\\/]*/);\n\n if (match == null) return string;\n\n return string.substring(match[0].length);\n}\n\nfunction parsePath(path) {\n var pathname = extractPath(path);\n var search = '';\n var hash = '';\n\n process.env.NODE_ENV !== 'production' ? _warning2['default'](path === pathname, 'A path must be pathname + search + hash only, not a fully qualified URL like \"%s\"', path) : undefined;\n\n var hashIndex = pathname.indexOf('#');\n if (hashIndex !== -1) {\n hash = pathname.substring(hashIndex);\n pathname = pathname.substring(0, hashIndex);\n }\n\n var searchIndex = pathname.indexOf('?');\n if (searchIndex !== -1) {\n search = pathname.substring(searchIndex);\n pathname = pathname.substring(0, searchIndex);\n }\n\n if (pathname === '') pathname = '/';\n\n return {\n pathname: pathname,\n search: search,\n hash: hash\n };\n}\n}).call(this,require('_process'))\n},{\"_process\":7,\"warning\":36}],20:[function(require,module,exports){\n(function (process){\n'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _invariant = require('invariant');\n\nvar _invariant2 = _interopRequireDefault(_invariant);\n\nvar _Actions = require('./Actions');\n\nvar _PathUtils = require('./PathUtils');\n\nvar _ExecutionEnvironment = require('./ExecutionEnvironment');\n\nvar _DOMUtils = require('./DOMUtils');\n\nvar _DOMStateStorage = require('./DOMStateStorage');\n\nvar _createDOMHistory = require('./createDOMHistory');\n\nvar _createDOMHistory2 = _interopRequireDefault(_createDOMHistory);\n\n/**\n * Creates and returns a history object that uses HTML5's history API\n * (pushState, replaceState, and the popstate event) to manage history.\n * This is the recommended method of managing history in browsers because\n * it provides the cleanest URLs.\n *\n * Note: In browsers that do not support the HTML5 history API full\n * page reloads will be used to preserve URLs.\n */\nfunction createBrowserHistory() {\n var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\n !_ExecutionEnvironment.canUseDOM ? process.env.NODE_ENV !== 'production' ? _invariant2['default'](false, 'Browser history needs a DOM') : _invariant2['default'](false) : undefined;\n\n var forceRefresh = options.forceRefresh;\n\n var isSupported = _DOMUtils.supportsHistory();\n var useRefresh = !isSupported || forceRefresh;\n\n function getCurrentLocation(historyState) {\n try {\n historyState = historyState || window.history.state || {};\n } catch (e) {\n historyState = {};\n }\n\n var path = _DOMUtils.getWindowPath();\n var _historyState = historyState;\n var key = _historyState.key;\n\n var state = undefined;\n if (key) {\n state = _DOMStateStorage.readState(key);\n } else {\n state = null;\n key = history.createKey();\n\n if (isSupported) window.history.replaceState(_extends({}, historyState, { key: key }), null);\n }\n\n var location = _PathUtils.parsePath(path);\n\n return history.createLocation(_extends({}, location, { state: state }), undefined, key);\n }\n\n function startPopStateListener(_ref) {\n var transitionTo = _ref.transitionTo;\n\n function popStateListener(event) {\n if (event.state === undefined) return; // Ignore extraneous popstate events in WebKit.\n\n transitionTo(getCurrentLocation(event.state));\n }\n\n _DOMUtils.addEventListener(window, 'popstate', popStateListener);\n\n return function () {\n _DOMUtils.removeEventListener(window, 'popstate', popStateListener);\n };\n }\n\n function finishTransition(location) {\n var basename = location.basename;\n var pathname = location.pathname;\n var search = location.search;\n var hash = location.hash;\n var state = location.state;\n var action = location.action;\n var key = location.key;\n\n if (action === _Actions.POP) return; // Nothing to do.\n\n _DOMStateStorage.saveState(key, state);\n\n var path = (basename || '') + pathname + search + hash;\n var historyState = {\n key: key\n };\n\n if (action === _Actions.PUSH) {\n if (useRefresh) {\n window.location.href = path;\n return false; // Prevent location update.\n } else {\n window.history.pushState(historyState, null, path);\n }\n } else {\n // REPLACE\n if (useRefresh) {\n window.location.replace(path);\n return false; // Prevent location update.\n } else {\n window.history.replaceState(historyState, null, path);\n }\n }\n }\n\n var history = _createDOMHistory2['default'](_extends({}, options, {\n getCurrentLocation: getCurrentLocation,\n finishTransition: finishTransition,\n saveState: _DOMStateStorage.saveState\n }));\n\n var listenerCount = 0,\n stopPopStateListener = undefined;\n\n function listenBefore(listener) {\n if (++listenerCount === 1) stopPopStateListener = startPopStateListener(history);\n\n var unlisten = history.listenBefore(listener);\n\n return function () {\n unlisten();\n\n if (--listenerCount === 0) stopPopStateListener();\n };\n }\n\n function listen(listener) {\n if (++listenerCount === 1) stopPopStateListener = startPopStateListener(history);\n\n var unlisten = history.listen(listener);\n\n return function () {\n unlisten();\n\n if (--listenerCount === 0) stopPopStateListener();\n };\n }\n\n // deprecated\n function registerTransitionHook(hook) {\n if (++listenerCount === 1) stopPopStateListener = startPopStateListener(history);\n\n history.registerTransitionHook(hook);\n }\n\n // deprecated\n function unregisterTransitionHook(hook) {\n history.unregisterTransitionHook(hook);\n\n if (--listenerCount === 0) stopPopStateListener();\n }\n\n return _extends({}, history, {\n listenBefore: listenBefore,\n listen: listen,\n registerTransitionHook: registerTransitionHook,\n unregisterTransitionHook: unregisterTransitionHook\n });\n}\n\nexports['default'] = createBrowserHistory;\nmodule.exports = exports['default'];\n}).call(this,require('_process'))\n},{\"./Actions\":14,\"./DOMStateStorage\":16,\"./DOMUtils\":17,\"./ExecutionEnvironment\":18,\"./PathUtils\":19,\"./createDOMHistory\":21,\"_process\":7,\"invariant\":33}],21:[function(require,module,exports){\n(function (process){\n'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _invariant = require('invariant');\n\nvar _invariant2 = _interopRequireDefault(_invariant);\n\nvar _ExecutionEnvironment = require('./ExecutionEnvironment');\n\nvar _DOMUtils = require('./DOMUtils');\n\nvar _createHistory = require('./createHistory');\n\nvar _createHistory2 = _interopRequireDefault(_createHistory);\n\nfunction createDOMHistory(options) {\n var history = _createHistory2['default'](_extends({\n getUserConfirmation: _DOMUtils.getUserConfirmation\n }, options, {\n go: _DOMUtils.go\n }));\n\n function listen(listener) {\n !_ExecutionEnvironment.canUseDOM ? process.env.NODE_ENV !== 'production' ? _invariant2['default'](false, 'DOM history needs a DOM') : _invariant2['default'](false) : undefined;\n\n return history.listen(listener);\n }\n\n return _extends({}, history, {\n listen: listen\n });\n}\n\nexports['default'] = createDOMHistory;\nmodule.exports = exports['default'];\n}).call(this,require('_process'))\n},{\"./DOMUtils\":17,\"./ExecutionEnvironment\":18,\"./createHistory\":23,\"_process\":7,\"invariant\":33}],22:[function(require,module,exports){\n(function (process){\n'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _invariant = require('invariant');\n\nvar _invariant2 = _interopRequireDefault(_invariant);\n\nvar _Actions = require('./Actions');\n\nvar _PathUtils = require('./PathUtils');\n\nvar _ExecutionEnvironment = require('./ExecutionEnvironment');\n\nvar _DOMUtils = require('./DOMUtils');\n\nvar _DOMStateStorage = require('./DOMStateStorage');\n\nvar _createDOMHistory = require('./createDOMHistory');\n\nvar _createDOMHistory2 = _interopRequireDefault(_createDOMHistory);\n\nfunction isAbsolutePath(path) {\n return typeof path === 'string' && path.charAt(0) === '/';\n}\n\nfunction ensureSlash() {\n var path = _DOMUtils.getHashPath();\n\n if (isAbsolutePath(path)) return true;\n\n _DOMUtils.replaceHashPath('/' + path);\n\n return false;\n}\n\nfunction addQueryStringValueToPath(path, key, value) {\n return path + (path.indexOf('?') === -1 ? '?' : '&') + (key + '=' + value);\n}\n\nfunction stripQueryStringValueFromPath(path, key) {\n return path.replace(new RegExp('[?&]?' + key + '=[a-zA-Z0-9]+'), '');\n}\n\nfunction getQueryStringValueFromPath(path, key) {\n var match = path.match(new RegExp('\\\\?.*?\\\\b' + key + '=(.+?)\\\\b'));\n return match && match[1];\n}\n\nvar DefaultQueryKey = '_k';\n\nfunction createHashHistory() {\n var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\n !_ExecutionEnvironment.canUseDOM ? process.env.NODE_ENV !== 'production' ? _invariant2['default'](false, 'Hash history needs a DOM') : _invariant2['default'](false) : undefined;\n\n var queryKey = options.queryKey;\n\n if (queryKey === undefined || !!queryKey) queryKey = typeof queryKey === 'string' ? queryKey : DefaultQueryKey;\n\n function getCurrentLocation() {\n var path = _DOMUtils.getHashPath();\n\n var key = undefined,\n state = undefined;\n if (queryKey) {\n key = getQueryStringValueFromPath(path, queryKey);\n path = stripQueryStringValueFromPath(path, queryKey);\n\n if (key) {\n state = _DOMStateStorage.readState(key);\n } else {\n state = null;\n key = history.createKey();\n _DOMUtils.replaceHashPath(addQueryStringValueToPath(path, queryKey, key));\n }\n } else {\n key = state = null;\n }\n\n var location = _PathUtils.parsePath(path);\n\n return history.createLocation(_extends({}, location, { state: state }), undefined, key);\n }\n\n function startHashChangeListener(_ref) {\n var transitionTo = _ref.transitionTo;\n\n function hashChangeListener() {\n if (!ensureSlash()) return; // Always make sure hashes are preceeded with a /.\n\n transitionTo(getCurrentLocation());\n }\n\n ensureSlash();\n _DOMUtils.addEventListener(window, 'hashchange', hashChangeListener);\n\n return function () {\n _DOMUtils.removeEventListener(window, 'hashchange', hashChangeListener);\n };\n }\n\n function finishTransition(location) {\n var basename = location.basename;\n var pathname = location.pathname;\n var search = location.search;\n var state = location.state;\n var action = location.action;\n var key = location.key;\n\n if (action === _Actions.POP) return; // Nothing to do.\n\n var path = (basename || '') + pathname + search;\n\n if (queryKey) {\n path = addQueryStringValueToPath(path, queryKey, key);\n _DOMStateStorage.saveState(key, state);\n } else {\n // Drop key and state.\n location.key = location.state = null;\n }\n\n var currentHash = _DOMUtils.getHashPath();\n\n if (action === _Actions.PUSH) {\n if (currentHash !== path) {\n window.location.hash = path;\n } else {\n process.env.NODE_ENV !== 'production' ? _warning2['default'](false, 'You cannot PUSH the same path using hash history') : undefined;\n }\n } else if (currentHash !== path) {\n // REPLACE\n _DOMUtils.replaceHashPath(path);\n }\n }\n\n var history = _createDOMHistory2['default'](_extends({}, options, {\n getCurrentLocation: getCurrentLocation,\n finishTransition: finishTransition,\n saveState: _DOMStateStorage.saveState\n }));\n\n var listenerCount = 0,\n stopHashChangeListener = undefined;\n\n function listenBefore(listener) {\n if (++listenerCount === 1) stopHashChangeListener = startHashChangeListener(history);\n\n var unlisten = history.listenBefore(listener);\n\n return function () {\n unlisten();\n\n if (--listenerCount === 0) stopHashChangeListener();\n };\n }\n\n function listen(listener) {\n if (++listenerCount === 1) stopHashChangeListener = startHashChangeListener(history);\n\n var unlisten = history.listen(listener);\n\n return function () {\n unlisten();\n\n if (--listenerCount === 0) stopHashChangeListener();\n };\n }\n\n function push(location) {\n process.env.NODE_ENV !== 'production' ? _warning2['default'](queryKey || location.state == null, 'You cannot use state without a queryKey it will be dropped') : undefined;\n\n history.push(location);\n }\n\n function replace(location) {\n process.env.NODE_ENV !== 'production' ? _warning2['default'](queryKey || location.state == null, 'You cannot use state without a queryKey it will be dropped') : undefined;\n\n history.replace(location);\n }\n\n var goIsSupportedWithoutReload = _DOMUtils.supportsGoWithoutReloadUsingHash();\n\n function go(n) {\n process.env.NODE_ENV !== 'production' ? _warning2['default'](goIsSupportedWithoutReload, 'Hash history go(n) causes a full page reload in this browser') : undefined;\n\n history.go(n);\n }\n\n function createHref(path) {\n return '#' + history.createHref(path);\n }\n\n // deprecated\n function registerTransitionHook(hook) {\n if (++listenerCount === 1) stopHashChangeListener = startHashChangeListener(history);\n\n history.registerTransitionHook(hook);\n }\n\n // deprecated\n function unregisterTransitionHook(hook) {\n history.unregisterTransitionHook(hook);\n\n if (--listenerCount === 0) stopHashChangeListener();\n }\n\n // deprecated\n function pushState(state, path) {\n process.env.NODE_ENV !== 'production' ? _warning2['default'](queryKey || state == null, 'You cannot use state without a queryKey it will be dropped') : undefined;\n\n history.pushState(state, path);\n }\n\n // deprecated\n function replaceState(state, path) {\n process.env.NODE_ENV !== 'production' ? _warning2['default'](queryKey || state == null, 'You cannot use state without a queryKey it will be dropped') : undefined;\n\n history.replaceState(state, path);\n }\n\n return _extends({}, history, {\n listenBefore: listenBefore,\n listen: listen,\n push: push,\n replace: replace,\n go: go,\n createHref: createHref,\n\n registerTransitionHook: registerTransitionHook, // deprecated - warning is in createHistory\n unregisterTransitionHook: unregisterTransitionHook, // deprecated - warning is in createHistory\n pushState: pushState, // deprecated - warning is in createHistory\n replaceState: replaceState // deprecated - warning is in createHistory\n });\n}\n\nexports['default'] = createHashHistory;\nmodule.exports = exports['default'];\n}).call(this,require('_process'))\n},{\"./Actions\":14,\"./DOMStateStorage\":16,\"./DOMUtils\":17,\"./ExecutionEnvironment\":18,\"./PathUtils\":19,\"./createDOMHistory\":21,\"_process\":7,\"invariant\":33,\"warning\":36}],23:[function(require,module,exports){\n(function (process){\n'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _deepEqual = require('deep-equal');\n\nvar _deepEqual2 = _interopRequireDefault(_deepEqual);\n\nvar _PathUtils = require('./PathUtils');\n\nvar _AsyncUtils = require('./AsyncUtils');\n\nvar _Actions = require('./Actions');\n\nvar _createLocation2 = require('./createLocation');\n\nvar _createLocation3 = _interopRequireDefault(_createLocation2);\n\nvar _runTransitionHook = require('./runTransitionHook');\n\nvar _runTransitionHook2 = _interopRequireDefault(_runTransitionHook);\n\nvar _deprecate = require('./deprecate');\n\nvar _deprecate2 = _interopRequireDefault(_deprecate);\n\nfunction createRandomKey(length) {\n return Math.random().toString(36).substr(2, length);\n}\n\nfunction locationsAreEqual(a, b) {\n return a.pathname === b.pathname && a.search === b.search &&\n //a.action === b.action && // Different action !== location change.\n a.key === b.key && _deepEqual2['default'](a.state, b.state);\n}\n\nvar DefaultKeyLength = 6;\n\nfunction createHistory() {\n var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n var getCurrentLocation = options.getCurrentLocation;\n var finishTransition = options.finishTransition;\n var saveState = options.saveState;\n var go = options.go;\n var getUserConfirmation = options.getUserConfirmation;\n var keyLength = options.keyLength;\n\n if (typeof keyLength !== 'number') keyLength = DefaultKeyLength;\n\n var transitionHooks = [];\n\n function listenBefore(hook) {\n transitionHooks.push(hook);\n\n return function () {\n transitionHooks = transitionHooks.filter(function (item) {\n return item !== hook;\n });\n };\n }\n\n var allKeys = [];\n var changeListeners = [];\n var location = undefined;\n\n function getCurrent() {\n if (pendingLocation && pendingLocation.action === _Actions.POP) {\n return allKeys.indexOf(pendingLocation.key);\n } else if (location) {\n return allKeys.indexOf(location.key);\n } else {\n return -1;\n }\n }\n\n function updateLocation(newLocation) {\n var current = getCurrent();\n\n location = newLocation;\n\n if (location.action === _Actions.PUSH) {\n allKeys = [].concat(allKeys.slice(0, current + 1), [location.key]);\n } else if (location.action === _Actions.REPLACE) {\n allKeys[current] = location.key;\n }\n\n changeListeners.forEach(function (listener) {\n listener(location);\n });\n }\n\n function listen(listener) {\n changeListeners.push(listener);\n\n if (location) {\n listener(location);\n } else {\n var _location = getCurrentLocation();\n allKeys = [_location.key];\n updateLocation(_location);\n }\n\n return function () {\n changeListeners = changeListeners.filter(function (item) {\n return item !== listener;\n });\n };\n }\n\n function confirmTransitionTo(location, callback) {\n _AsyncUtils.loopAsync(transitionHooks.length, function (index, next, done) {\n _runTransitionHook2['default'](transitionHooks[index], location, function (result) {\n if (result != null) {\n done(result);\n } else {\n next();\n }\n });\n }, function (message) {\n if (getUserConfirmation && typeof message === 'string') {\n getUserConfirmation(message, function (ok) {\n callback(ok !== false);\n });\n } else {\n callback(message !== false);\n }\n });\n }\n\n var pendingLocation = undefined;\n\n function transitionTo(nextLocation) {\n if (location && locationsAreEqual(location, nextLocation)) return; // Nothing to do.\n\n pendingLocation = nextLocation;\n\n confirmTransitionTo(nextLocation, function (ok) {\n if (pendingLocation !== nextLocation) return; // Transition was interrupted.\n\n if (ok) {\n // treat PUSH to current path like REPLACE to be consistent with browsers\n if (nextLocation.action === _Actions.PUSH) {\n var prevPath = createPath(location);\n var nextPath = createPath(nextLocation);\n\n if (nextPath === prevPath && _deepEqual2['default'](location.state, nextLocation.state)) nextLocation.action = _Actions.REPLACE;\n }\n\n if (finishTransition(nextLocation) !== false) updateLocation(nextLocation);\n } else if (location && nextLocation.action === _Actions.POP) {\n var prevIndex = allKeys.indexOf(location.key);\n var nextIndex = allKeys.indexOf(nextLocation.key);\n\n if (prevIndex !== -1 && nextIndex !== -1) go(prevIndex - nextIndex); // Restore the URL.\n }\n });\n }\n\n function push(location) {\n transitionTo(createLocation(location, _Actions.PUSH, createKey()));\n }\n\n function replace(location) {\n transitionTo(createLocation(location, _Actions.REPLACE, createKey()));\n }\n\n function goBack() {\n go(-1);\n }\n\n function goForward() {\n go(1);\n }\n\n function createKey() {\n return createRandomKey(keyLength);\n }\n\n function createPath(location) {\n if (location == null || typeof location === 'string') return location;\n\n var pathname = location.pathname;\n var search = location.search;\n var hash = location.hash;\n\n var result = pathname;\n\n if (search) result += search;\n\n if (hash) result += hash;\n\n return result;\n }\n\n function createHref(location) {\n return createPath(location);\n }\n\n function createLocation(location, action) {\n var key = arguments.length <= 2 || arguments[2] === undefined ? createKey() : arguments[2];\n\n if (typeof action === 'object') {\n process.env.NODE_ENV !== 'production' ? _warning2['default'](false, 'The state (2nd) argument to history.createLocation is deprecated; use a ' + 'location descriptor instead') : undefined;\n\n if (typeof location === 'string') location = _PathUtils.parsePath(location);\n\n location = _extends({}, location, { state: action });\n\n action = key;\n key = arguments[3] || createKey();\n }\n\n return _createLocation3['default'](location, action, key);\n }\n\n // deprecated\n function setState(state) {\n if (location) {\n updateLocationState(location, state);\n updateLocation(location);\n } else {\n updateLocationState(getCurrentLocation(), state);\n }\n }\n\n function updateLocationState(location, state) {\n location.state = _extends({}, location.state, state);\n saveState(location.key, location.state);\n }\n\n // deprecated\n function registerTransitionHook(hook) {\n if (transitionHooks.indexOf(hook) === -1) transitionHooks.push(hook);\n }\n\n // deprecated\n function unregisterTransitionHook(hook) {\n transitionHooks = transitionHooks.filter(function (item) {\n return item !== hook;\n });\n }\n\n // deprecated\n function pushState(state, path) {\n if (typeof path === 'string') path = _PathUtils.parsePath(path);\n\n push(_extends({ state: state }, path));\n }\n\n // deprecated\n function replaceState(state, path) {\n if (typeof path === 'string') path = _PathUtils.parsePath(path);\n\n replace(_extends({ state: state }, path));\n }\n\n return {\n listenBefore: listenBefore,\n listen: listen,\n transitionTo: transitionTo,\n push: push,\n replace: replace,\n go: go,\n goBack: goBack,\n goForward: goForward,\n createKey: createKey,\n createPath: createPath,\n createHref: createHref,\n createLocation: createLocation,\n\n setState: _deprecate2['default'](setState, 'setState is deprecated; use location.key to save state instead'),\n registerTransitionHook: _deprecate2['default'](registerTransitionHook, 'registerTransitionHook is deprecated; use listenBefore instead'),\n unregisterTransitionHook: _deprecate2['default'](unregisterTransitionHook, 'unregisterTransitionHook is deprecated; use the callback returned from listenBefore instead'),\n pushState: _deprecate2['default'](pushState, 'pushState is deprecated; use push instead'),\n replaceState: _deprecate2['default'](replaceState, 'replaceState is deprecated; use replace instead')\n };\n}\n\nexports['default'] = createHistory;\nmodule.exports = exports['default'];\n}).call(this,require('_process'))\n},{\"./Actions\":14,\"./AsyncUtils\":15,\"./PathUtils\":19,\"./createLocation\":24,\"./deprecate\":26,\"./runTransitionHook\":27,\"_process\":7,\"deep-equal\":30,\"warning\":36}],24:[function(require,module,exports){\n(function (process){\n'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _Actions = require('./Actions');\n\nvar _PathUtils = require('./PathUtils');\n\nfunction createLocation() {\n var location = arguments.length <= 0 || arguments[0] === undefined ? '/' : arguments[0];\n var action = arguments.length <= 1 || arguments[1] === undefined ? _Actions.POP : arguments[1];\n var key = arguments.length <= 2 || arguments[2] === undefined ? null : arguments[2];\n\n var _fourthArg = arguments.length <= 3 || arguments[3] === undefined ? null : arguments[3];\n\n if (typeof location === 'string') location = _PathUtils.parsePath(location);\n\n if (typeof action === 'object') {\n process.env.NODE_ENV !== 'production' ? _warning2['default'](false, 'The state (2nd) argument to createLocation is deprecated; use a ' + 'location descriptor instead') : undefined;\n\n location = _extends({}, location, { state: action });\n\n action = key || _Actions.POP;\n key = _fourthArg;\n }\n\n var pathname = location.pathname || '/';\n var search = location.search || '';\n var hash = location.hash || '';\n var state = location.state || null;\n\n return {\n pathname: pathname,\n search: search,\n hash: hash,\n state: state,\n action: action,\n key: key\n };\n}\n\nexports['default'] = createLocation;\nmodule.exports = exports['default'];\n}).call(this,require('_process'))\n},{\"./Actions\":14,\"./PathUtils\":19,\"_process\":7,\"warning\":36}],25:[function(require,module,exports){\n(function (process){\n'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _invariant = require('invariant');\n\nvar _invariant2 = _interopRequireDefault(_invariant);\n\nvar _PathUtils = require('./PathUtils');\n\nvar _Actions = require('./Actions');\n\nvar _createHistory = require('./createHistory');\n\nvar _createHistory2 = _interopRequireDefault(_createHistory);\n\nfunction createStateStorage(entries) {\n return entries.filter(function (entry) {\n return entry.state;\n }).reduce(function (memo, entry) {\n memo[entry.key] = entry.state;\n return memo;\n }, {});\n}\n\nfunction createMemoryHistory() {\n var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\n if (Array.isArray(options)) {\n options = { entries: options };\n } else if (typeof options === 'string') {\n options = { entries: [options] };\n }\n\n var history = _createHistory2['default'](_extends({}, options, {\n getCurrentLocation: getCurrentLocation,\n finishTransition: finishTransition,\n saveState: saveState,\n go: go\n }));\n\n var _options = options;\n var entries = _options.entries;\n var current = _options.current;\n\n if (typeof entries === 'string') {\n entries = [entries];\n } else if (!Array.isArray(entries)) {\n entries = ['/'];\n }\n\n entries = entries.map(function (entry) {\n var key = history.createKey();\n\n if (typeof entry === 'string') return { pathname: entry, key: key };\n\n if (typeof entry === 'object' && entry) return _extends({}, entry, { key: key });\n\n !false ? process.env.NODE_ENV !== 'production' ? _invariant2['default'](false, 'Unable to create history entry from %s', entry) : _invariant2['default'](false) : undefined;\n });\n\n if (current == null) {\n current = entries.length - 1;\n } else {\n !(current >= 0 && current < entries.length) ? process.env.NODE_ENV !== 'production' ? _invariant2['default'](false, 'Current index must be >= 0 and < %s, was %s', entries.length, current) : _invariant2['default'](false) : undefined;\n }\n\n var storage = createStateStorage(entries);\n\n function saveState(key, state) {\n storage[key] = state;\n }\n\n function readState(key) {\n return storage[key];\n }\n\n function getCurrentLocation() {\n var entry = entries[current];\n var basename = entry.basename;\n var pathname = entry.pathname;\n var search = entry.search;\n\n var path = (basename || '') + pathname + (search || '');\n\n var key = undefined,\n state = undefined;\n if (entry.key) {\n key = entry.key;\n state = readState(key);\n } else {\n key = history.createKey();\n state = null;\n entry.key = key;\n }\n\n var location = _PathUtils.parsePath(path);\n\n return history.createLocation(_extends({}, location, { state: state }), undefined, key);\n }\n\n function canGo(n) {\n var index = current + n;\n return index >= 0 && index < entries.length;\n }\n\n function go(n) {\n if (n) {\n if (!canGo(n)) {\n process.env.NODE_ENV !== 'production' ? _warning2['default'](false, 'Cannot go(%s) there is not enough history', n) : undefined;\n return;\n }\n\n current += n;\n\n var currentLocation = getCurrentLocation();\n\n // change action to POP\n history.transitionTo(_extends({}, currentLocation, { action: _Actions.POP }));\n }\n }\n\n function finishTransition(location) {\n switch (location.action) {\n case _Actions.PUSH:\n current += 1;\n\n // if we are not on the top of stack\n // remove rest and push new\n if (current < entries.length) entries.splice(current);\n\n entries.push(location);\n saveState(location.key, location.state);\n break;\n case _Actions.REPLACE:\n entries[current] = location;\n saveState(location.key, location.state);\n break;\n }\n }\n\n return history;\n}\n\nexports['default'] = createMemoryHistory;\nmodule.exports = exports['default'];\n}).call(this,require('_process'))\n},{\"./Actions\":14,\"./PathUtils\":19,\"./createHistory\":23,\"_process\":7,\"invariant\":33,\"warning\":36}],26:[function(require,module,exports){\n(function (process){\n'use strict';\n\nexports.__esModule = true;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nfunction deprecate(fn, message) {\n return function () {\n process.env.NODE_ENV !== 'production' ? _warning2['default'](false, '[history] ' + message) : undefined;\n return fn.apply(this, arguments);\n };\n}\n\nexports['default'] = deprecate;\nmodule.exports = exports['default'];\n}).call(this,require('_process'))\n},{\"_process\":7,\"warning\":36}],27:[function(require,module,exports){\n(function (process){\n'use strict';\n\nexports.__esModule = true;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nfunction runTransitionHook(hook, location, callback) {\n var result = hook(location, callback);\n\n if (hook.length < 2) {\n // Assume the hook runs synchronously and automatically\n // call the callback with the return value.\n callback(result);\n } else {\n process.env.NODE_ENV !== 'production' ? _warning2['default'](result === undefined, 'You should not \"return\" in a transition hook with a callback argument; call the callback instead') : undefined;\n }\n}\n\nexports['default'] = runTransitionHook;\nmodule.exports = exports['default'];\n}).call(this,require('_process'))\n},{\"_process\":7,\"warning\":36}],28:[function(require,module,exports){\n(function (process){\n'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _ExecutionEnvironment = require('./ExecutionEnvironment');\n\nvar _PathUtils = require('./PathUtils');\n\nvar _runTransitionHook = require('./runTransitionHook');\n\nvar _runTransitionHook2 = _interopRequireDefault(_runTransitionHook);\n\nvar _deprecate = require('./deprecate');\n\nvar _deprecate2 = _interopRequireDefault(_deprecate);\n\nfunction useBasename(createHistory) {\n return function () {\n var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\n var history = createHistory(options);\n\n var basename = options.basename;\n\n var checkedBaseHref = false;\n\n function checkBaseHref() {\n if (checkedBaseHref) {\n return;\n }\n\n // Automatically use the value of in HTML\n // documents as basename if it's not explicitly given.\n if (basename == null && _ExecutionEnvironment.canUseDOM) {\n var base = document.getElementsByTagName('base')[0];\n var baseHref = base && base.getAttribute('href');\n\n if (baseHref != null) {\n basename = baseHref;\n\n process.env.NODE_ENV !== 'production' ? _warning2['default'](false, 'Automatically setting basename using is deprecated and will ' + 'be removed in the next major release. The semantics of are ' + 'subtly different from basename. Please pass the basename explicitly in ' + 'the options to createHistory') : undefined;\n }\n }\n\n checkedBaseHref = true;\n }\n\n function addBasename(location) {\n checkBaseHref();\n\n if (basename && location.basename == null) {\n if (location.pathname.indexOf(basename) === 0) {\n location.pathname = location.pathname.substring(basename.length);\n location.basename = basename;\n\n if (location.pathname === '') location.pathname = '/';\n } else {\n location.basename = '';\n }\n }\n\n return location;\n }\n\n function prependBasename(location) {\n checkBaseHref();\n\n if (!basename) return location;\n\n if (typeof location === 'string') location = _PathUtils.parsePath(location);\n\n var pname = location.pathname;\n var normalizedBasename = basename.slice(-1) === '/' ? basename : basename + '/';\n var normalizedPathname = pname.charAt(0) === '/' ? pname.slice(1) : pname;\n var pathname = normalizedBasename + normalizedPathname;\n\n return _extends({}, location, {\n pathname: pathname\n });\n }\n\n // Override all read methods with basename-aware versions.\n function listenBefore(hook) {\n return history.listenBefore(function (location, callback) {\n _runTransitionHook2['default'](hook, addBasename(location), callback);\n });\n }\n\n function listen(listener) {\n return history.listen(function (location) {\n listener(addBasename(location));\n });\n }\n\n // Override all write methods with basename-aware versions.\n function push(location) {\n history.push(prependBasename(location));\n }\n\n function replace(location) {\n history.replace(prependBasename(location));\n }\n\n function createPath(location) {\n return history.createPath(prependBasename(location));\n }\n\n function createHref(location) {\n return history.createHref(prependBasename(location));\n }\n\n function createLocation(location) {\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return addBasename(history.createLocation.apply(history, [prependBasename(location)].concat(args)));\n }\n\n // deprecated\n function pushState(state, path) {\n if (typeof path === 'string') path = _PathUtils.parsePath(path);\n\n push(_extends({ state: state }, path));\n }\n\n // deprecated\n function replaceState(state, path) {\n if (typeof path === 'string') path = _PathUtils.parsePath(path);\n\n replace(_extends({ state: state }, path));\n }\n\n return _extends({}, history, {\n listenBefore: listenBefore,\n listen: listen,\n push: push,\n replace: replace,\n createPath: createPath,\n createHref: createHref,\n createLocation: createLocation,\n\n pushState: _deprecate2['default'](pushState, 'pushState is deprecated; use push instead'),\n replaceState: _deprecate2['default'](replaceState, 'replaceState is deprecated; use replace instead')\n });\n };\n}\n\nexports['default'] = useBasename;\nmodule.exports = exports['default'];\n}).call(this,require('_process'))\n},{\"./ExecutionEnvironment\":18,\"./PathUtils\":19,\"./deprecate\":26,\"./runTransitionHook\":27,\"_process\":7,\"warning\":36}],29:[function(require,module,exports){\n(function (process){\n'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _queryString = require('query-string');\n\nvar _runTransitionHook = require('./runTransitionHook');\n\nvar _runTransitionHook2 = _interopRequireDefault(_runTransitionHook);\n\nvar _PathUtils = require('./PathUtils');\n\nvar _deprecate = require('./deprecate');\n\nvar _deprecate2 = _interopRequireDefault(_deprecate);\n\nvar SEARCH_BASE_KEY = '$searchBase';\n\nfunction defaultStringifyQuery(query) {\n return _queryString.stringify(query).replace(/%20/g, '+');\n}\n\nvar defaultParseQueryString = _queryString.parse;\n\nfunction isNestedObject(object) {\n for (var p in object) {\n if (Object.prototype.hasOwnProperty.call(object, p) && typeof object[p] === 'object' && !Array.isArray(object[p]) && object[p] !== null) return true;\n }return false;\n}\n\n/**\n * Returns a new createHistory function that may be used to create\n * history objects that know how to handle URL queries.\n */\nfunction useQueries(createHistory) {\n return function () {\n var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\n var history = createHistory(options);\n\n var stringifyQuery = options.stringifyQuery;\n var parseQueryString = options.parseQueryString;\n\n if (typeof stringifyQuery !== 'function') stringifyQuery = defaultStringifyQuery;\n\n if (typeof parseQueryString !== 'function') parseQueryString = defaultParseQueryString;\n\n function addQuery(location) {\n if (location.query == null) {\n var search = location.search;\n\n location.query = parseQueryString(search.substring(1));\n location[SEARCH_BASE_KEY] = { search: search, searchBase: '' };\n }\n\n // TODO: Instead of all the book-keeping here, this should just strip the\n // stringified query from the search.\n\n return location;\n }\n\n function appendQuery(location, query) {\n var _extends2;\n\n var searchBaseSpec = location[SEARCH_BASE_KEY];\n var queryString = query ? stringifyQuery(query) : '';\n if (!searchBaseSpec && !queryString) {\n return location;\n }\n\n process.env.NODE_ENV !== 'production' ? _warning2['default'](stringifyQuery !== defaultStringifyQuery || !isNestedObject(query), 'useQueries does not stringify nested query objects by default; ' + 'use a custom stringifyQuery function') : undefined;\n\n if (typeof location === 'string') location = _PathUtils.parsePath(location);\n\n var searchBase = undefined;\n if (searchBaseSpec && location.search === searchBaseSpec.search) {\n searchBase = searchBaseSpec.searchBase;\n } else {\n searchBase = location.search || '';\n }\n\n var search = searchBase;\n if (queryString) {\n search += (search ? '&' : '?') + queryString;\n }\n\n return _extends({}, location, (_extends2 = {\n search: search\n }, _extends2[SEARCH_BASE_KEY] = { search: search, searchBase: searchBase }, _extends2));\n }\n\n // Override all read methods with query-aware versions.\n function listenBefore(hook) {\n return history.listenBefore(function (location, callback) {\n _runTransitionHook2['default'](hook, addQuery(location), callback);\n });\n }\n\n function listen(listener) {\n return history.listen(function (location) {\n listener(addQuery(location));\n });\n }\n\n // Override all write methods with query-aware versions.\n function push(location) {\n history.push(appendQuery(location, location.query));\n }\n\n function replace(location) {\n history.replace(appendQuery(location, location.query));\n }\n\n function createPath(location, query) {\n process.env.NODE_ENV !== 'production' ? _warning2['default'](!query, 'the query argument to createPath is deprecated; use a location descriptor instead') : undefined;\n\n return history.createPath(appendQuery(location, query || location.query));\n }\n\n function createHref(location, query) {\n process.env.NODE_ENV !== 'production' ? _warning2['default'](!query, 'the query argument to createHref is deprecated; use a location descriptor instead') : undefined;\n\n return history.createHref(appendQuery(location, query || location.query));\n }\n\n function createLocation(location) {\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var fullLocation = history.createLocation.apply(history, [appendQuery(location, location.query)].concat(args));\n if (location.query) {\n fullLocation.query = location.query;\n }\n return addQuery(fullLocation);\n }\n\n // deprecated\n function pushState(state, path, query) {\n if (typeof path === 'string') path = _PathUtils.parsePath(path);\n\n push(_extends({ state: state }, path, { query: query }));\n }\n\n // deprecated\n function replaceState(state, path, query) {\n if (typeof path === 'string') path = _PathUtils.parsePath(path);\n\n replace(_extends({ state: state }, path, { query: query }));\n }\n\n return _extends({}, history, {\n listenBefore: listenBefore,\n listen: listen,\n push: push,\n replace: replace,\n createPath: createPath,\n createHref: createHref,\n createLocation: createLocation,\n\n pushState: _deprecate2['default'](pushState, 'pushState is deprecated; use push instead'),\n replaceState: _deprecate2['default'](replaceState, 'replaceState is deprecated; use replace instead')\n });\n };\n}\n\nexports['default'] = useQueries;\nmodule.exports = exports['default'];\n}).call(this,require('_process'))\n},{\"./PathUtils\":19,\"./deprecate\":26,\"./runTransitionHook\":27,\"_process\":7,\"query-string\":34,\"warning\":36}],30:[function(require,module,exports){\nvar pSlice = Array.prototype.slice;\nvar objectKeys = require('./lib/keys.js');\nvar isArguments = require('./lib/is_arguments.js');\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n},{\"./lib/is_arguments.js\":31,\"./lib/keys.js\":32}],31:[function(require,module,exports){\nvar supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n},{}],32:[function(require,module,exports){\nexports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n},{}],33:[function(require,module,exports){\n/**\n * Copyright 2013-2015, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar invariant = function(condition, format, a, b, c, d, e, f) {\n if (\"production\" !== 'production') {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n }\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error(\n 'Minified exception occurred; use the non-minified dev environment ' +\n 'for the full error message and additional helpful warnings.'\n );\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(\n format.replace(/%s/g, function() { return args[argIndex++]; })\n );\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n};\n\nmodule.exports = invariant;\n\n},{}],34:[function(require,module,exports){\n'use strict';\nvar strictUriEncode = require('strict-uri-encode');\n\nexports.extract = function (str) {\n\treturn str.split('?')[1] || '';\n};\n\nexports.parse = function (str) {\n\tif (typeof str !== 'string') {\n\t\treturn {};\n\t}\n\n\tstr = str.trim().replace(/^(\\?|#|&)/, '');\n\n\tif (!str) {\n\t\treturn {};\n\t}\n\n\treturn str.split('&').reduce(function (ret, param) {\n\t\tvar parts = param.replace(/\\+/g, ' ').split('=');\n\t\t// Firefox (pre 40) decodes `%3D` to `=`\n\t\t// https://github.com/sindresorhus/query-string/pull/37\n\t\tvar key = parts.shift();\n\t\tvar val = parts.length > 0 ? parts.join('=') : undefined;\n\n\t\tkey = decodeURIComponent(key);\n\n\t\t// missing `=` should be `null`:\n\t\t// http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n\t\tval = val === undefined ? null : decodeURIComponent(val);\n\n\t\tif (!ret.hasOwnProperty(key)) {\n\t\t\tret[key] = val;\n\t\t} else if (Array.isArray(ret[key])) {\n\t\t\tret[key].push(val);\n\t\t} else {\n\t\t\tret[key] = [ret[key], val];\n\t\t}\n\n\t\treturn ret;\n\t}, {});\n};\n\nexports.stringify = function (obj) {\n\treturn obj ? Object.keys(obj).sort().map(function (key) {\n\t\tvar val = obj[key];\n\n\t\tif (val === undefined) {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (val === null) {\n\t\t\treturn key;\n\t\t}\n\n\t\tif (Array.isArray(val)) {\n\t\t\treturn val.slice().sort().map(function (val2) {\n\t\t\t\treturn strictUriEncode(key) + '=' + strictUriEncode(val2);\n\t\t\t}).join('&');\n\t\t}\n\n\t\treturn strictUriEncode(key) + '=' + strictUriEncode(val);\n\t}).filter(function (x) {\n\t\treturn x.length > 0;\n\t}).join('&') : '';\n};\n\n},{\"strict-uri-encode\":35}],35:[function(require,module,exports){\n'use strict';\nmodule.exports = function (str) {\n\treturn encodeURIComponent(str).replace(/[!'()*]/g, function (c) {\n\t\treturn '%' + c.charCodeAt(0).toString(16).toUpperCase();\n\t});\n};\n\n},{}],36:[function(require,module,exports){\n/**\n * Copyright 2014-2015, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar warning = function() {};\n\nif (\"production\" !== 'production') {\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n\n if (format.length < 10 || (/^[s\\W]*$/).test(format)) {\n throw new Error(\n 'The warning format should be able to uniquely identify this ' +\n 'warning. Please, use a more descriptive format than: ' + format\n );\n }\n\n if (!condition) {\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch(x) {}\n }\n };\n}\n\nmodule.exports = warning;\n\n},{}],37:[function(require,module,exports){\n/*! jquery.caret 2016-02-27 */\n!function(a,b){\"function\"==typeof define&&define.amd?define([\"jquery\"],function(c){return a.returnExportsGlobal=b(c)}):\"object\"==typeof exports?module.exports=b(require(\"jquery\")):b(jQuery)}(this,function(a){\"use strict\";var b,c,d,e,f,g,h,i,j,k,l;k=\"caret\",b=function(){function b(a){this.$inputor=a,this.domInputor=this.$inputor[0]}return b.prototype.setPos=function(a){var b,c,d,e;return(e=j.getSelection())&&(d=0,c=!1,(b=function(a,f){var g,i,j,k,l,m;for(l=f.childNodes,m=[],j=0,k=l.length;k>j&&(g=l[j],!c);j++)if(3===g.nodeType){if(d+g.length>=a){c=!0,i=h.createRange(),i.setStart(g,a-d),e.removeAllRanges(),e.addRange(i);break}m.push(d+=g.length)}else m.push(b(a,g));return m})(a,this.domInputor)),this.domInputor},b.prototype.getIEPosition=function(){return this.getPosition()},b.prototype.getPosition=function(){var a,b;return b=this.getOffset(),a=this.$inputor.offset(),b.left-=a.left,b.top-=a.top,b},b.prototype.getOldIEPos=function(){var a,b;return b=h.selection.createRange(),a=h.body.createTextRange(),a.moveToElementText(this.domInputor),a.setEndPoint(\"EndToEnd\",b),a.text.length},b.prototype.getPos=function(){var a,b,c;return(c=this.range())?(a=c.cloneRange(),a.selectNodeContents(this.domInputor),a.setEnd(c.endContainer,c.endOffset),b=a.toString().length,a.detach(),b):h.selection?this.getOldIEPos():void 0},b.prototype.getOldIEOffset=function(){var a,b;return a=h.selection.createRange().duplicate(),a.moveStart(\"character\",-1),b=a.getBoundingClientRect(),{height:b.bottom-b.top,left:b.left,top:b.top}},b.prototype.getOffset=function(){var b,c,d,e,f;return j.getSelection&&(d=this.range())?(d.endOffset-1>0&&d.endContainer!==this.domInputor&&(b=d.cloneRange(),b.setStart(d.endContainer,d.endOffset-1),b.setEnd(d.endContainer,d.endOffset),e=b.getBoundingClientRect(),c={height:e.height,left:e.left+e.width,top:e.top},b.detach()),c&&0!==(null!=c?c.height:void 0)||(b=d.cloneRange(),f=a(h.createTextNode(\"|\")),b.insertNode(f[0]),b.selectNode(f[0]),e=b.getBoundingClientRect(),c={height:e.height,left:e.left,top:e.top},f.remove(),b.detach())):h.selection&&(c=this.getOldIEOffset()),c&&(c.top+=a(j).scrollTop(),c.left+=a(j).scrollLeft()),c},b.prototype.range=function(){var a;if(j.getSelection)return a=j.getSelection(),a.rangeCount>0?a.getRangeAt(0):null},b}(),c=function(){function b(a){this.$inputor=a,this.domInputor=this.$inputor[0]}return b.prototype.getIEPos=function(){var a,b,c,d,e,f,g;return b=this.domInputor,f=h.selection.createRange(),e=0,f&&f.parentElement()===b&&(d=b.value.replace(/\\r\\n/g,\"\\n\"),c=d.length,g=b.createTextRange(),g.moveToBookmark(f.getBookmark()),a=b.createTextRange(),a.collapse(!1),e=g.compareEndPoints(\"StartToEnd\",a)>-1?c:-g.moveStart(\"character\",-c)),e},b.prototype.getPos=function(){return h.selection?this.getIEPos():this.domInputor.selectionStart},b.prototype.setPos=function(a){var b,c;return b=this.domInputor,h.selection?(c=b.createTextRange(),c.move(\"character\",a),c.select()):b.setSelectionRange&&b.setSelectionRange(a,a),b},b.prototype.getIEOffset=function(a){var b,c,d,e;return c=this.domInputor.createTextRange(),a||(a=this.getPos()),c.move(\"character\",a),d=c.boundingLeft,e=c.boundingTop,b=c.boundingHeight,{left:d,top:e,height:b}},b.prototype.getOffset=function(b){var c,d,e;return c=this.$inputor,h.selection?(d=this.getIEOffset(b),d.top+=a(j).scrollTop()+c.scrollTop(),d.left+=a(j).scrollLeft()+c.scrollLeft(),d):(d=c.offset(),e=this.getPosition(b),d={left:d.left+e.left-c.scrollLeft(),top:d.top+e.top-c.scrollTop(),height:e.height})},b.prototype.getPosition=function(a){var b,c,e,f,g,h,i;return b=this.$inputor,f=function(a){return a=a.replace(/<|>|`|\"|&/g,\"?\").replace(/\\r\\n|\\r|\\n/g,\"
            \"),/firefox/i.test(navigator.userAgent)&&(a=a.replace(/\\s/g,\" \")),a},void 0===a&&(a=this.getPos()),i=b.val().slice(0,a),e=b.val().slice(a),g=\"\"+f(i)+\"\",g+=\"|\",g+=\"\"+f(e)+\"\",h=new d(b),c=h.create(g).rect()},b.prototype.getIEPosition=function(a){var b,c,d,e,f;return d=this.getIEOffset(a),c=this.$inputor.offset(),e=d.left-c.left,f=d.top-c.top,b=d.height,{left:e,top:f,height:b}},b}(),d=function(){function b(a){this.$inputor=a}return b.prototype.css_attr=[\"borderBottomWidth\",\"borderLeftWidth\",\"borderRightWidth\",\"borderTopStyle\",\"borderRightStyle\",\"borderBottomStyle\",\"borderLeftStyle\",\"borderTopWidth\",\"boxSizing\",\"fontFamily\",\"fontSize\",\"fontWeight\",\"height\",\"letterSpacing\",\"lineHeight\",\"marginBottom\",\"marginLeft\",\"marginRight\",\"marginTop\",\"outlineWidth\",\"overflow\",\"overflowX\",\"overflowY\",\"paddingBottom\",\"paddingLeft\",\"paddingRight\",\"paddingTop\",\"textAlign\",\"textOverflow\",\"textTransform\",\"whiteSpace\",\"wordBreak\",\"wordWrap\"],b.prototype.mirrorCss=function(){var b,c=this;return b={position:\"absolute\",left:-9999,top:0,zIndex:-2e4},\"TEXTAREA\"===this.$inputor.prop(\"tagName\")&&this.css_attr.push(\"width\"),a.each(this.css_attr,function(a,d){return b[d]=c.$inputor.css(d)}),b},b.prototype.create=function(b){return this.$mirror=a(\"
            \"),this.$mirror.css(this.mirrorCss()),this.$mirror.html(b),this.$inputor.after(this.$mirror),this},b.prototype.rect=function(){var a,b,c;return a=this.$mirror.find(\"#caret\"),b=a.position(),c={left:b.left,top:b.top,height:a.height()},this.$mirror.remove(),c},b}(),e={contentEditable:function(a){return!(!a[0].contentEditable||\"true\"!==a[0].contentEditable)}},g={pos:function(a){return a||0===a?this.setPos(a):this.getPos()},position:function(a){return h.selection?this.getIEPosition(a):this.getPosition(a)},offset:function(a){var b;return b=this.getOffset(a)}},h=null,j=null,i=null,l=function(a){var b;return(b=null!=a?a.iframe:void 0)?(i=b,j=b.contentWindow,h=b.contentDocument||j.document):(i=void 0,j=window,h=document)},f=function(a){var b;h=a[0].ownerDocument,j=h.defaultView||h.parentWindow;try{return i=j.frameElement}catch(c){b=c}},a.fn.caret=function(d,f,h){var i;return g[d]?(a.isPlainObject(f)?(l(f),f=void 0):l(h),i=e.contentEditable(this)?new b(this):new c(this),g[d].apply(i,[f])):a.error(\"Method \"+d+\" does not exist on jQuery.caret\")},a.fn.caret.EditableCaret=b,a.fn.caret.InputCaret=c,a.fn.caret.Utils=e,a.fn.caret.apis=g});\n},{\"jquery\":38}],38:[function(require,module,exports){\n/*!\n * jQuery JavaScript Library v2.2.4\n * http://jquery.com/\n *\n * Includes Sizzle.js\n * http://sizzlejs.com/\n *\n * Copyright jQuery Foundation and other contributors\n * Released under the MIT license\n * http://jquery.org/license\n *\n * Date: 2016-05-20T17:23Z\n */\n\n(function( global, factory ) {\n\n\tif ( typeof module === \"object\" && typeof module.exports === \"object\" ) {\n\t\t// For CommonJS and CommonJS-like environments where a proper `window`\n\t\t// is present, execute the factory and get jQuery.\n\t\t// For environments that do not have a `window` with a `document`\n\t\t// (such as Node.js), expose a factory as module.exports.\n\t\t// This accentuates the need for the creation of a real `window`.\n\t\t// e.g. var jQuery = require(\"jquery\")(window);\n\t\t// See ticket #14549 for more info.\n\t\tmodule.exports = global.document ?\n\t\t\tfactory( global, true ) :\n\t\t\tfunction( w ) {\n\t\t\t\tif ( !w.document ) {\n\t\t\t\t\tthrow new Error( \"jQuery requires a window with a document\" );\n\t\t\t\t}\n\t\t\t\treturn factory( w );\n\t\t\t};\n\t} else {\n\t\tfactory( global );\n\t}\n\n// Pass this if window is not defined yet\n}(typeof window !== \"undefined\" ? window : this, function( window, noGlobal ) {\n\n// Support: Firefox 18+\n// Can't be in strict mode, several libs including ASP.NET trace\n// the stack via arguments.caller.callee and Firefox dies if\n// you try to trace through \"use strict\" call chains. (#13335)\n//\"use strict\";\nvar arr = [];\n\nvar document = window.document;\n\nvar slice = arr.slice;\n\nvar concat = arr.concat;\n\nvar push = arr.push;\n\nvar indexOf = arr.indexOf;\n\nvar class2type = {};\n\nvar toString = class2type.toString;\n\nvar hasOwn = class2type.hasOwnProperty;\n\nvar support = {};\n\n\n\nvar\n\tversion = \"2.2.4\",\n\n\t// Define a local copy of jQuery\n\tjQuery = function( selector, context ) {\n\n\t\t// The jQuery object is actually just the init constructor 'enhanced'\n\t\t// Need init if jQuery is called (just allow error to be thrown if not included)\n\t\treturn new jQuery.fn.init( selector, context );\n\t},\n\n\t// Support: Android<4.1\n\t// Make sure we trim BOM and NBSP\n\trtrim = /^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g,\n\n\t// Matches dashed string for camelizing\n\trmsPrefix = /^-ms-/,\n\trdashAlpha = /-([\\da-z])/gi,\n\n\t// Used by jQuery.camelCase as callback to replace()\n\tfcamelCase = function( all, letter ) {\n\t\treturn letter.toUpperCase();\n\t};\n\njQuery.fn = jQuery.prototype = {\n\n\t// The current version of jQuery being used\n\tjquery: version,\n\n\tconstructor: jQuery,\n\n\t// Start with an empty selector\n\tselector: \"\",\n\n\t// The default length of a jQuery object is 0\n\tlength: 0,\n\n\ttoArray: function() {\n\t\treturn slice.call( this );\n\t},\n\n\t// Get the Nth element in the matched element set OR\n\t// Get the whole matched element set as a clean array\n\tget: function( num ) {\n\t\treturn num != null ?\n\n\t\t\t// Return just the one element from the set\n\t\t\t( num < 0 ? this[ num + this.length ] : this[ num ] ) :\n\n\t\t\t// Return all the elements in a clean array\n\t\t\tslice.call( this );\n\t},\n\n\t// Take an array of elements and push it onto the stack\n\t// (returning the new matched element set)\n\tpushStack: function( elems ) {\n\n\t\t// Build a new jQuery matched element set\n\t\tvar ret = jQuery.merge( this.constructor(), elems );\n\n\t\t// Add the old object onto the stack (as a reference)\n\t\tret.prevObject = this;\n\t\tret.context = this.context;\n\n\t\t// Return the newly-formed element set\n\t\treturn ret;\n\t},\n\n\t// Execute a callback for every element in the matched set.\n\teach: function( callback ) {\n\t\treturn jQuery.each( this, callback );\n\t},\n\n\tmap: function( callback ) {\n\t\treturn this.pushStack( jQuery.map( this, function( elem, i ) {\n\t\t\treturn callback.call( elem, i, elem );\n\t\t} ) );\n\t},\n\n\tslice: function() {\n\t\treturn this.pushStack( slice.apply( this, arguments ) );\n\t},\n\n\tfirst: function() {\n\t\treturn this.eq( 0 );\n\t},\n\n\tlast: function() {\n\t\treturn this.eq( -1 );\n\t},\n\n\teq: function( i ) {\n\t\tvar len = this.length,\n\t\t\tj = +i + ( i < 0 ? len : 0 );\n\t\treturn this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] );\n\t},\n\n\tend: function() {\n\t\treturn this.prevObject || this.constructor();\n\t},\n\n\t// For internal use only.\n\t// Behaves like an Array's method, not like a jQuery method.\n\tpush: push,\n\tsort: arr.sort,\n\tsplice: arr.splice\n};\n\njQuery.extend = jQuery.fn.extend = function() {\n\tvar options, name, src, copy, copyIsArray, clone,\n\t\ttarget = arguments[ 0 ] || {},\n\t\ti = 1,\n\t\tlength = arguments.length,\n\t\tdeep = false;\n\n\t// Handle a deep copy situation\n\tif ( typeof target === \"boolean\" ) {\n\t\tdeep = target;\n\n\t\t// Skip the boolean and the target\n\t\ttarget = arguments[ i ] || {};\n\t\ti++;\n\t}\n\n\t// Handle case when target is a string or something (possible in deep copy)\n\tif ( typeof target !== \"object\" && !jQuery.isFunction( target ) ) {\n\t\ttarget = {};\n\t}\n\n\t// Extend jQuery itself if only one argument is passed\n\tif ( i === length ) {\n\t\ttarget = this;\n\t\ti--;\n\t}\n\n\tfor ( ; i < length; i++ ) {\n\n\t\t// Only deal with non-null/undefined values\n\t\tif ( ( options = arguments[ i ] ) != null ) {\n\n\t\t\t// Extend the base object\n\t\t\tfor ( name in options ) {\n\t\t\t\tsrc = target[ name ];\n\t\t\t\tcopy = options[ name ];\n\n\t\t\t\t// Prevent never-ending loop\n\t\t\t\tif ( target === copy ) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\t// Recurse if we're merging plain objects or arrays\n\t\t\t\tif ( deep && copy && ( jQuery.isPlainObject( copy ) ||\n\t\t\t\t\t( copyIsArray = jQuery.isArray( copy ) ) ) ) {\n\n\t\t\t\t\tif ( copyIsArray ) {\n\t\t\t\t\t\tcopyIsArray = false;\n\t\t\t\t\t\tclone = src && jQuery.isArray( src ) ? src : [];\n\n\t\t\t\t\t} else {\n\t\t\t\t\t\tclone = src && jQuery.isPlainObject( src ) ? src : {};\n\t\t\t\t\t}\n\n\t\t\t\t\t// Never move original objects, clone them\n\t\t\t\t\ttarget[ name ] = jQuery.extend( deep, clone, copy );\n\n\t\t\t\t// Don't bring in undefined values\n\t\t\t\t} else if ( copy !== undefined ) {\n\t\t\t\t\ttarget[ name ] = copy;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// Return the modified object\n\treturn target;\n};\n\njQuery.extend( {\n\n\t// Unique for each copy of jQuery on the page\n\texpando: \"jQuery\" + ( version + Math.random() ).replace( /\\D/g, \"\" ),\n\n\t// Assume jQuery is ready without the ready module\n\tisReady: true,\n\n\terror: function( msg ) {\n\t\tthrow new Error( msg );\n\t},\n\n\tnoop: function() {},\n\n\tisFunction: function( obj ) {\n\t\treturn jQuery.type( obj ) === \"function\";\n\t},\n\n\tisArray: Array.isArray,\n\n\tisWindow: function( obj ) {\n\t\treturn obj != null && obj === obj.window;\n\t},\n\n\tisNumeric: function( obj ) {\n\n\t\t// parseFloat NaNs numeric-cast false positives (null|true|false|\"\")\n\t\t// ...but misinterprets leading-number strings, particularly hex literals (\"0x...\")\n\t\t// subtraction forces infinities to NaN\n\t\t// adding 1 corrects loss of precision from parseFloat (#15100)\n\t\tvar realStringObj = obj && obj.toString();\n\t\treturn !jQuery.isArray( obj ) && ( realStringObj - parseFloat( realStringObj ) + 1 ) >= 0;\n\t},\n\n\tisPlainObject: function( obj ) {\n\t\tvar key;\n\n\t\t// Not plain objects:\n\t\t// - Any object or value whose internal [[Class]] property is not \"[object Object]\"\n\t\t// - DOM nodes\n\t\t// - window\n\t\tif ( jQuery.type( obj ) !== \"object\" || obj.nodeType || jQuery.isWindow( obj ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Not own constructor property must be Object\n\t\tif ( obj.constructor &&\n\t\t\t\t!hasOwn.call( obj, \"constructor\" ) &&\n\t\t\t\t!hasOwn.call( obj.constructor.prototype || {}, \"isPrototypeOf\" ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Own properties are enumerated firstly, so to speed up,\n\t\t// if last one is own, then all properties are own\n\t\tfor ( key in obj ) {}\n\n\t\treturn key === undefined || hasOwn.call( obj, key );\n\t},\n\n\tisEmptyObject: function( obj ) {\n\t\tvar name;\n\t\tfor ( name in obj ) {\n\t\t\treturn false;\n\t\t}\n\t\treturn true;\n\t},\n\n\ttype: function( obj ) {\n\t\tif ( obj == null ) {\n\t\t\treturn obj + \"\";\n\t\t}\n\n\t\t// Support: Android<4.0, iOS<6 (functionish RegExp)\n\t\treturn typeof obj === \"object\" || typeof obj === \"function\" ?\n\t\t\tclass2type[ toString.call( obj ) ] || \"object\" :\n\t\t\ttypeof obj;\n\t},\n\n\t// Evaluates a script in a global context\n\tglobalEval: function( code ) {\n\t\tvar script,\n\t\t\tindirect = eval;\n\n\t\tcode = jQuery.trim( code );\n\n\t\tif ( code ) {\n\n\t\t\t// If the code includes a valid, prologue position\n\t\t\t// strict mode pragma, execute code by injecting a\n\t\t\t// script tag into the document.\n\t\t\tif ( code.indexOf( \"use strict\" ) === 1 ) {\n\t\t\t\tscript = document.createElement( \"script\" );\n\t\t\t\tscript.text = code;\n\t\t\t\tdocument.head.appendChild( script ).parentNode.removeChild( script );\n\t\t\t} else {\n\n\t\t\t\t// Otherwise, avoid the DOM node creation, insertion\n\t\t\t\t// and removal by using an indirect global eval\n\n\t\t\t\tindirect( code );\n\t\t\t}\n\t\t}\n\t},\n\n\t// Convert dashed to camelCase; used by the css and data modules\n\t// Support: IE9-11+\n\t// Microsoft forgot to hump their vendor prefix (#9572)\n\tcamelCase: function( string ) {\n\t\treturn string.replace( rmsPrefix, \"ms-\" ).replace( rdashAlpha, fcamelCase );\n\t},\n\n\tnodeName: function( elem, name ) {\n\t\treturn elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();\n\t},\n\n\teach: function( obj, callback ) {\n\t\tvar length, i = 0;\n\n\t\tif ( isArrayLike( obj ) ) {\n\t\t\tlength = obj.length;\n\t\t\tfor ( ; i < length; i++ ) {\n\t\t\t\tif ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tfor ( i in obj ) {\n\t\t\t\tif ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn obj;\n\t},\n\n\t// Support: Android<4.1\n\ttrim: function( text ) {\n\t\treturn text == null ?\n\t\t\t\"\" :\n\t\t\t( text + \"\" ).replace( rtrim, \"\" );\n\t},\n\n\t// results is for internal usage only\n\tmakeArray: function( arr, results ) {\n\t\tvar ret = results || [];\n\n\t\tif ( arr != null ) {\n\t\t\tif ( isArrayLike( Object( arr ) ) ) {\n\t\t\t\tjQuery.merge( ret,\n\t\t\t\t\ttypeof arr === \"string\" ?\n\t\t\t\t\t[ arr ] : arr\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tpush.call( ret, arr );\n\t\t\t}\n\t\t}\n\n\t\treturn ret;\n\t},\n\n\tinArray: function( elem, arr, i ) {\n\t\treturn arr == null ? -1 : indexOf.call( arr, elem, i );\n\t},\n\n\tmerge: function( first, second ) {\n\t\tvar len = +second.length,\n\t\t\tj = 0,\n\t\t\ti = first.length;\n\n\t\tfor ( ; j < len; j++ ) {\n\t\t\tfirst[ i++ ] = second[ j ];\n\t\t}\n\n\t\tfirst.length = i;\n\n\t\treturn first;\n\t},\n\n\tgrep: function( elems, callback, invert ) {\n\t\tvar callbackInverse,\n\t\t\tmatches = [],\n\t\t\ti = 0,\n\t\t\tlength = elems.length,\n\t\t\tcallbackExpect = !invert;\n\n\t\t// Go through the array, only saving the items\n\t\t// that pass the validator function\n\t\tfor ( ; i < length; i++ ) {\n\t\t\tcallbackInverse = !callback( elems[ i ], i );\n\t\t\tif ( callbackInverse !== callbackExpect ) {\n\t\t\t\tmatches.push( elems[ i ] );\n\t\t\t}\n\t\t}\n\n\t\treturn matches;\n\t},\n\n\t// arg is for internal usage only\n\tmap: function( elems, callback, arg ) {\n\t\tvar length, value,\n\t\t\ti = 0,\n\t\t\tret = [];\n\n\t\t// Go through the array, translating each of the items to their new values\n\t\tif ( isArrayLike( elems ) ) {\n\t\t\tlength = elems.length;\n\t\t\tfor ( ; i < length; i++ ) {\n\t\t\t\tvalue = callback( elems[ i ], i, arg );\n\n\t\t\t\tif ( value != null ) {\n\t\t\t\t\tret.push( value );\n\t\t\t\t}\n\t\t\t}\n\n\t\t// Go through every key on the object,\n\t\t} else {\n\t\t\tfor ( i in elems ) {\n\t\t\t\tvalue = callback( elems[ i ], i, arg );\n\n\t\t\t\tif ( value != null ) {\n\t\t\t\t\tret.push( value );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Flatten any nested arrays\n\t\treturn concat.apply( [], ret );\n\t},\n\n\t// A global GUID counter for objects\n\tguid: 1,\n\n\t// Bind a function to a context, optionally partially applying any\n\t// arguments.\n\tproxy: function( fn, context ) {\n\t\tvar tmp, args, proxy;\n\n\t\tif ( typeof context === \"string\" ) {\n\t\t\ttmp = fn[ context ];\n\t\t\tcontext = fn;\n\t\t\tfn = tmp;\n\t\t}\n\n\t\t// Quick check to determine if target is callable, in the spec\n\t\t// this throws a TypeError, but we will just return undefined.\n\t\tif ( !jQuery.isFunction( fn ) ) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\t// Simulated bind\n\t\targs = slice.call( arguments, 2 );\n\t\tproxy = function() {\n\t\t\treturn fn.apply( context || this, args.concat( slice.call( arguments ) ) );\n\t\t};\n\n\t\t// Set the guid of unique handler to the same of original handler, so it can be removed\n\t\tproxy.guid = fn.guid = fn.guid || jQuery.guid++;\n\n\t\treturn proxy;\n\t},\n\n\tnow: Date.now,\n\n\t// jQuery.support is not used in Core but other projects attach their\n\t// properties to it so it needs to exist.\n\tsupport: support\n} );\n\n// JSHint would error on this code due to the Symbol not being defined in ES5.\n// Defining this global in .jshintrc would create a danger of using the global\n// unguarded in another place, it seems safer to just disable JSHint for these\n// three lines.\n/* jshint ignore: start */\nif ( typeof Symbol === \"function\" ) {\n\tjQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ];\n}\n/* jshint ignore: end */\n\n// Populate the class2type map\njQuery.each( \"Boolean Number String Function Array Date RegExp Object Error Symbol\".split( \" \" ),\nfunction( i, name ) {\n\tclass2type[ \"[object \" + name + \"]\" ] = name.toLowerCase();\n} );\n\nfunction isArrayLike( obj ) {\n\n\t// Support: iOS 8.2 (not reproducible in simulator)\n\t// `in` check used to prevent JIT error (gh-2145)\n\t// hasOwn isn't used here due to false negatives\n\t// regarding Nodelist length in IE\n\tvar length = !!obj && \"length\" in obj && obj.length,\n\t\ttype = jQuery.type( obj );\n\n\tif ( type === \"function\" || jQuery.isWindow( obj ) ) {\n\t\treturn false;\n\t}\n\n\treturn type === \"array\" || length === 0 ||\n\t\ttypeof length === \"number\" && length > 0 && ( length - 1 ) in obj;\n}\nvar Sizzle =\n/*!\n * Sizzle CSS Selector Engine v2.2.1\n * http://sizzlejs.com/\n *\n * Copyright jQuery Foundation and other contributors\n * Released under the MIT license\n * http://jquery.org/license\n *\n * Date: 2015-10-17\n */\n(function( window ) {\n\nvar i,\n\tsupport,\n\tExpr,\n\tgetText,\n\tisXML,\n\ttokenize,\n\tcompile,\n\tselect,\n\toutermostContext,\n\tsortInput,\n\thasDuplicate,\n\n\t// Local document vars\n\tsetDocument,\n\tdocument,\n\tdocElem,\n\tdocumentIsHTML,\n\trbuggyQSA,\n\trbuggyMatches,\n\tmatches,\n\tcontains,\n\n\t// Instance-specific data\n\texpando = \"sizzle\" + 1 * new Date(),\n\tpreferredDoc = window.document,\n\tdirruns = 0,\n\tdone = 0,\n\tclassCache = createCache(),\n\ttokenCache = createCache(),\n\tcompilerCache = createCache(),\n\tsortOrder = function( a, b ) {\n\t\tif ( a === b ) {\n\t\t\thasDuplicate = true;\n\t\t}\n\t\treturn 0;\n\t},\n\n\t// General-purpose constants\n\tMAX_NEGATIVE = 1 << 31,\n\n\t// Instance methods\n\thasOwn = ({}).hasOwnProperty,\n\tarr = [],\n\tpop = arr.pop,\n\tpush_native = arr.push,\n\tpush = arr.push,\n\tslice = arr.slice,\n\t// Use a stripped-down indexOf as it's faster than native\n\t// http://jsperf.com/thor-indexof-vs-for/5\n\tindexOf = function( list, elem ) {\n\t\tvar i = 0,\n\t\t\tlen = list.length;\n\t\tfor ( ; i < len; i++ ) {\n\t\t\tif ( list[i] === elem ) {\n\t\t\t\treturn i;\n\t\t\t}\n\t\t}\n\t\treturn -1;\n\t},\n\n\tbooleans = \"checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped\",\n\n\t// Regular expressions\n\n\t// http://www.w3.org/TR/css3-selectors/#whitespace\n\twhitespace = \"[\\\\x20\\\\t\\\\r\\\\n\\\\f]\",\n\n\t// http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier\n\tidentifier = \"(?:\\\\\\\\.|[\\\\w-]|[^\\\\x00-\\\\xa0])+\",\n\n\t// Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors\n\tattributes = \"\\\\[\" + whitespace + \"*(\" + identifier + \")(?:\" + whitespace +\n\t\t// Operator (capture 2)\n\t\t\"*([*^$|!~]?=)\" + whitespace +\n\t\t// \"Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]\"\n\t\t\"*(?:'((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\"|(\" + identifier + \"))|)\" + whitespace +\n\t\t\"*\\\\]\",\n\n\tpseudos = \":(\" + identifier + \")(?:\\\\((\" +\n\t\t// To reduce the number of selectors needing tokenize in the preFilter, prefer arguments:\n\t\t// 1. quoted (capture 3; capture 4 or capture 5)\n\t\t\"('((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\")|\" +\n\t\t// 2. simple (capture 6)\n\t\t\"((?:\\\\\\\\.|[^\\\\\\\\()[\\\\]]|\" + attributes + \")*)|\" +\n\t\t// 3. anything else (capture 2)\n\t\t\".*\" +\n\t\t\")\\\\)|)\",\n\n\t// Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter\n\trwhitespace = new RegExp( whitespace + \"+\", \"g\" ),\n\trtrim = new RegExp( \"^\" + whitespace + \"+|((?:^|[^\\\\\\\\])(?:\\\\\\\\.)*)\" + whitespace + \"+$\", \"g\" ),\n\n\trcomma = new RegExp( \"^\" + whitespace + \"*,\" + whitespace + \"*\" ),\n\trcombinators = new RegExp( \"^\" + whitespace + \"*([>+~]|\" + whitespace + \")\" + whitespace + \"*\" ),\n\n\trattributeQuotes = new RegExp( \"=\" + whitespace + \"*([^\\\\]'\\\"]*?)\" + whitespace + \"*\\\\]\", \"g\" ),\n\n\trpseudo = new RegExp( pseudos ),\n\tridentifier = new RegExp( \"^\" + identifier + \"$\" ),\n\n\tmatchExpr = {\n\t\t\"ID\": new RegExp( \"^#(\" + identifier + \")\" ),\n\t\t\"CLASS\": new RegExp( \"^\\\\.(\" + identifier + \")\" ),\n\t\t\"TAG\": new RegExp( \"^(\" + identifier + \"|[*])\" ),\n\t\t\"ATTR\": new RegExp( \"^\" + attributes ),\n\t\t\"PSEUDO\": new RegExp( \"^\" + pseudos ),\n\t\t\"CHILD\": new RegExp( \"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\\\(\" + whitespace +\n\t\t\t\"*(even|odd|(([+-]|)(\\\\d*)n|)\" + whitespace + \"*(?:([+-]|)\" + whitespace +\n\t\t\t\"*(\\\\d+)|))\" + whitespace + \"*\\\\)|)\", \"i\" ),\n\t\t\"bool\": new RegExp( \"^(?:\" + booleans + \")$\", \"i\" ),\n\t\t// For use in libraries implementing .is()\n\t\t// We use this for POS matching in `select`\n\t\t\"needsContext\": new RegExp( \"^\" + whitespace + \"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\\\(\" +\n\t\t\twhitespace + \"*((?:-\\\\d)?\\\\d*)\" + whitespace + \"*\\\\)|)(?=[^-]|$)\", \"i\" )\n\t},\n\n\trinputs = /^(?:input|select|textarea|button)$/i,\n\trheader = /^h\\d$/i,\n\n\trnative = /^[^{]+\\{\\s*\\[native \\w/,\n\n\t// Easily-parseable/retrievable ID or TAG or CLASS selectors\n\trquickExpr = /^(?:#([\\w-]+)|(\\w+)|\\.([\\w-]+))$/,\n\n\trsibling = /[+~]/,\n\trescape = /'|\\\\/g,\n\n\t// CSS escapes http://www.w3.org/TR/CSS21/syndata.html#escaped-characters\n\trunescape = new RegExp( \"\\\\\\\\([\\\\da-f]{1,6}\" + whitespace + \"?|(\" + whitespace + \")|.)\", \"ig\" ),\n\tfunescape = function( _, escaped, escapedWhitespace ) {\n\t\tvar high = \"0x\" + escaped - 0x10000;\n\t\t// NaN means non-codepoint\n\t\t// Support: Firefox<24\n\t\t// Workaround erroneous numeric interpretation of +\"0x\"\n\t\treturn high !== high || escapedWhitespace ?\n\t\t\tescaped :\n\t\t\thigh < 0 ?\n\t\t\t\t// BMP codepoint\n\t\t\t\tString.fromCharCode( high + 0x10000 ) :\n\t\t\t\t// Supplemental Plane codepoint (surrogate pair)\n\t\t\t\tString.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 );\n\t},\n\n\t// Used for iframes\n\t// See setDocument()\n\t// Removing the function wrapper causes a \"Permission Denied\"\n\t// error in IE\n\tunloadHandler = function() {\n\t\tsetDocument();\n\t};\n\n// Optimize for push.apply( _, NodeList )\ntry {\n\tpush.apply(\n\t\t(arr = slice.call( preferredDoc.childNodes )),\n\t\tpreferredDoc.childNodes\n\t);\n\t// Support: Android<4.0\n\t// Detect silently failing push.apply\n\tarr[ preferredDoc.childNodes.length ].nodeType;\n} catch ( e ) {\n\tpush = { apply: arr.length ?\n\n\t\t// Leverage slice if possible\n\t\tfunction( target, els ) {\n\t\t\tpush_native.apply( target, slice.call(els) );\n\t\t} :\n\n\t\t// Support: IE<9\n\t\t// Otherwise append directly\n\t\tfunction( target, els ) {\n\t\t\tvar j = target.length,\n\t\t\t\ti = 0;\n\t\t\t// Can't trust NodeList.length\n\t\t\twhile ( (target[j++] = els[i++]) ) {}\n\t\t\ttarget.length = j - 1;\n\t\t}\n\t};\n}\n\nfunction Sizzle( selector, context, results, seed ) {\n\tvar m, i, elem, nid, nidselect, match, groups, newSelector,\n\t\tnewContext = context && context.ownerDocument,\n\n\t\t// nodeType defaults to 9, since context defaults to document\n\t\tnodeType = context ? context.nodeType : 9;\n\n\tresults = results || [];\n\n\t// Return early from calls with invalid selector or context\n\tif ( typeof selector !== \"string\" || !selector ||\n\t\tnodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) {\n\n\t\treturn results;\n\t}\n\n\t// Try to shortcut find operations (as opposed to filters) in HTML documents\n\tif ( !seed ) {\n\n\t\tif ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) {\n\t\t\tsetDocument( context );\n\t\t}\n\t\tcontext = context || document;\n\n\t\tif ( documentIsHTML ) {\n\n\t\t\t// If the selector is sufficiently simple, try using a \"get*By*\" DOM method\n\t\t\t// (excepting DocumentFragment context, where the methods don't exist)\n\t\t\tif ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) {\n\n\t\t\t\t// ID selector\n\t\t\t\tif ( (m = match[1]) ) {\n\n\t\t\t\t\t// Document context\n\t\t\t\t\tif ( nodeType === 9 ) {\n\t\t\t\t\t\tif ( (elem = context.getElementById( m )) ) {\n\n\t\t\t\t\t\t\t// Support: IE, Opera, Webkit\n\t\t\t\t\t\t\t// TODO: identify versions\n\t\t\t\t\t\t\t// getElementById can match elements by name instead of ID\n\t\t\t\t\t\t\tif ( elem.id === m ) {\n\t\t\t\t\t\t\t\tresults.push( elem );\n\t\t\t\t\t\t\t\treturn results;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn results;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t// Element context\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\t// Support: IE, Opera, Webkit\n\t\t\t\t\t\t// TODO: identify versions\n\t\t\t\t\t\t// getElementById can match elements by name instead of ID\n\t\t\t\t\t\tif ( newContext && (elem = newContext.getElementById( m )) &&\n\t\t\t\t\t\t\tcontains( context, elem ) &&\n\t\t\t\t\t\t\telem.id === m ) {\n\n\t\t\t\t\t\t\tresults.push( elem );\n\t\t\t\t\t\t\treturn results;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t// Type selector\n\t\t\t\t} else if ( match[2] ) {\n\t\t\t\t\tpush.apply( results, context.getElementsByTagName( selector ) );\n\t\t\t\t\treturn results;\n\n\t\t\t\t// Class selector\n\t\t\t\t} else if ( (m = match[3]) && support.getElementsByClassName &&\n\t\t\t\t\tcontext.getElementsByClassName ) {\n\n\t\t\t\t\tpush.apply( results, context.getElementsByClassName( m ) );\n\t\t\t\t\treturn results;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Take advantage of querySelectorAll\n\t\t\tif ( support.qsa &&\n\t\t\t\t!compilerCache[ selector + \" \" ] &&\n\t\t\t\t(!rbuggyQSA || !rbuggyQSA.test( selector )) ) {\n\n\t\t\t\tif ( nodeType !== 1 ) {\n\t\t\t\t\tnewContext = context;\n\t\t\t\t\tnewSelector = selector;\n\n\t\t\t\t// qSA looks outside Element context, which is not what we want\n\t\t\t\t// Thanks to Andrew Dupont for this workaround technique\n\t\t\t\t// Support: IE <=8\n\t\t\t\t// Exclude object elements\n\t\t\t\t} else if ( context.nodeName.toLowerCase() !== \"object\" ) {\n\n\t\t\t\t\t// Capture the context ID, setting it first if necessary\n\t\t\t\t\tif ( (nid = context.getAttribute( \"id\" )) ) {\n\t\t\t\t\t\tnid = nid.replace( rescape, \"\\\\$&\" );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tcontext.setAttribute( \"id\", (nid = expando) );\n\t\t\t\t\t}\n\n\t\t\t\t\t// Prefix every selector in the list\n\t\t\t\t\tgroups = tokenize( selector );\n\t\t\t\t\ti = groups.length;\n\t\t\t\t\tnidselect = ridentifier.test( nid ) ? \"#\" + nid : \"[id='\" + nid + \"']\";\n\t\t\t\t\twhile ( i-- ) {\n\t\t\t\t\t\tgroups[i] = nidselect + \" \" + toSelector( groups[i] );\n\t\t\t\t\t}\n\t\t\t\t\tnewSelector = groups.join( \",\" );\n\n\t\t\t\t\t// Expand context for sibling selectors\n\t\t\t\t\tnewContext = rsibling.test( selector ) && testContext( context.parentNode ) ||\n\t\t\t\t\t\tcontext;\n\t\t\t\t}\n\n\t\t\t\tif ( newSelector ) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tpush.apply( results,\n\t\t\t\t\t\t\tnewContext.querySelectorAll( newSelector )\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn results;\n\t\t\t\t\t} catch ( qsaError ) {\n\t\t\t\t\t} finally {\n\t\t\t\t\t\tif ( nid === expando ) {\n\t\t\t\t\t\t\tcontext.removeAttribute( \"id\" );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// All others\n\treturn select( selector.replace( rtrim, \"$1\" ), context, results, seed );\n}\n\n/**\n * Create key-value caches of limited size\n * @returns {function(string, object)} Returns the Object data after storing it on itself with\n *\tproperty name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength)\n *\tdeleting the oldest entry\n */\nfunction createCache() {\n\tvar keys = [];\n\n\tfunction cache( key, value ) {\n\t\t// Use (key + \" \") to avoid collision with native prototype properties (see Issue #157)\n\t\tif ( keys.push( key + \" \" ) > Expr.cacheLength ) {\n\t\t\t// Only keep the most recent entries\n\t\t\tdelete cache[ keys.shift() ];\n\t\t}\n\t\treturn (cache[ key + \" \" ] = value);\n\t}\n\treturn cache;\n}\n\n/**\n * Mark a function for special use by Sizzle\n * @param {Function} fn The function to mark\n */\nfunction markFunction( fn ) {\n\tfn[ expando ] = true;\n\treturn fn;\n}\n\n/**\n * Support testing using an element\n * @param {Function} fn Passed the created div and expects a boolean result\n */\nfunction assert( fn ) {\n\tvar div = document.createElement(\"div\");\n\n\ttry {\n\t\treturn !!fn( div );\n\t} catch (e) {\n\t\treturn false;\n\t} finally {\n\t\t// Remove from its parent by default\n\t\tif ( div.parentNode ) {\n\t\t\tdiv.parentNode.removeChild( div );\n\t\t}\n\t\t// release memory in IE\n\t\tdiv = null;\n\t}\n}\n\n/**\n * Adds the same handler for all of the specified attrs\n * @param {String} attrs Pipe-separated list of attributes\n * @param {Function} handler The method that will be applied\n */\nfunction addHandle( attrs, handler ) {\n\tvar arr = attrs.split(\"|\"),\n\t\ti = arr.length;\n\n\twhile ( i-- ) {\n\t\tExpr.attrHandle[ arr[i] ] = handler;\n\t}\n}\n\n/**\n * Checks document order of two siblings\n * @param {Element} a\n * @param {Element} b\n * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b\n */\nfunction siblingCheck( a, b ) {\n\tvar cur = b && a,\n\t\tdiff = cur && a.nodeType === 1 && b.nodeType === 1 &&\n\t\t\t( ~b.sourceIndex || MAX_NEGATIVE ) -\n\t\t\t( ~a.sourceIndex || MAX_NEGATIVE );\n\n\t// Use IE sourceIndex if available on both nodes\n\tif ( diff ) {\n\t\treturn diff;\n\t}\n\n\t// Check if b follows a\n\tif ( cur ) {\n\t\twhile ( (cur = cur.nextSibling) ) {\n\t\t\tif ( cur === b ) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn a ? 1 : -1;\n}\n\n/**\n * Returns a function to use in pseudos for input types\n * @param {String} type\n */\nfunction createInputPseudo( type ) {\n\treturn function( elem ) {\n\t\tvar name = elem.nodeName.toLowerCase();\n\t\treturn name === \"input\" && elem.type === type;\n\t};\n}\n\n/**\n * Returns a function to use in pseudos for buttons\n * @param {String} type\n */\nfunction createButtonPseudo( type ) {\n\treturn function( elem ) {\n\t\tvar name = elem.nodeName.toLowerCase();\n\t\treturn (name === \"input\" || name === \"button\") && elem.type === type;\n\t};\n}\n\n/**\n * Returns a function to use in pseudos for positionals\n * @param {Function} fn\n */\nfunction createPositionalPseudo( fn ) {\n\treturn markFunction(function( argument ) {\n\t\targument = +argument;\n\t\treturn markFunction(function( seed, matches ) {\n\t\t\tvar j,\n\t\t\t\tmatchIndexes = fn( [], seed.length, argument ),\n\t\t\t\ti = matchIndexes.length;\n\n\t\t\t// Match elements found at the specified indexes\n\t\t\twhile ( i-- ) {\n\t\t\t\tif ( seed[ (j = matchIndexes[i]) ] ) {\n\t\t\t\t\tseed[j] = !(matches[j] = seed[j]);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t});\n}\n\n/**\n * Checks a node for validity as a Sizzle context\n * @param {Element|Object=} context\n * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value\n */\nfunction testContext( context ) {\n\treturn context && typeof context.getElementsByTagName !== \"undefined\" && context;\n}\n\n// Expose support vars for convenience\nsupport = Sizzle.support = {};\n\n/**\n * Detects XML nodes\n * @param {Element|Object} elem An element or a document\n * @returns {Boolean} True iff elem is a non-HTML XML node\n */\nisXML = Sizzle.isXML = function( elem ) {\n\t// documentElement is verified for cases where it doesn't yet exist\n\t// (such as loading iframes in IE - #4833)\n\tvar documentElement = elem && (elem.ownerDocument || elem).documentElement;\n\treturn documentElement ? documentElement.nodeName !== \"HTML\" : false;\n};\n\n/**\n * Sets document-related variables once based on the current document\n * @param {Element|Object} [doc] An element or document object to use to set the document\n * @returns {Object} Returns the current document\n */\nsetDocument = Sizzle.setDocument = function( node ) {\n\tvar hasCompare, parent,\n\t\tdoc = node ? node.ownerDocument || node : preferredDoc;\n\n\t// Return early if doc is invalid or already selected\n\tif ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) {\n\t\treturn document;\n\t}\n\n\t// Update global variables\n\tdocument = doc;\n\tdocElem = document.documentElement;\n\tdocumentIsHTML = !isXML( document );\n\n\t// Support: IE 9-11, Edge\n\t// Accessing iframe documents after unload throws \"permission denied\" errors (jQuery #13936)\n\tif ( (parent = document.defaultView) && parent.top !== parent ) {\n\t\t// Support: IE 11\n\t\tif ( parent.addEventListener ) {\n\t\t\tparent.addEventListener( \"unload\", unloadHandler, false );\n\n\t\t// Support: IE 9 - 10 only\n\t\t} else if ( parent.attachEvent ) {\n\t\t\tparent.attachEvent( \"onunload\", unloadHandler );\n\t\t}\n\t}\n\n\t/* Attributes\n\t---------------------------------------------------------------------- */\n\n\t// Support: IE<8\n\t// Verify that getAttribute really returns attributes and not properties\n\t// (excepting IE8 booleans)\n\tsupport.attributes = assert(function( div ) {\n\t\tdiv.className = \"i\";\n\t\treturn !div.getAttribute(\"className\");\n\t});\n\n\t/* getElement(s)By*\n\t---------------------------------------------------------------------- */\n\n\t// Check if getElementsByTagName(\"*\") returns only elements\n\tsupport.getElementsByTagName = assert(function( div ) {\n\t\tdiv.appendChild( document.createComment(\"\") );\n\t\treturn !div.getElementsByTagName(\"*\").length;\n\t});\n\n\t// Support: IE<9\n\tsupport.getElementsByClassName = rnative.test( document.getElementsByClassName );\n\n\t// Support: IE<10\n\t// Check if getElementById returns elements by name\n\t// The broken getElementById methods don't pick up programatically-set names,\n\t// so use a roundabout getElementsByName test\n\tsupport.getById = assert(function( div ) {\n\t\tdocElem.appendChild( div ).id = expando;\n\t\treturn !document.getElementsByName || !document.getElementsByName( expando ).length;\n\t});\n\n\t// ID find and filter\n\tif ( support.getById ) {\n\t\tExpr.find[\"ID\"] = function( id, context ) {\n\t\t\tif ( typeof context.getElementById !== \"undefined\" && documentIsHTML ) {\n\t\t\t\tvar m = context.getElementById( id );\n\t\t\t\treturn m ? [ m ] : [];\n\t\t\t}\n\t\t};\n\t\tExpr.filter[\"ID\"] = function( id ) {\n\t\t\tvar attrId = id.replace( runescape, funescape );\n\t\t\treturn function( elem ) {\n\t\t\t\treturn elem.getAttribute(\"id\") === attrId;\n\t\t\t};\n\t\t};\n\t} else {\n\t\t// Support: IE6/7\n\t\t// getElementById is not reliable as a find shortcut\n\t\tdelete Expr.find[\"ID\"];\n\n\t\tExpr.filter[\"ID\"] = function( id ) {\n\t\t\tvar attrId = id.replace( runescape, funescape );\n\t\t\treturn function( elem ) {\n\t\t\t\tvar node = typeof elem.getAttributeNode !== \"undefined\" &&\n\t\t\t\t\telem.getAttributeNode(\"id\");\n\t\t\t\treturn node && node.value === attrId;\n\t\t\t};\n\t\t};\n\t}\n\n\t// Tag\n\tExpr.find[\"TAG\"] = support.getElementsByTagName ?\n\t\tfunction( tag, context ) {\n\t\t\tif ( typeof context.getElementsByTagName !== \"undefined\" ) {\n\t\t\t\treturn context.getElementsByTagName( tag );\n\n\t\t\t// DocumentFragment nodes don't have gEBTN\n\t\t\t} else if ( support.qsa ) {\n\t\t\t\treturn context.querySelectorAll( tag );\n\t\t\t}\n\t\t} :\n\n\t\tfunction( tag, context ) {\n\t\t\tvar elem,\n\t\t\t\ttmp = [],\n\t\t\t\ti = 0,\n\t\t\t\t// By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too\n\t\t\t\tresults = context.getElementsByTagName( tag );\n\n\t\t\t// Filter out possible comments\n\t\t\tif ( tag === \"*\" ) {\n\t\t\t\twhile ( (elem = results[i++]) ) {\n\t\t\t\t\tif ( elem.nodeType === 1 ) {\n\t\t\t\t\t\ttmp.push( elem );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn tmp;\n\t\t\t}\n\t\t\treturn results;\n\t\t};\n\n\t// Class\n\tExpr.find[\"CLASS\"] = support.getElementsByClassName && function( className, context ) {\n\t\tif ( typeof context.getElementsByClassName !== \"undefined\" && documentIsHTML ) {\n\t\t\treturn context.getElementsByClassName( className );\n\t\t}\n\t};\n\n\t/* QSA/matchesSelector\n\t---------------------------------------------------------------------- */\n\n\t// QSA and matchesSelector support\n\n\t// matchesSelector(:active) reports false when true (IE9/Opera 11.5)\n\trbuggyMatches = [];\n\n\t// qSa(:focus) reports false when true (Chrome 21)\n\t// We allow this because of a bug in IE8/9 that throws an error\n\t// whenever `document.activeElement` is accessed on an iframe\n\t// So, we allow :focus to pass through QSA all the time to avoid the IE error\n\t// See http://bugs.jquery.com/ticket/13378\n\trbuggyQSA = [];\n\n\tif ( (support.qsa = rnative.test( document.querySelectorAll )) ) {\n\t\t// Build QSA regex\n\t\t// Regex strategy adopted from Diego Perini\n\t\tassert(function( div ) {\n\t\t\t// Select is set to empty string on purpose\n\t\t\t// This is to test IE's treatment of not explicitly\n\t\t\t// setting a boolean content attribute,\n\t\t\t// since its presence should be enough\n\t\t\t// http://bugs.jquery.com/ticket/12359\n\t\t\tdocElem.appendChild( div ).innerHTML = \"\" +\n\t\t\t\t\"\";\n\n\t\t\t// Support: IE8, Opera 11-12.16\n\t\t\t// Nothing should be selected when empty strings follow ^= or $= or *=\n\t\t\t// The test attribute must be unknown in Opera but \"safe\" for WinRT\n\t\t\t// http://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section\n\t\t\tif ( div.querySelectorAll(\"[msallowcapture^='']\").length ) {\n\t\t\t\trbuggyQSA.push( \"[*^$]=\" + whitespace + \"*(?:''|\\\"\\\")\" );\n\t\t\t}\n\n\t\t\t// Support: IE8\n\t\t\t// Boolean attributes and \"value\" are not treated correctly\n\t\t\tif ( !div.querySelectorAll(\"[selected]\").length ) {\n\t\t\t\trbuggyQSA.push( \"\\\\[\" + whitespace + \"*(?:value|\" + booleans + \")\" );\n\t\t\t}\n\n\t\t\t// Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+\n\t\t\tif ( !div.querySelectorAll( \"[id~=\" + expando + \"-]\" ).length ) {\n\t\t\t\trbuggyQSA.push(\"~=\");\n\t\t\t}\n\n\t\t\t// Webkit/Opera - :checked should return selected option elements\n\t\t\t// http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked\n\t\t\t// IE8 throws error here and will not see later tests\n\t\t\tif ( !div.querySelectorAll(\":checked\").length ) {\n\t\t\t\trbuggyQSA.push(\":checked\");\n\t\t\t}\n\n\t\t\t// Support: Safari 8+, iOS 8+\n\t\t\t// https://bugs.webkit.org/show_bug.cgi?id=136851\n\t\t\t// In-page `selector#id sibing-combinator selector` fails\n\t\t\tif ( !div.querySelectorAll( \"a#\" + expando + \"+*\" ).length ) {\n\t\t\t\trbuggyQSA.push(\".#.+[+~]\");\n\t\t\t}\n\t\t});\n\n\t\tassert(function( div ) {\n\t\t\t// Support: Windows 8 Native Apps\n\t\t\t// The type and name attributes are restricted during .innerHTML assignment\n\t\t\tvar input = document.createElement(\"input\");\n\t\t\tinput.setAttribute( \"type\", \"hidden\" );\n\t\t\tdiv.appendChild( input ).setAttribute( \"name\", \"D\" );\n\n\t\t\t// Support: IE8\n\t\t\t// Enforce case-sensitivity of name attribute\n\t\t\tif ( div.querySelectorAll(\"[name=d]\").length ) {\n\t\t\t\trbuggyQSA.push( \"name\" + whitespace + \"*[*^$|!~]?=\" );\n\t\t\t}\n\n\t\t\t// FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled)\n\t\t\t// IE8 throws error here and will not see later tests\n\t\t\tif ( !div.querySelectorAll(\":enabled\").length ) {\n\t\t\t\trbuggyQSA.push( \":enabled\", \":disabled\" );\n\t\t\t}\n\n\t\t\t// Opera 10-11 does not throw on post-comma invalid pseudos\n\t\t\tdiv.querySelectorAll(\"*,:x\");\n\t\t\trbuggyQSA.push(\",.*:\");\n\t\t});\n\t}\n\n\tif ( (support.matchesSelector = rnative.test( (matches = docElem.matches ||\n\t\tdocElem.webkitMatchesSelector ||\n\t\tdocElem.mozMatchesSelector ||\n\t\tdocElem.oMatchesSelector ||\n\t\tdocElem.msMatchesSelector) )) ) {\n\n\t\tassert(function( div ) {\n\t\t\t// Check to see if it's possible to do matchesSelector\n\t\t\t// on a disconnected node (IE 9)\n\t\t\tsupport.disconnectedMatch = matches.call( div, \"div\" );\n\n\t\t\t// This should fail with an exception\n\t\t\t// Gecko does not error, returns false instead\n\t\t\tmatches.call( div, \"[s!='']:x\" );\n\t\t\trbuggyMatches.push( \"!=\", pseudos );\n\t\t});\n\t}\n\n\trbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join(\"|\") );\n\trbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join(\"|\") );\n\n\t/* Contains\n\t---------------------------------------------------------------------- */\n\thasCompare = rnative.test( docElem.compareDocumentPosition );\n\n\t// Element contains another\n\t// Purposefully self-exclusive\n\t// As in, an element does not contain itself\n\tcontains = hasCompare || rnative.test( docElem.contains ) ?\n\t\tfunction( a, b ) {\n\t\t\tvar adown = a.nodeType === 9 ? a.documentElement : a,\n\t\t\t\tbup = b && b.parentNode;\n\t\t\treturn a === bup || !!( bup && bup.nodeType === 1 && (\n\t\t\t\tadown.contains ?\n\t\t\t\t\tadown.contains( bup ) :\n\t\t\t\t\ta.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16\n\t\t\t));\n\t\t} :\n\t\tfunction( a, b ) {\n\t\t\tif ( b ) {\n\t\t\t\twhile ( (b = b.parentNode) ) {\n\t\t\t\t\tif ( b === a ) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t};\n\n\t/* Sorting\n\t---------------------------------------------------------------------- */\n\n\t// Document order sorting\n\tsortOrder = hasCompare ?\n\tfunction( a, b ) {\n\n\t\t// Flag for duplicate removal\n\t\tif ( a === b ) {\n\t\t\thasDuplicate = true;\n\t\t\treturn 0;\n\t\t}\n\n\t\t// Sort on method existence if only one input has compareDocumentPosition\n\t\tvar compare = !a.compareDocumentPosition - !b.compareDocumentPosition;\n\t\tif ( compare ) {\n\t\t\treturn compare;\n\t\t}\n\n\t\t// Calculate position if both inputs belong to the same document\n\t\tcompare = ( a.ownerDocument || a ) === ( b.ownerDocument || b ) ?\n\t\t\ta.compareDocumentPosition( b ) :\n\n\t\t\t// Otherwise we know they are disconnected\n\t\t\t1;\n\n\t\t// Disconnected nodes\n\t\tif ( compare & 1 ||\n\t\t\t(!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) {\n\n\t\t\t// Choose the first element that is related to our preferred document\n\t\t\tif ( a === document || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t\tif ( b === document || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) {\n\t\t\t\treturn 1;\n\t\t\t}\n\n\t\t\t// Maintain original order\n\t\t\treturn sortInput ?\n\t\t\t\t( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :\n\t\t\t\t0;\n\t\t}\n\n\t\treturn compare & 4 ? -1 : 1;\n\t} :\n\tfunction( a, b ) {\n\t\t// Exit early if the nodes are identical\n\t\tif ( a === b ) {\n\t\t\thasDuplicate = true;\n\t\t\treturn 0;\n\t\t}\n\n\t\tvar cur,\n\t\t\ti = 0,\n\t\t\taup = a.parentNode,\n\t\t\tbup = b.parentNode,\n\t\t\tap = [ a ],\n\t\t\tbp = [ b ];\n\n\t\t// Parentless nodes are either documents or disconnected\n\t\tif ( !aup || !bup ) {\n\t\t\treturn a === document ? -1 :\n\t\t\t\tb === document ? 1 :\n\t\t\t\taup ? -1 :\n\t\t\t\tbup ? 1 :\n\t\t\t\tsortInput ?\n\t\t\t\t( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :\n\t\t\t\t0;\n\n\t\t// If the nodes are siblings, we can do a quick check\n\t\t} else if ( aup === bup ) {\n\t\t\treturn siblingCheck( a, b );\n\t\t}\n\n\t\t// Otherwise we need full lists of their ancestors for comparison\n\t\tcur = a;\n\t\twhile ( (cur = cur.parentNode) ) {\n\t\t\tap.unshift( cur );\n\t\t}\n\t\tcur = b;\n\t\twhile ( (cur = cur.parentNode) ) {\n\t\t\tbp.unshift( cur );\n\t\t}\n\n\t\t// Walk down the tree looking for a discrepancy\n\t\twhile ( ap[i] === bp[i] ) {\n\t\t\ti++;\n\t\t}\n\n\t\treturn i ?\n\t\t\t// Do a sibling check if the nodes have a common ancestor\n\t\t\tsiblingCheck( ap[i], bp[i] ) :\n\n\t\t\t// Otherwise nodes in our document sort first\n\t\t\tap[i] === preferredDoc ? -1 :\n\t\t\tbp[i] === preferredDoc ? 1 :\n\t\t\t0;\n\t};\n\n\treturn document;\n};\n\nSizzle.matches = function( expr, elements ) {\n\treturn Sizzle( expr, null, null, elements );\n};\n\nSizzle.matchesSelector = function( elem, expr ) {\n\t// Set document vars if needed\n\tif ( ( elem.ownerDocument || elem ) !== document ) {\n\t\tsetDocument( elem );\n\t}\n\n\t// Make sure that attribute selectors are quoted\n\texpr = expr.replace( rattributeQuotes, \"='$1']\" );\n\n\tif ( support.matchesSelector && documentIsHTML &&\n\t\t!compilerCache[ expr + \" \" ] &&\n\t\t( !rbuggyMatches || !rbuggyMatches.test( expr ) ) &&\n\t\t( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) {\n\n\t\ttry {\n\t\t\tvar ret = matches.call( elem, expr );\n\n\t\t\t// IE 9's matchesSelector returns false on disconnected nodes\n\t\t\tif ( ret || support.disconnectedMatch ||\n\t\t\t\t\t// As well, disconnected nodes are said to be in a document\n\t\t\t\t\t// fragment in IE 9\n\t\t\t\t\telem.document && elem.document.nodeType !== 11 ) {\n\t\t\t\treturn ret;\n\t\t\t}\n\t\t} catch (e) {}\n\t}\n\n\treturn Sizzle( expr, document, null, [ elem ] ).length > 0;\n};\n\nSizzle.contains = function( context, elem ) {\n\t// Set document vars if needed\n\tif ( ( context.ownerDocument || context ) !== document ) {\n\t\tsetDocument( context );\n\t}\n\treturn contains( context, elem );\n};\n\nSizzle.attr = function( elem, name ) {\n\t// Set document vars if needed\n\tif ( ( elem.ownerDocument || elem ) !== document ) {\n\t\tsetDocument( elem );\n\t}\n\n\tvar fn = Expr.attrHandle[ name.toLowerCase() ],\n\t\t// Don't get fooled by Object.prototype properties (jQuery #13807)\n\t\tval = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ?\n\t\t\tfn( elem, name, !documentIsHTML ) :\n\t\t\tundefined;\n\n\treturn val !== undefined ?\n\t\tval :\n\t\tsupport.attributes || !documentIsHTML ?\n\t\t\telem.getAttribute( name ) :\n\t\t\t(val = elem.getAttributeNode(name)) && val.specified ?\n\t\t\t\tval.value :\n\t\t\t\tnull;\n};\n\nSizzle.error = function( msg ) {\n\tthrow new Error( \"Syntax error, unrecognized expression: \" + msg );\n};\n\n/**\n * Document sorting and removing duplicates\n * @param {ArrayLike} results\n */\nSizzle.uniqueSort = function( results ) {\n\tvar elem,\n\t\tduplicates = [],\n\t\tj = 0,\n\t\ti = 0;\n\n\t// Unless we *know* we can detect duplicates, assume their presence\n\thasDuplicate = !support.detectDuplicates;\n\tsortInput = !support.sortStable && results.slice( 0 );\n\tresults.sort( sortOrder );\n\n\tif ( hasDuplicate ) {\n\t\twhile ( (elem = results[i++]) ) {\n\t\t\tif ( elem === results[ i ] ) {\n\t\t\t\tj = duplicates.push( i );\n\t\t\t}\n\t\t}\n\t\twhile ( j-- ) {\n\t\t\tresults.splice( duplicates[ j ], 1 );\n\t\t}\n\t}\n\n\t// Clear input after sorting to release objects\n\t// See https://github.com/jquery/sizzle/pull/225\n\tsortInput = null;\n\n\treturn results;\n};\n\n/**\n * Utility function for retrieving the text value of an array of DOM nodes\n * @param {Array|Element} elem\n */\ngetText = Sizzle.getText = function( elem ) {\n\tvar node,\n\t\tret = \"\",\n\t\ti = 0,\n\t\tnodeType = elem.nodeType;\n\n\tif ( !nodeType ) {\n\t\t// If no nodeType, this is expected to be an array\n\t\twhile ( (node = elem[i++]) ) {\n\t\t\t// Do not traverse comment nodes\n\t\t\tret += getText( node );\n\t\t}\n\t} else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) {\n\t\t// Use textContent for elements\n\t\t// innerText usage removed for consistency of new lines (jQuery #11153)\n\t\tif ( typeof elem.textContent === \"string\" ) {\n\t\t\treturn elem.textContent;\n\t\t} else {\n\t\t\t// Traverse its children\n\t\t\tfor ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {\n\t\t\t\tret += getText( elem );\n\t\t\t}\n\t\t}\n\t} else if ( nodeType === 3 || nodeType === 4 ) {\n\t\treturn elem.nodeValue;\n\t}\n\t// Do not include comment or processing instruction nodes\n\n\treturn ret;\n};\n\nExpr = Sizzle.selectors = {\n\n\t// Can be adjusted by the user\n\tcacheLength: 50,\n\n\tcreatePseudo: markFunction,\n\n\tmatch: matchExpr,\n\n\tattrHandle: {},\n\n\tfind: {},\n\n\trelative: {\n\t\t\">\": { dir: \"parentNode\", first: true },\n\t\t\" \": { dir: \"parentNode\" },\n\t\t\"+\": { dir: \"previousSibling\", first: true },\n\t\t\"~\": { dir: \"previousSibling\" }\n\t},\n\n\tpreFilter: {\n\t\t\"ATTR\": function( match ) {\n\t\t\tmatch[1] = match[1].replace( runescape, funescape );\n\n\t\t\t// Move the given value to match[3] whether quoted or unquoted\n\t\t\tmatch[3] = ( match[3] || match[4] || match[5] || \"\" ).replace( runescape, funescape );\n\n\t\t\tif ( match[2] === \"~=\" ) {\n\t\t\t\tmatch[3] = \" \" + match[3] + \" \";\n\t\t\t}\n\n\t\t\treturn match.slice( 0, 4 );\n\t\t},\n\n\t\t\"CHILD\": function( match ) {\n\t\t\t/* matches from matchExpr[\"CHILD\"]\n\t\t\t\t1 type (only|nth|...)\n\t\t\t\t2 what (child|of-type)\n\t\t\t\t3 argument (even|odd|\\d*|\\d*n([+-]\\d+)?|...)\n\t\t\t\t4 xn-component of xn+y argument ([+-]?\\d*n|)\n\t\t\t\t5 sign of xn-component\n\t\t\t\t6 x of xn-component\n\t\t\t\t7 sign of y-component\n\t\t\t\t8 y of y-component\n\t\t\t*/\n\t\t\tmatch[1] = match[1].toLowerCase();\n\n\t\t\tif ( match[1].slice( 0, 3 ) === \"nth\" ) {\n\t\t\t\t// nth-* requires argument\n\t\t\t\tif ( !match[3] ) {\n\t\t\t\t\tSizzle.error( match[0] );\n\t\t\t\t}\n\n\t\t\t\t// numeric x and y parameters for Expr.filter.CHILD\n\t\t\t\t// remember that false/true cast respectively to 0/1\n\t\t\t\tmatch[4] = +( match[4] ? match[5] + (match[6] || 1) : 2 * ( match[3] === \"even\" || match[3] === \"odd\" ) );\n\t\t\t\tmatch[5] = +( ( match[7] + match[8] ) || match[3] === \"odd\" );\n\n\t\t\t// other types prohibit arguments\n\t\t\t} else if ( match[3] ) {\n\t\t\t\tSizzle.error( match[0] );\n\t\t\t}\n\n\t\t\treturn match;\n\t\t},\n\n\t\t\"PSEUDO\": function( match ) {\n\t\t\tvar excess,\n\t\t\t\tunquoted = !match[6] && match[2];\n\n\t\t\tif ( matchExpr[\"CHILD\"].test( match[0] ) ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\t// Accept quoted arguments as-is\n\t\t\tif ( match[3] ) {\n\t\t\t\tmatch[2] = match[4] || match[5] || \"\";\n\n\t\t\t// Strip excess characters from unquoted arguments\n\t\t\t} else if ( unquoted && rpseudo.test( unquoted ) &&\n\t\t\t\t// Get excess from tokenize (recursively)\n\t\t\t\t(excess = tokenize( unquoted, true )) &&\n\t\t\t\t// advance to the next closing parenthesis\n\t\t\t\t(excess = unquoted.indexOf( \")\", unquoted.length - excess ) - unquoted.length) ) {\n\n\t\t\t\t// excess is a negative index\n\t\t\t\tmatch[0] = match[0].slice( 0, excess );\n\t\t\t\tmatch[2] = unquoted.slice( 0, excess );\n\t\t\t}\n\n\t\t\t// Return only captures needed by the pseudo filter method (type and argument)\n\t\t\treturn match.slice( 0, 3 );\n\t\t}\n\t},\n\n\tfilter: {\n\n\t\t\"TAG\": function( nodeNameSelector ) {\n\t\t\tvar nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase();\n\t\t\treturn nodeNameSelector === \"*\" ?\n\t\t\t\tfunction() { return true; } :\n\t\t\t\tfunction( elem ) {\n\t\t\t\t\treturn elem.nodeName && elem.nodeName.toLowerCase() === nodeName;\n\t\t\t\t};\n\t\t},\n\n\t\t\"CLASS\": function( className ) {\n\t\t\tvar pattern = classCache[ className + \" \" ];\n\n\t\t\treturn pattern ||\n\t\t\t\t(pattern = new RegExp( \"(^|\" + whitespace + \")\" + className + \"(\" + whitespace + \"|$)\" )) &&\n\t\t\t\tclassCache( className, function( elem ) {\n\t\t\t\t\treturn pattern.test( typeof elem.className === \"string\" && elem.className || typeof elem.getAttribute !== \"undefined\" && elem.getAttribute(\"class\") || \"\" );\n\t\t\t\t});\n\t\t},\n\n\t\t\"ATTR\": function( name, operator, check ) {\n\t\t\treturn function( elem ) {\n\t\t\t\tvar result = Sizzle.attr( elem, name );\n\n\t\t\t\tif ( result == null ) {\n\t\t\t\t\treturn operator === \"!=\";\n\t\t\t\t}\n\t\t\t\tif ( !operator ) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tresult += \"\";\n\n\t\t\t\treturn operator === \"=\" ? result === check :\n\t\t\t\t\toperator === \"!=\" ? result !== check :\n\t\t\t\t\toperator === \"^=\" ? check && result.indexOf( check ) === 0 :\n\t\t\t\t\toperator === \"*=\" ? check && result.indexOf( check ) > -1 :\n\t\t\t\t\toperator === \"$=\" ? check && result.slice( -check.length ) === check :\n\t\t\t\t\toperator === \"~=\" ? ( \" \" + result.replace( rwhitespace, \" \" ) + \" \" ).indexOf( check ) > -1 :\n\t\t\t\t\toperator === \"|=\" ? result === check || result.slice( 0, check.length + 1 ) === check + \"-\" :\n\t\t\t\t\tfalse;\n\t\t\t};\n\t\t},\n\n\t\t\"CHILD\": function( type, what, argument, first, last ) {\n\t\t\tvar simple = type.slice( 0, 3 ) !== \"nth\",\n\t\t\t\tforward = type.slice( -4 ) !== \"last\",\n\t\t\t\tofType = what === \"of-type\";\n\n\t\t\treturn first === 1 && last === 0 ?\n\n\t\t\t\t// Shortcut for :nth-*(n)\n\t\t\t\tfunction( elem ) {\n\t\t\t\t\treturn !!elem.parentNode;\n\t\t\t\t} :\n\n\t\t\t\tfunction( elem, context, xml ) {\n\t\t\t\t\tvar cache, uniqueCache, outerCache, node, nodeIndex, start,\n\t\t\t\t\t\tdir = simple !== forward ? \"nextSibling\" : \"previousSibling\",\n\t\t\t\t\t\tparent = elem.parentNode,\n\t\t\t\t\t\tname = ofType && elem.nodeName.toLowerCase(),\n\t\t\t\t\t\tuseCache = !xml && !ofType,\n\t\t\t\t\t\tdiff = false;\n\n\t\t\t\t\tif ( parent ) {\n\n\t\t\t\t\t\t// :(first|last|only)-(child|of-type)\n\t\t\t\t\t\tif ( simple ) {\n\t\t\t\t\t\t\twhile ( dir ) {\n\t\t\t\t\t\t\t\tnode = elem;\n\t\t\t\t\t\t\t\twhile ( (node = node[ dir ]) ) {\n\t\t\t\t\t\t\t\t\tif ( ofType ?\n\t\t\t\t\t\t\t\t\t\tnode.nodeName.toLowerCase() === name :\n\t\t\t\t\t\t\t\t\t\tnode.nodeType === 1 ) {\n\n\t\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t// Reverse direction for :only-* (if we haven't yet done so)\n\t\t\t\t\t\t\t\tstart = dir = type === \"only\" && !start && \"nextSibling\";\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tstart = [ forward ? parent.firstChild : parent.lastChild ];\n\n\t\t\t\t\t\t// non-xml :nth-child(...) stores cache data on `parent`\n\t\t\t\t\t\tif ( forward && useCache ) {\n\n\t\t\t\t\t\t\t// Seek `elem` from a previously-cached index\n\n\t\t\t\t\t\t\t// ...in a gzip-friendly way\n\t\t\t\t\t\t\tnode = parent;\n\t\t\t\t\t\t\touterCache = node[ expando ] || (node[ expando ] = {});\n\n\t\t\t\t\t\t\t// Support: IE <9 only\n\t\t\t\t\t\t\t// Defend against cloned attroperties (jQuery gh-1709)\n\t\t\t\t\t\t\tuniqueCache = outerCache[ node.uniqueID ] ||\n\t\t\t\t\t\t\t\t(outerCache[ node.uniqueID ] = {});\n\n\t\t\t\t\t\t\tcache = uniqueCache[ type ] || [];\n\t\t\t\t\t\t\tnodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];\n\t\t\t\t\t\t\tdiff = nodeIndex && cache[ 2 ];\n\t\t\t\t\t\t\tnode = nodeIndex && parent.childNodes[ nodeIndex ];\n\n\t\t\t\t\t\t\twhile ( (node = ++nodeIndex && node && node[ dir ] ||\n\n\t\t\t\t\t\t\t\t// Fallback to seeking `elem` from the start\n\t\t\t\t\t\t\t\t(diff = nodeIndex = 0) || start.pop()) ) {\n\n\t\t\t\t\t\t\t\t// When found, cache indexes on `parent` and break\n\t\t\t\t\t\t\t\tif ( node.nodeType === 1 && ++diff && node === elem ) {\n\t\t\t\t\t\t\t\t\tuniqueCache[ type ] = [ dirruns, nodeIndex, diff ];\n\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// Use previously-cached element index if available\n\t\t\t\t\t\t\tif ( useCache ) {\n\t\t\t\t\t\t\t\t// ...in a gzip-friendly way\n\t\t\t\t\t\t\t\tnode = elem;\n\t\t\t\t\t\t\t\touterCache = node[ expando ] || (node[ expando ] = {});\n\n\t\t\t\t\t\t\t\t// Support: IE <9 only\n\t\t\t\t\t\t\t\t// Defend against cloned attroperties (jQuery gh-1709)\n\t\t\t\t\t\t\t\tuniqueCache = outerCache[ node.uniqueID ] ||\n\t\t\t\t\t\t\t\t\t(outerCache[ node.uniqueID ] = {});\n\n\t\t\t\t\t\t\t\tcache = uniqueCache[ type ] || [];\n\t\t\t\t\t\t\t\tnodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];\n\t\t\t\t\t\t\t\tdiff = nodeIndex;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t// xml :nth-child(...)\n\t\t\t\t\t\t\t// or :nth-last-child(...) or :nth(-last)?-of-type(...)\n\t\t\t\t\t\t\tif ( diff === false ) {\n\t\t\t\t\t\t\t\t// Use the same loop as above to seek `elem` from the start\n\t\t\t\t\t\t\t\twhile ( (node = ++nodeIndex && node && node[ dir ] ||\n\t\t\t\t\t\t\t\t\t(diff = nodeIndex = 0) || start.pop()) ) {\n\n\t\t\t\t\t\t\t\t\tif ( ( ofType ?\n\t\t\t\t\t\t\t\t\t\tnode.nodeName.toLowerCase() === name :\n\t\t\t\t\t\t\t\t\t\tnode.nodeType === 1 ) &&\n\t\t\t\t\t\t\t\t\t\t++diff ) {\n\n\t\t\t\t\t\t\t\t\t\t// Cache the index of each encountered element\n\t\t\t\t\t\t\t\t\t\tif ( useCache ) {\n\t\t\t\t\t\t\t\t\t\t\touterCache = node[ expando ] || (node[ expando ] = {});\n\n\t\t\t\t\t\t\t\t\t\t\t// Support: IE <9 only\n\t\t\t\t\t\t\t\t\t\t\t// Defend against cloned attroperties (jQuery gh-1709)\n\t\t\t\t\t\t\t\t\t\t\tuniqueCache = outerCache[ node.uniqueID ] ||\n\t\t\t\t\t\t\t\t\t\t\t\t(outerCache[ node.uniqueID ] = {});\n\n\t\t\t\t\t\t\t\t\t\t\tuniqueCache[ type ] = [ dirruns, diff ];\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\tif ( node === elem ) {\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Incorporate the offset, then check against cycle size\n\t\t\t\t\t\tdiff -= last;\n\t\t\t\t\t\treturn diff === first || ( diff % first === 0 && diff / first >= 0 );\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t},\n\n\t\t\"PSEUDO\": function( pseudo, argument ) {\n\t\t\t// pseudo-class names are case-insensitive\n\t\t\t// http://www.w3.org/TR/selectors/#pseudo-classes\n\t\t\t// Prioritize by case sensitivity in case custom pseudos are added with uppercase letters\n\t\t\t// Remember that setFilters inherits from pseudos\n\t\t\tvar args,\n\t\t\t\tfn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] ||\n\t\t\t\t\tSizzle.error( \"unsupported pseudo: \" + pseudo );\n\n\t\t\t// The user may use createPseudo to indicate that\n\t\t\t// arguments are needed to create the filter function\n\t\t\t// just as Sizzle does\n\t\t\tif ( fn[ expando ] ) {\n\t\t\t\treturn fn( argument );\n\t\t\t}\n\n\t\t\t// But maintain support for old signatures\n\t\t\tif ( fn.length > 1 ) {\n\t\t\t\targs = [ pseudo, pseudo, \"\", argument ];\n\t\t\t\treturn Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ?\n\t\t\t\t\tmarkFunction(function( seed, matches ) {\n\t\t\t\t\t\tvar idx,\n\t\t\t\t\t\t\tmatched = fn( seed, argument ),\n\t\t\t\t\t\t\ti = matched.length;\n\t\t\t\t\t\twhile ( i-- ) {\n\t\t\t\t\t\t\tidx = indexOf( seed, matched[i] );\n\t\t\t\t\t\t\tseed[ idx ] = !( matches[ idx ] = matched[i] );\n\t\t\t\t\t\t}\n\t\t\t\t\t}) :\n\t\t\t\t\tfunction( elem ) {\n\t\t\t\t\t\treturn fn( elem, 0, args );\n\t\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn fn;\n\t\t}\n\t},\n\n\tpseudos: {\n\t\t// Potentially complex pseudos\n\t\t\"not\": markFunction(function( selector ) {\n\t\t\t// Trim the selector passed to compile\n\t\t\t// to avoid treating leading and trailing\n\t\t\t// spaces as combinators\n\t\t\tvar input = [],\n\t\t\t\tresults = [],\n\t\t\t\tmatcher = compile( selector.replace( rtrim, \"$1\" ) );\n\n\t\t\treturn matcher[ expando ] ?\n\t\t\t\tmarkFunction(function( seed, matches, context, xml ) {\n\t\t\t\t\tvar elem,\n\t\t\t\t\t\tunmatched = matcher( seed, null, xml, [] ),\n\t\t\t\t\t\ti = seed.length;\n\n\t\t\t\t\t// Match elements unmatched by `matcher`\n\t\t\t\t\twhile ( i-- ) {\n\t\t\t\t\t\tif ( (elem = unmatched[i]) ) {\n\t\t\t\t\t\t\tseed[i] = !(matches[i] = elem);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}) :\n\t\t\t\tfunction( elem, context, xml ) {\n\t\t\t\t\tinput[0] = elem;\n\t\t\t\t\tmatcher( input, null, xml, results );\n\t\t\t\t\t// Don't keep the element (issue #299)\n\t\t\t\t\tinput[0] = null;\n\t\t\t\t\treturn !results.pop();\n\t\t\t\t};\n\t\t}),\n\n\t\t\"has\": markFunction(function( selector ) {\n\t\t\treturn function( elem ) {\n\t\t\t\treturn Sizzle( selector, elem ).length > 0;\n\t\t\t};\n\t\t}),\n\n\t\t\"contains\": markFunction(function( text ) {\n\t\t\ttext = text.replace( runescape, funescape );\n\t\t\treturn function( elem ) {\n\t\t\t\treturn ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1;\n\t\t\t};\n\t\t}),\n\n\t\t// \"Whether an element is represented by a :lang() selector\n\t\t// is based solely on the element's language value\n\t\t// being equal to the identifier C,\n\t\t// or beginning with the identifier C immediately followed by \"-\".\n\t\t// The matching of C against the element's language value is performed case-insensitively.\n\t\t// The identifier C does not have to be a valid language name.\"\n\t\t// http://www.w3.org/TR/selectors/#lang-pseudo\n\t\t\"lang\": markFunction( function( lang ) {\n\t\t\t// lang value must be a valid identifier\n\t\t\tif ( !ridentifier.test(lang || \"\") ) {\n\t\t\t\tSizzle.error( \"unsupported lang: \" + lang );\n\t\t\t}\n\t\t\tlang = lang.replace( runescape, funescape ).toLowerCase();\n\t\t\treturn function( elem ) {\n\t\t\t\tvar elemLang;\n\t\t\t\tdo {\n\t\t\t\t\tif ( (elemLang = documentIsHTML ?\n\t\t\t\t\t\telem.lang :\n\t\t\t\t\t\telem.getAttribute(\"xml:lang\") || elem.getAttribute(\"lang\")) ) {\n\n\t\t\t\t\t\telemLang = elemLang.toLowerCase();\n\t\t\t\t\t\treturn elemLang === lang || elemLang.indexOf( lang + \"-\" ) === 0;\n\t\t\t\t\t}\n\t\t\t\t} while ( (elem = elem.parentNode) && elem.nodeType === 1 );\n\t\t\t\treturn false;\n\t\t\t};\n\t\t}),\n\n\t\t// Miscellaneous\n\t\t\"target\": function( elem ) {\n\t\t\tvar hash = window.location && window.location.hash;\n\t\t\treturn hash && hash.slice( 1 ) === elem.id;\n\t\t},\n\n\t\t\"root\": function( elem ) {\n\t\t\treturn elem === docElem;\n\t\t},\n\n\t\t\"focus\": function( elem ) {\n\t\t\treturn elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex);\n\t\t},\n\n\t\t// Boolean properties\n\t\t\"enabled\": function( elem ) {\n\t\t\treturn elem.disabled === false;\n\t\t},\n\n\t\t\"disabled\": function( elem ) {\n\t\t\treturn elem.disabled === true;\n\t\t},\n\n\t\t\"checked\": function( elem ) {\n\t\t\t// In CSS3, :checked should return both checked and selected elements\n\t\t\t// http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked\n\t\t\tvar nodeName = elem.nodeName.toLowerCase();\n\t\t\treturn (nodeName === \"input\" && !!elem.checked) || (nodeName === \"option\" && !!elem.selected);\n\t\t},\n\n\t\t\"selected\": function( elem ) {\n\t\t\t// Accessing this property makes selected-by-default\n\t\t\t// options in Safari work properly\n\t\t\tif ( elem.parentNode ) {\n\t\t\t\telem.parentNode.selectedIndex;\n\t\t\t}\n\n\t\t\treturn elem.selected === true;\n\t\t},\n\n\t\t// Contents\n\t\t\"empty\": function( elem ) {\n\t\t\t// http://www.w3.org/TR/selectors/#empty-pseudo\n\t\t\t// :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5),\n\t\t\t// but not by others (comment: 8; processing instruction: 7; etc.)\n\t\t\t// nodeType < 6 works because attributes (2) do not appear as children\n\t\t\tfor ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {\n\t\t\t\tif ( elem.nodeType < 6 ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t},\n\n\t\t\"parent\": function( elem ) {\n\t\t\treturn !Expr.pseudos[\"empty\"]( elem );\n\t\t},\n\n\t\t// Element/input types\n\t\t\"header\": function( elem ) {\n\t\t\treturn rheader.test( elem.nodeName );\n\t\t},\n\n\t\t\"input\": function( elem ) {\n\t\t\treturn rinputs.test( elem.nodeName );\n\t\t},\n\n\t\t\"button\": function( elem ) {\n\t\t\tvar name = elem.nodeName.toLowerCase();\n\t\t\treturn name === \"input\" && elem.type === \"button\" || name === \"button\";\n\t\t},\n\n\t\t\"text\": function( elem ) {\n\t\t\tvar attr;\n\t\t\treturn elem.nodeName.toLowerCase() === \"input\" &&\n\t\t\t\telem.type === \"text\" &&\n\n\t\t\t\t// Support: IE<8\n\t\t\t\t// New HTML5 attribute values (e.g., \"search\") appear with elem.type === \"text\"\n\t\t\t\t( (attr = elem.getAttribute(\"type\")) == null || attr.toLowerCase() === \"text\" );\n\t\t},\n\n\t\t// Position-in-collection\n\t\t\"first\": createPositionalPseudo(function() {\n\t\t\treturn [ 0 ];\n\t\t}),\n\n\t\t\"last\": createPositionalPseudo(function( matchIndexes, length ) {\n\t\t\treturn [ length - 1 ];\n\t\t}),\n\n\t\t\"eq\": createPositionalPseudo(function( matchIndexes, length, argument ) {\n\t\t\treturn [ argument < 0 ? argument + length : argument ];\n\t\t}),\n\n\t\t\"even\": createPositionalPseudo(function( matchIndexes, length ) {\n\t\t\tvar i = 0;\n\t\t\tfor ( ; i < length; i += 2 ) {\n\t\t\t\tmatchIndexes.push( i );\n\t\t\t}\n\t\t\treturn matchIndexes;\n\t\t}),\n\n\t\t\"odd\": createPositionalPseudo(function( matchIndexes, length ) {\n\t\t\tvar i = 1;\n\t\t\tfor ( ; i < length; i += 2 ) {\n\t\t\t\tmatchIndexes.push( i );\n\t\t\t}\n\t\t\treturn matchIndexes;\n\t\t}),\n\n\t\t\"lt\": createPositionalPseudo(function( matchIndexes, length, argument ) {\n\t\t\tvar i = argument < 0 ? argument + length : argument;\n\t\t\tfor ( ; --i >= 0; ) {\n\t\t\t\tmatchIndexes.push( i );\n\t\t\t}\n\t\t\treturn matchIndexes;\n\t\t}),\n\n\t\t\"gt\": createPositionalPseudo(function( matchIndexes, length, argument ) {\n\t\t\tvar i = argument < 0 ? argument + length : argument;\n\t\t\tfor ( ; ++i < length; ) {\n\t\t\t\tmatchIndexes.push( i );\n\t\t\t}\n\t\t\treturn matchIndexes;\n\t\t})\n\t}\n};\n\nExpr.pseudos[\"nth\"] = Expr.pseudos[\"eq\"];\n\n// Add button/input type pseudos\nfor ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) {\n\tExpr.pseudos[ i ] = createInputPseudo( i );\n}\nfor ( i in { submit: true, reset: true } ) {\n\tExpr.pseudos[ i ] = createButtonPseudo( i );\n}\n\n// Easy API for creating new setFilters\nfunction setFilters() {}\nsetFilters.prototype = Expr.filters = Expr.pseudos;\nExpr.setFilters = new setFilters();\n\ntokenize = Sizzle.tokenize = function( selector, parseOnly ) {\n\tvar matched, match, tokens, type,\n\t\tsoFar, groups, preFilters,\n\t\tcached = tokenCache[ selector + \" \" ];\n\n\tif ( cached ) {\n\t\treturn parseOnly ? 0 : cached.slice( 0 );\n\t}\n\n\tsoFar = selector;\n\tgroups = [];\n\tpreFilters = Expr.preFilter;\n\n\twhile ( soFar ) {\n\n\t\t// Comma and first run\n\t\tif ( !matched || (match = rcomma.exec( soFar )) ) {\n\t\t\tif ( match ) {\n\t\t\t\t// Don't consume trailing commas as valid\n\t\t\t\tsoFar = soFar.slice( match[0].length ) || soFar;\n\t\t\t}\n\t\t\tgroups.push( (tokens = []) );\n\t\t}\n\n\t\tmatched = false;\n\n\t\t// Combinators\n\t\tif ( (match = rcombinators.exec( soFar )) ) {\n\t\t\tmatched = match.shift();\n\t\t\ttokens.push({\n\t\t\t\tvalue: matched,\n\t\t\t\t// Cast descendant combinators to space\n\t\t\t\ttype: match[0].replace( rtrim, \" \" )\n\t\t\t});\n\t\t\tsoFar = soFar.slice( matched.length );\n\t\t}\n\n\t\t// Filters\n\t\tfor ( type in Expr.filter ) {\n\t\t\tif ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] ||\n\t\t\t\t(match = preFilters[ type ]( match ))) ) {\n\t\t\t\tmatched = match.shift();\n\t\t\t\ttokens.push({\n\t\t\t\t\tvalue: matched,\n\t\t\t\t\ttype: type,\n\t\t\t\t\tmatches: match\n\t\t\t\t});\n\t\t\t\tsoFar = soFar.slice( matched.length );\n\t\t\t}\n\t\t}\n\n\t\tif ( !matched ) {\n\t\t\tbreak;\n\t\t}\n\t}\n\n\t// Return the length of the invalid excess\n\t// if we're just parsing\n\t// Otherwise, throw an error or return tokens\n\treturn parseOnly ?\n\t\tsoFar.length :\n\t\tsoFar ?\n\t\t\tSizzle.error( selector ) :\n\t\t\t// Cache the tokens\n\t\t\ttokenCache( selector, groups ).slice( 0 );\n};\n\nfunction toSelector( tokens ) {\n\tvar i = 0,\n\t\tlen = tokens.length,\n\t\tselector = \"\";\n\tfor ( ; i < len; i++ ) {\n\t\tselector += tokens[i].value;\n\t}\n\treturn selector;\n}\n\nfunction addCombinator( matcher, combinator, base ) {\n\tvar dir = combinator.dir,\n\t\tcheckNonElements = base && dir === \"parentNode\",\n\t\tdoneName = done++;\n\n\treturn combinator.first ?\n\t\t// Check against closest ancestor/preceding element\n\t\tfunction( elem, context, xml ) {\n\t\t\twhile ( (elem = elem[ dir ]) ) {\n\t\t\t\tif ( elem.nodeType === 1 || checkNonElements ) {\n\t\t\t\t\treturn matcher( elem, context, xml );\n\t\t\t\t}\n\t\t\t}\n\t\t} :\n\n\t\t// Check against all ancestor/preceding elements\n\t\tfunction( elem, context, xml ) {\n\t\t\tvar oldCache, uniqueCache, outerCache,\n\t\t\t\tnewCache = [ dirruns, doneName ];\n\n\t\t\t// We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching\n\t\t\tif ( xml ) {\n\t\t\t\twhile ( (elem = elem[ dir ]) ) {\n\t\t\t\t\tif ( elem.nodeType === 1 || checkNonElements ) {\n\t\t\t\t\t\tif ( matcher( elem, context, xml ) ) {\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\twhile ( (elem = elem[ dir ]) ) {\n\t\t\t\t\tif ( elem.nodeType === 1 || checkNonElements ) {\n\t\t\t\t\t\touterCache = elem[ expando ] || (elem[ expando ] = {});\n\n\t\t\t\t\t\t// Support: IE <9 only\n\t\t\t\t\t\t// Defend against cloned attroperties (jQuery gh-1709)\n\t\t\t\t\t\tuniqueCache = outerCache[ elem.uniqueID ] || (outerCache[ elem.uniqueID ] = {});\n\n\t\t\t\t\t\tif ( (oldCache = uniqueCache[ dir ]) &&\n\t\t\t\t\t\t\toldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) {\n\n\t\t\t\t\t\t\t// Assign to newCache so results back-propagate to previous elements\n\t\t\t\t\t\t\treturn (newCache[ 2 ] = oldCache[ 2 ]);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// Reuse newcache so results back-propagate to previous elements\n\t\t\t\t\t\t\tuniqueCache[ dir ] = newCache;\n\n\t\t\t\t\t\t\t// A match means we're done; a fail means we have to keep checking\n\t\t\t\t\t\t\tif ( (newCache[ 2 ] = matcher( elem, context, xml )) ) {\n\t\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n}\n\nfunction elementMatcher( matchers ) {\n\treturn matchers.length > 1 ?\n\t\tfunction( elem, context, xml ) {\n\t\t\tvar i = matchers.length;\n\t\t\twhile ( i-- ) {\n\t\t\t\tif ( !matchers[i]( elem, context, xml ) ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t} :\n\t\tmatchers[0];\n}\n\nfunction multipleContexts( selector, contexts, results ) {\n\tvar i = 0,\n\t\tlen = contexts.length;\n\tfor ( ; i < len; i++ ) {\n\t\tSizzle( selector, contexts[i], results );\n\t}\n\treturn results;\n}\n\nfunction condense( unmatched, map, filter, context, xml ) {\n\tvar elem,\n\t\tnewUnmatched = [],\n\t\ti = 0,\n\t\tlen = unmatched.length,\n\t\tmapped = map != null;\n\n\tfor ( ; i < len; i++ ) {\n\t\tif ( (elem = unmatched[i]) ) {\n\t\t\tif ( !filter || filter( elem, context, xml ) ) {\n\t\t\t\tnewUnmatched.push( elem );\n\t\t\t\tif ( mapped ) {\n\t\t\t\t\tmap.push( i );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn newUnmatched;\n}\n\nfunction setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) {\n\tif ( postFilter && !postFilter[ expando ] ) {\n\t\tpostFilter = setMatcher( postFilter );\n\t}\n\tif ( postFinder && !postFinder[ expando ] ) {\n\t\tpostFinder = setMatcher( postFinder, postSelector );\n\t}\n\treturn markFunction(function( seed, results, context, xml ) {\n\t\tvar temp, i, elem,\n\t\t\tpreMap = [],\n\t\t\tpostMap = [],\n\t\t\tpreexisting = results.length,\n\n\t\t\t// Get initial elements from seed or context\n\t\t\telems = seed || multipleContexts( selector || \"*\", context.nodeType ? [ context ] : context, [] ),\n\n\t\t\t// Prefilter to get matcher input, preserving a map for seed-results synchronization\n\t\t\tmatcherIn = preFilter && ( seed || !selector ) ?\n\t\t\t\tcondense( elems, preMap, preFilter, context, xml ) :\n\t\t\t\telems,\n\n\t\t\tmatcherOut = matcher ?\n\t\t\t\t// If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results,\n\t\t\t\tpostFinder || ( seed ? preFilter : preexisting || postFilter ) ?\n\n\t\t\t\t\t// ...intermediate processing is necessary\n\t\t\t\t\t[] :\n\n\t\t\t\t\t// ...otherwise use results directly\n\t\t\t\t\tresults :\n\t\t\t\tmatcherIn;\n\n\t\t// Find primary matches\n\t\tif ( matcher ) {\n\t\t\tmatcher( matcherIn, matcherOut, context, xml );\n\t\t}\n\n\t\t// Apply postFilter\n\t\tif ( postFilter ) {\n\t\t\ttemp = condense( matcherOut, postMap );\n\t\t\tpostFilter( temp, [], context, xml );\n\n\t\t\t// Un-match failing elements by moving them back to matcherIn\n\t\t\ti = temp.length;\n\t\t\twhile ( i-- ) {\n\t\t\t\tif ( (elem = temp[i]) ) {\n\t\t\t\t\tmatcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif ( seed ) {\n\t\t\tif ( postFinder || preFilter ) {\n\t\t\t\tif ( postFinder ) {\n\t\t\t\t\t// Get the final matcherOut by condensing this intermediate into postFinder contexts\n\t\t\t\t\ttemp = [];\n\t\t\t\t\ti = matcherOut.length;\n\t\t\t\t\twhile ( i-- ) {\n\t\t\t\t\t\tif ( (elem = matcherOut[i]) ) {\n\t\t\t\t\t\t\t// Restore matcherIn since elem is not yet a final match\n\t\t\t\t\t\t\ttemp.push( (matcherIn[i] = elem) );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tpostFinder( null, (matcherOut = []), temp, xml );\n\t\t\t\t}\n\n\t\t\t\t// Move matched elements from seed to results to keep them synchronized\n\t\t\t\ti = matcherOut.length;\n\t\t\t\twhile ( i-- ) {\n\t\t\t\t\tif ( (elem = matcherOut[i]) &&\n\t\t\t\t\t\t(temp = postFinder ? indexOf( seed, elem ) : preMap[i]) > -1 ) {\n\n\t\t\t\t\t\tseed[temp] = !(results[temp] = elem);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t// Add elements to results, through postFinder if defined\n\t\t} else {\n\t\t\tmatcherOut = condense(\n\t\t\t\tmatcherOut === results ?\n\t\t\t\t\tmatcherOut.splice( preexisting, matcherOut.length ) :\n\t\t\t\t\tmatcherOut\n\t\t\t);\n\t\t\tif ( postFinder ) {\n\t\t\t\tpostFinder( null, results, matcherOut, xml );\n\t\t\t} else {\n\t\t\t\tpush.apply( results, matcherOut );\n\t\t\t}\n\t\t}\n\t});\n}\n\nfunction matcherFromTokens( tokens ) {\n\tvar checkContext, matcher, j,\n\t\tlen = tokens.length,\n\t\tleadingRelative = Expr.relative[ tokens[0].type ],\n\t\timplicitRelative = leadingRelative || Expr.relative[\" \"],\n\t\ti = leadingRelative ? 1 : 0,\n\n\t\t// The foundational matcher ensures that elements are reachable from top-level context(s)\n\t\tmatchContext = addCombinator( function( elem ) {\n\t\t\treturn elem === checkContext;\n\t\t}, implicitRelative, true ),\n\t\tmatchAnyContext = addCombinator( function( elem ) {\n\t\t\treturn indexOf( checkContext, elem ) > -1;\n\t\t}, implicitRelative, true ),\n\t\tmatchers = [ function( elem, context, xml ) {\n\t\t\tvar ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || (\n\t\t\t\t(checkContext = context).nodeType ?\n\t\t\t\t\tmatchContext( elem, context, xml ) :\n\t\t\t\t\tmatchAnyContext( elem, context, xml ) );\n\t\t\t// Avoid hanging onto element (issue #299)\n\t\t\tcheckContext = null;\n\t\t\treturn ret;\n\t\t} ];\n\n\tfor ( ; i < len; i++ ) {\n\t\tif ( (matcher = Expr.relative[ tokens[i].type ]) ) {\n\t\t\tmatchers = [ addCombinator(elementMatcher( matchers ), matcher) ];\n\t\t} else {\n\t\t\tmatcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches );\n\n\t\t\t// Return special upon seeing a positional matcher\n\t\t\tif ( matcher[ expando ] ) {\n\t\t\t\t// Find the next relative operator (if any) for proper handling\n\t\t\t\tj = ++i;\n\t\t\t\tfor ( ; j < len; j++ ) {\n\t\t\t\t\tif ( Expr.relative[ tokens[j].type ] ) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn setMatcher(\n\t\t\t\t\ti > 1 && elementMatcher( matchers ),\n\t\t\t\t\ti > 1 && toSelector(\n\t\t\t\t\t\t// If the preceding token was a descendant combinator, insert an implicit any-element `*`\n\t\t\t\t\t\ttokens.slice( 0, i - 1 ).concat({ value: tokens[ i - 2 ].type === \" \" ? \"*\" : \"\" })\n\t\t\t\t\t).replace( rtrim, \"$1\" ),\n\t\t\t\t\tmatcher,\n\t\t\t\t\ti < j && matcherFromTokens( tokens.slice( i, j ) ),\n\t\t\t\t\tj < len && matcherFromTokens( (tokens = tokens.slice( j )) ),\n\t\t\t\t\tj < len && toSelector( tokens )\n\t\t\t\t);\n\t\t\t}\n\t\t\tmatchers.push( matcher );\n\t\t}\n\t}\n\n\treturn elementMatcher( matchers );\n}\n\nfunction matcherFromGroupMatchers( elementMatchers, setMatchers ) {\n\tvar bySet = setMatchers.length > 0,\n\t\tbyElement = elementMatchers.length > 0,\n\t\tsuperMatcher = function( seed, context, xml, results, outermost ) {\n\t\t\tvar elem, j, matcher,\n\t\t\t\tmatchedCount = 0,\n\t\t\t\ti = \"0\",\n\t\t\t\tunmatched = seed && [],\n\t\t\t\tsetMatched = [],\n\t\t\t\tcontextBackup = outermostContext,\n\t\t\t\t// We must always have either seed elements or outermost context\n\t\t\t\telems = seed || byElement && Expr.find[\"TAG\"]( \"*\", outermost ),\n\t\t\t\t// Use integer dirruns iff this is the outermost matcher\n\t\t\t\tdirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.random() || 0.1),\n\t\t\t\tlen = elems.length;\n\n\t\t\tif ( outermost ) {\n\t\t\t\toutermostContext = context === document || context || outermost;\n\t\t\t}\n\n\t\t\t// Add elements passing elementMatchers directly to results\n\t\t\t// Support: IE<9, Safari\n\t\t\t// Tolerate NodeList properties (IE: \"length\"; Safari: ) matching elements by id\n\t\t\tfor ( ; i !== len && (elem = elems[i]) != null; i++ ) {\n\t\t\t\tif ( byElement && elem ) {\n\t\t\t\t\tj = 0;\n\t\t\t\t\tif ( !context && elem.ownerDocument !== document ) {\n\t\t\t\t\t\tsetDocument( elem );\n\t\t\t\t\t\txml = !documentIsHTML;\n\t\t\t\t\t}\n\t\t\t\t\twhile ( (matcher = elementMatchers[j++]) ) {\n\t\t\t\t\t\tif ( matcher( elem, context || document, xml) ) {\n\t\t\t\t\t\t\tresults.push( elem );\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif ( outermost ) {\n\t\t\t\t\t\tdirruns = dirrunsUnique;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Track unmatched elements for set filters\n\t\t\t\tif ( bySet ) {\n\t\t\t\t\t// They will have gone through all possible matchers\n\t\t\t\t\tif ( (elem = !matcher && elem) ) {\n\t\t\t\t\t\tmatchedCount--;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Lengthen the array for every element, matched or not\n\t\t\t\t\tif ( seed ) {\n\t\t\t\t\t\tunmatched.push( elem );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// `i` is now the count of elements visited above, and adding it to `matchedCount`\n\t\t\t// makes the latter nonnegative.\n\t\t\tmatchedCount += i;\n\n\t\t\t// Apply set filters to unmatched elements\n\t\t\t// NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount`\n\t\t\t// equals `i`), unless we didn't visit _any_ elements in the above loop because we have\n\t\t\t// no element matchers and no seed.\n\t\t\t// Incrementing an initially-string \"0\" `i` allows `i` to remain a string only in that\n\t\t\t// case, which will result in a \"00\" `matchedCount` that differs from `i` but is also\n\t\t\t// numerically zero.\n\t\t\tif ( bySet && i !== matchedCount ) {\n\t\t\t\tj = 0;\n\t\t\t\twhile ( (matcher = setMatchers[j++]) ) {\n\t\t\t\t\tmatcher( unmatched, setMatched, context, xml );\n\t\t\t\t}\n\n\t\t\t\tif ( seed ) {\n\t\t\t\t\t// Reintegrate element matches to eliminate the need for sorting\n\t\t\t\t\tif ( matchedCount > 0 ) {\n\t\t\t\t\t\twhile ( i-- ) {\n\t\t\t\t\t\t\tif ( !(unmatched[i] || setMatched[i]) ) {\n\t\t\t\t\t\t\t\tsetMatched[i] = pop.call( results );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Discard index placeholder values to get only actual matches\n\t\t\t\t\tsetMatched = condense( setMatched );\n\t\t\t\t}\n\n\t\t\t\t// Add matches to results\n\t\t\t\tpush.apply( results, setMatched );\n\n\t\t\t\t// Seedless set matches succeeding multiple successful matchers stipulate sorting\n\t\t\t\tif ( outermost && !seed && setMatched.length > 0 &&\n\t\t\t\t\t( matchedCount + setMatchers.length ) > 1 ) {\n\n\t\t\t\t\tSizzle.uniqueSort( results );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Override manipulation of globals by nested matchers\n\t\t\tif ( outermost ) {\n\t\t\t\tdirruns = dirrunsUnique;\n\t\t\t\toutermostContext = contextBackup;\n\t\t\t}\n\n\t\t\treturn unmatched;\n\t\t};\n\n\treturn bySet ?\n\t\tmarkFunction( superMatcher ) :\n\t\tsuperMatcher;\n}\n\ncompile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) {\n\tvar i,\n\t\tsetMatchers = [],\n\t\telementMatchers = [],\n\t\tcached = compilerCache[ selector + \" \" ];\n\n\tif ( !cached ) {\n\t\t// Generate a function of recursive functions that can be used to check each element\n\t\tif ( !match ) {\n\t\t\tmatch = tokenize( selector );\n\t\t}\n\t\ti = match.length;\n\t\twhile ( i-- ) {\n\t\t\tcached = matcherFromTokens( match[i] );\n\t\t\tif ( cached[ expando ] ) {\n\t\t\t\tsetMatchers.push( cached );\n\t\t\t} else {\n\t\t\t\telementMatchers.push( cached );\n\t\t\t}\n\t\t}\n\n\t\t// Cache the compiled function\n\t\tcached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) );\n\n\t\t// Save selector and tokenization\n\t\tcached.selector = selector;\n\t}\n\treturn cached;\n};\n\n/**\n * A low-level selection function that works with Sizzle's compiled\n * selector functions\n * @param {String|Function} selector A selector or a pre-compiled\n * selector function built with Sizzle.compile\n * @param {Element} context\n * @param {Array} [results]\n * @param {Array} [seed] A set of elements to match against\n */\nselect = Sizzle.select = function( selector, context, results, seed ) {\n\tvar i, tokens, token, type, find,\n\t\tcompiled = typeof selector === \"function\" && selector,\n\t\tmatch = !seed && tokenize( (selector = compiled.selector || selector) );\n\n\tresults = results || [];\n\n\t// Try to minimize operations if there is only one selector in the list and no seed\n\t// (the latter of which guarantees us context)\n\tif ( match.length === 1 ) {\n\n\t\t// Reduce context if the leading compound selector is an ID\n\t\ttokens = match[0] = match[0].slice( 0 );\n\t\tif ( tokens.length > 2 && (token = tokens[0]).type === \"ID\" &&\n\t\t\t\tsupport.getById && context.nodeType === 9 && documentIsHTML &&\n\t\t\t\tExpr.relative[ tokens[1].type ] ) {\n\n\t\t\tcontext = ( Expr.find[\"ID\"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0];\n\t\t\tif ( !context ) {\n\t\t\t\treturn results;\n\n\t\t\t// Precompiled matchers will still verify ancestry, so step up a level\n\t\t\t} else if ( compiled ) {\n\t\t\t\tcontext = context.parentNode;\n\t\t\t}\n\n\t\t\tselector = selector.slice( tokens.shift().value.length );\n\t\t}\n\n\t\t// Fetch a seed set for right-to-left matching\n\t\ti = matchExpr[\"needsContext\"].test( selector ) ? 0 : tokens.length;\n\t\twhile ( i-- ) {\n\t\t\ttoken = tokens[i];\n\n\t\t\t// Abort if we hit a combinator\n\t\t\tif ( Expr.relative[ (type = token.type) ] ) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif ( (find = Expr.find[ type ]) ) {\n\t\t\t\t// Search, expanding context for leading sibling combinators\n\t\t\t\tif ( (seed = find(\n\t\t\t\t\ttoken.matches[0].replace( runescape, funescape ),\n\t\t\t\t\trsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context\n\t\t\t\t)) ) {\n\n\t\t\t\t\t// If seed is empty or no tokens remain, we can return early\n\t\t\t\t\ttokens.splice( i, 1 );\n\t\t\t\t\tselector = seed.length && toSelector( tokens );\n\t\t\t\t\tif ( !selector ) {\n\t\t\t\t\t\tpush.apply( results, seed );\n\t\t\t\t\t\treturn results;\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// Compile and execute a filtering function if one is not provided\n\t// Provide `match` to avoid retokenization if we modified the selector above\n\t( compiled || compile( selector, match ) )(\n\t\tseed,\n\t\tcontext,\n\t\t!documentIsHTML,\n\t\tresults,\n\t\t!context || rsibling.test( selector ) && testContext( context.parentNode ) || context\n\t);\n\treturn results;\n};\n\n// One-time assignments\n\n// Sort stability\nsupport.sortStable = expando.split(\"\").sort( sortOrder ).join(\"\") === expando;\n\n// Support: Chrome 14-35+\n// Always assume duplicates if they aren't passed to the comparison function\nsupport.detectDuplicates = !!hasDuplicate;\n\n// Initialize against the default document\nsetDocument();\n\n// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27)\n// Detached nodes confoundingly follow *each other*\nsupport.sortDetached = assert(function( div1 ) {\n\t// Should return 1, but returns 4 (following)\n\treturn div1.compareDocumentPosition( document.createElement(\"div\") ) & 1;\n});\n\n// Support: IE<8\n// Prevent attribute/property \"interpolation\"\n// http://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx\nif ( !assert(function( div ) {\n\tdiv.innerHTML = \"\";\n\treturn div.firstChild.getAttribute(\"href\") === \"#\" ;\n}) ) {\n\taddHandle( \"type|href|height|width\", function( elem, name, isXML ) {\n\t\tif ( !isXML ) {\n\t\t\treturn elem.getAttribute( name, name.toLowerCase() === \"type\" ? 1 : 2 );\n\t\t}\n\t});\n}\n\n// Support: IE<9\n// Use defaultValue in place of getAttribute(\"value\")\nif ( !support.attributes || !assert(function( div ) {\n\tdiv.innerHTML = \"\";\n\tdiv.firstChild.setAttribute( \"value\", \"\" );\n\treturn div.firstChild.getAttribute( \"value\" ) === \"\";\n}) ) {\n\taddHandle( \"value\", function( elem, name, isXML ) {\n\t\tif ( !isXML && elem.nodeName.toLowerCase() === \"input\" ) {\n\t\t\treturn elem.defaultValue;\n\t\t}\n\t});\n}\n\n// Support: IE<9\n// Use getAttributeNode to fetch booleans when getAttribute lies\nif ( !assert(function( div ) {\n\treturn div.getAttribute(\"disabled\") == null;\n}) ) {\n\taddHandle( booleans, function( elem, name, isXML ) {\n\t\tvar val;\n\t\tif ( !isXML ) {\n\t\t\treturn elem[ name ] === true ? name.toLowerCase() :\n\t\t\t\t\t(val = elem.getAttributeNode( name )) && val.specified ?\n\t\t\t\t\tval.value :\n\t\t\t\tnull;\n\t\t}\n\t});\n}\n\nreturn Sizzle;\n\n})( window );\n\n\n\njQuery.find = Sizzle;\njQuery.expr = Sizzle.selectors;\njQuery.expr[ \":\" ] = jQuery.expr.pseudos;\njQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort;\njQuery.text = Sizzle.getText;\njQuery.isXMLDoc = Sizzle.isXML;\njQuery.contains = Sizzle.contains;\n\n\n\nvar dir = function( elem, dir, until ) {\n\tvar matched = [],\n\t\ttruncate = until !== undefined;\n\n\twhile ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) {\n\t\tif ( elem.nodeType === 1 ) {\n\t\t\tif ( truncate && jQuery( elem ).is( until ) ) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tmatched.push( elem );\n\t\t}\n\t}\n\treturn matched;\n};\n\n\nvar siblings = function( n, elem ) {\n\tvar matched = [];\n\n\tfor ( ; n; n = n.nextSibling ) {\n\t\tif ( n.nodeType === 1 && n !== elem ) {\n\t\t\tmatched.push( n );\n\t\t}\n\t}\n\n\treturn matched;\n};\n\n\nvar rneedsContext = jQuery.expr.match.needsContext;\n\nvar rsingleTag = ( /^<([\\w-]+)\\s*\\/?>(?:<\\/\\1>|)$/ );\n\n\n\nvar risSimple = /^.[^:#\\[\\.,]*$/;\n\n// Implement the identical functionality for filter and not\nfunction winnow( elements, qualifier, not ) {\n\tif ( jQuery.isFunction( qualifier ) ) {\n\t\treturn jQuery.grep( elements, function( elem, i ) {\n\t\t\t/* jshint -W018 */\n\t\t\treturn !!qualifier.call( elem, i, elem ) !== not;\n\t\t} );\n\n\t}\n\n\tif ( qualifier.nodeType ) {\n\t\treturn jQuery.grep( elements, function( elem ) {\n\t\t\treturn ( elem === qualifier ) !== not;\n\t\t} );\n\n\t}\n\n\tif ( typeof qualifier === \"string\" ) {\n\t\tif ( risSimple.test( qualifier ) ) {\n\t\t\treturn jQuery.filter( qualifier, elements, not );\n\t\t}\n\n\t\tqualifier = jQuery.filter( qualifier, elements );\n\t}\n\n\treturn jQuery.grep( elements, function( elem ) {\n\t\treturn ( indexOf.call( qualifier, elem ) > -1 ) !== not;\n\t} );\n}\n\njQuery.filter = function( expr, elems, not ) {\n\tvar elem = elems[ 0 ];\n\n\tif ( not ) {\n\t\texpr = \":not(\" + expr + \")\";\n\t}\n\n\treturn elems.length === 1 && elem.nodeType === 1 ?\n\t\tjQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [] :\n\t\tjQuery.find.matches( expr, jQuery.grep( elems, function( elem ) {\n\t\t\treturn elem.nodeType === 1;\n\t\t} ) );\n};\n\njQuery.fn.extend( {\n\tfind: function( selector ) {\n\t\tvar i,\n\t\t\tlen = this.length,\n\t\t\tret = [],\n\t\t\tself = this;\n\n\t\tif ( typeof selector !== \"string\" ) {\n\t\t\treturn this.pushStack( jQuery( selector ).filter( function() {\n\t\t\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\t\t\tif ( jQuery.contains( self[ i ], this ) ) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} ) );\n\t\t}\n\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\tjQuery.find( selector, self[ i ], ret );\n\t\t}\n\n\t\t// Needed because $( selector, context ) becomes $( context ).find( selector )\n\t\tret = this.pushStack( len > 1 ? jQuery.unique( ret ) : ret );\n\t\tret.selector = this.selector ? this.selector + \" \" + selector : selector;\n\t\treturn ret;\n\t},\n\tfilter: function( selector ) {\n\t\treturn this.pushStack( winnow( this, selector || [], false ) );\n\t},\n\tnot: function( selector ) {\n\t\treturn this.pushStack( winnow( this, selector || [], true ) );\n\t},\n\tis: function( selector ) {\n\t\treturn !!winnow(\n\t\t\tthis,\n\n\t\t\t// If this is a positional/relative selector, check membership in the returned set\n\t\t\t// so $(\"p:first\").is(\"p:last\") won't return true for a doc with two \"p\".\n\t\t\ttypeof selector === \"string\" && rneedsContext.test( selector ) ?\n\t\t\t\tjQuery( selector ) :\n\t\t\t\tselector || [],\n\t\t\tfalse\n\t\t).length;\n\t}\n} );\n\n\n// Initialize a jQuery object\n\n\n// A central reference to the root jQuery(document)\nvar rootjQuery,\n\n\t// A simple way to check for HTML strings\n\t// Prioritize #id over to avoid XSS via location.hash (#9521)\n\t// Strict HTML recognition (#11290: must start with <)\n\trquickExpr = /^(?:\\s*(<[\\w\\W]+>)[^>]*|#([\\w-]*))$/,\n\n\tinit = jQuery.fn.init = function( selector, context, root ) {\n\t\tvar match, elem;\n\n\t\t// HANDLE: $(\"\"), $(null), $(undefined), $(false)\n\t\tif ( !selector ) {\n\t\t\treturn this;\n\t\t}\n\n\t\t// Method init() accepts an alternate rootjQuery\n\t\t// so migrate can support jQuery.sub (gh-2101)\n\t\troot = root || rootjQuery;\n\n\t\t// Handle HTML strings\n\t\tif ( typeof selector === \"string\" ) {\n\t\t\tif ( selector[ 0 ] === \"<\" &&\n\t\t\t\tselector[ selector.length - 1 ] === \">\" &&\n\t\t\t\tselector.length >= 3 ) {\n\n\t\t\t\t// Assume that strings that start and end with <> are HTML and skip the regex check\n\t\t\t\tmatch = [ null, selector, null ];\n\n\t\t\t} else {\n\t\t\t\tmatch = rquickExpr.exec( selector );\n\t\t\t}\n\n\t\t\t// Match html or make sure no context is specified for #id\n\t\t\tif ( match && ( match[ 1 ] || !context ) ) {\n\n\t\t\t\t// HANDLE: $(html) -> $(array)\n\t\t\t\tif ( match[ 1 ] ) {\n\t\t\t\t\tcontext = context instanceof jQuery ? context[ 0 ] : context;\n\n\t\t\t\t\t// Option to run scripts is true for back-compat\n\t\t\t\t\t// Intentionally let the error be thrown if parseHTML is not present\n\t\t\t\t\tjQuery.merge( this, jQuery.parseHTML(\n\t\t\t\t\t\tmatch[ 1 ],\n\t\t\t\t\t\tcontext && context.nodeType ? context.ownerDocument || context : document,\n\t\t\t\t\t\ttrue\n\t\t\t\t\t) );\n\n\t\t\t\t\t// HANDLE: $(html, props)\n\t\t\t\t\tif ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) {\n\t\t\t\t\t\tfor ( match in context ) {\n\n\t\t\t\t\t\t\t// Properties of context are called as methods if possible\n\t\t\t\t\t\t\tif ( jQuery.isFunction( this[ match ] ) ) {\n\t\t\t\t\t\t\t\tthis[ match ]( context[ match ] );\n\n\t\t\t\t\t\t\t// ...and otherwise set as attributes\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tthis.attr( match, context[ match ] );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn this;\n\n\t\t\t\t// HANDLE: $(#id)\n\t\t\t\t} else {\n\t\t\t\t\telem = document.getElementById( match[ 2 ] );\n\n\t\t\t\t\t// Support: Blackberry 4.6\n\t\t\t\t\t// gEBID returns nodes no longer in the document (#6963)\n\t\t\t\t\tif ( elem && elem.parentNode ) {\n\n\t\t\t\t\t\t// Inject the element directly into the jQuery object\n\t\t\t\t\t\tthis.length = 1;\n\t\t\t\t\t\tthis[ 0 ] = elem;\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.context = document;\n\t\t\t\t\tthis.selector = selector;\n\t\t\t\t\treturn this;\n\t\t\t\t}\n\n\t\t\t// HANDLE: $(expr, $(...))\n\t\t\t} else if ( !context || context.jquery ) {\n\t\t\t\treturn ( context || root ).find( selector );\n\n\t\t\t// HANDLE: $(expr, context)\n\t\t\t// (which is just equivalent to: $(context).find(expr)\n\t\t\t} else {\n\t\t\t\treturn this.constructor( context ).find( selector );\n\t\t\t}\n\n\t\t// HANDLE: $(DOMElement)\n\t\t} else if ( selector.nodeType ) {\n\t\t\tthis.context = this[ 0 ] = selector;\n\t\t\tthis.length = 1;\n\t\t\treturn this;\n\n\t\t// HANDLE: $(function)\n\t\t// Shortcut for document ready\n\t\t} else if ( jQuery.isFunction( selector ) ) {\n\t\t\treturn root.ready !== undefined ?\n\t\t\t\troot.ready( selector ) :\n\n\t\t\t\t// Execute immediately if ready is not present\n\t\t\t\tselector( jQuery );\n\t\t}\n\n\t\tif ( selector.selector !== undefined ) {\n\t\t\tthis.selector = selector.selector;\n\t\t\tthis.context = selector.context;\n\t\t}\n\n\t\treturn jQuery.makeArray( selector, this );\n\t};\n\n// Give the init function the jQuery prototype for later instantiation\ninit.prototype = jQuery.fn;\n\n// Initialize central reference\nrootjQuery = jQuery( document );\n\n\nvar rparentsprev = /^(?:parents|prev(?:Until|All))/,\n\n\t// Methods guaranteed to produce a unique set when starting from a unique set\n\tguaranteedUnique = {\n\t\tchildren: true,\n\t\tcontents: true,\n\t\tnext: true,\n\t\tprev: true\n\t};\n\njQuery.fn.extend( {\n\thas: function( target ) {\n\t\tvar targets = jQuery( target, this ),\n\t\t\tl = targets.length;\n\n\t\treturn this.filter( function() {\n\t\t\tvar i = 0;\n\t\t\tfor ( ; i < l; i++ ) {\n\t\t\t\tif ( jQuery.contains( this, targets[ i ] ) ) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\t},\n\n\tclosest: function( selectors, context ) {\n\t\tvar cur,\n\t\t\ti = 0,\n\t\t\tl = this.length,\n\t\t\tmatched = [],\n\t\t\tpos = rneedsContext.test( selectors ) || typeof selectors !== \"string\" ?\n\t\t\t\tjQuery( selectors, context || this.context ) :\n\t\t\t\t0;\n\n\t\tfor ( ; i < l; i++ ) {\n\t\t\tfor ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) {\n\n\t\t\t\t// Always skip document fragments\n\t\t\t\tif ( cur.nodeType < 11 && ( pos ?\n\t\t\t\t\tpos.index( cur ) > -1 :\n\n\t\t\t\t\t// Don't pass non-elements to Sizzle\n\t\t\t\t\tcur.nodeType === 1 &&\n\t\t\t\t\t\tjQuery.find.matchesSelector( cur, selectors ) ) ) {\n\n\t\t\t\t\tmatched.push( cur );\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched );\n\t},\n\n\t// Determine the position of an element within the set\n\tindex: function( elem ) {\n\n\t\t// No argument, return index in parent\n\t\tif ( !elem ) {\n\t\t\treturn ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1;\n\t\t}\n\n\t\t// Index in selector\n\t\tif ( typeof elem === \"string\" ) {\n\t\t\treturn indexOf.call( jQuery( elem ), this[ 0 ] );\n\t\t}\n\n\t\t// Locate the position of the desired element\n\t\treturn indexOf.call( this,\n\n\t\t\t// If it receives a jQuery object, the first element is used\n\t\t\telem.jquery ? elem[ 0 ] : elem\n\t\t);\n\t},\n\n\tadd: function( selector, context ) {\n\t\treturn this.pushStack(\n\t\t\tjQuery.uniqueSort(\n\t\t\t\tjQuery.merge( this.get(), jQuery( selector, context ) )\n\t\t\t)\n\t\t);\n\t},\n\n\taddBack: function( selector ) {\n\t\treturn this.add( selector == null ?\n\t\t\tthis.prevObject : this.prevObject.filter( selector )\n\t\t);\n\t}\n} );\n\nfunction sibling( cur, dir ) {\n\twhile ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {}\n\treturn cur;\n}\n\njQuery.each( {\n\tparent: function( elem ) {\n\t\tvar parent = elem.parentNode;\n\t\treturn parent && parent.nodeType !== 11 ? parent : null;\n\t},\n\tparents: function( elem ) {\n\t\treturn dir( elem, \"parentNode\" );\n\t},\n\tparentsUntil: function( elem, i, until ) {\n\t\treturn dir( elem, \"parentNode\", until );\n\t},\n\tnext: function( elem ) {\n\t\treturn sibling( elem, \"nextSibling\" );\n\t},\n\tprev: function( elem ) {\n\t\treturn sibling( elem, \"previousSibling\" );\n\t},\n\tnextAll: function( elem ) {\n\t\treturn dir( elem, \"nextSibling\" );\n\t},\n\tprevAll: function( elem ) {\n\t\treturn dir( elem, \"previousSibling\" );\n\t},\n\tnextUntil: function( elem, i, until ) {\n\t\treturn dir( elem, \"nextSibling\", until );\n\t},\n\tprevUntil: function( elem, i, until ) {\n\t\treturn dir( elem, \"previousSibling\", until );\n\t},\n\tsiblings: function( elem ) {\n\t\treturn siblings( ( elem.parentNode || {} ).firstChild, elem );\n\t},\n\tchildren: function( elem ) {\n\t\treturn siblings( elem.firstChild );\n\t},\n\tcontents: function( elem ) {\n\t\treturn elem.contentDocument || jQuery.merge( [], elem.childNodes );\n\t}\n}, function( name, fn ) {\n\tjQuery.fn[ name ] = function( until, selector ) {\n\t\tvar matched = jQuery.map( this, fn, until );\n\n\t\tif ( name.slice( -5 ) !== \"Until\" ) {\n\t\t\tselector = until;\n\t\t}\n\n\t\tif ( selector && typeof selector === \"string\" ) {\n\t\t\tmatched = jQuery.filter( selector, matched );\n\t\t}\n\n\t\tif ( this.length > 1 ) {\n\n\t\t\t// Remove duplicates\n\t\t\tif ( !guaranteedUnique[ name ] ) {\n\t\t\t\tjQuery.uniqueSort( matched );\n\t\t\t}\n\n\t\t\t// Reverse order for parents* and prev-derivatives\n\t\t\tif ( rparentsprev.test( name ) ) {\n\t\t\t\tmatched.reverse();\n\t\t\t}\n\t\t}\n\n\t\treturn this.pushStack( matched );\n\t};\n} );\nvar rnotwhite = ( /\\S+/g );\n\n\n\n// Convert String-formatted options into Object-formatted ones\nfunction createOptions( options ) {\n\tvar object = {};\n\tjQuery.each( options.match( rnotwhite ) || [], function( _, flag ) {\n\t\tobject[ flag ] = true;\n\t} );\n\treturn object;\n}\n\n/*\n * Create a callback list using the following parameters:\n *\n *\toptions: an optional list of space-separated options that will change how\n *\t\t\tthe callback list behaves or a more traditional option object\n *\n * By default a callback list will act like an event callback list and can be\n * \"fired\" multiple times.\n *\n * Possible options:\n *\n *\tonce:\t\t\twill ensure the callback list can only be fired once (like a Deferred)\n *\n *\tmemory:\t\t\twill keep track of previous values and will call any callback added\n *\t\t\t\t\tafter the list has been fired right away with the latest \"memorized\"\n *\t\t\t\t\tvalues (like a Deferred)\n *\n *\tunique:\t\t\twill ensure a callback can only be added once (no duplicate in the list)\n *\n *\tstopOnFalse:\tinterrupt callings when a callback returns false\n *\n */\njQuery.Callbacks = function( options ) {\n\n\t// Convert options from String-formatted to Object-formatted if needed\n\t// (we check in cache first)\n\toptions = typeof options === \"string\" ?\n\t\tcreateOptions( options ) :\n\t\tjQuery.extend( {}, options );\n\n\tvar // Flag to know if list is currently firing\n\t\tfiring,\n\n\t\t// Last fire value for non-forgettable lists\n\t\tmemory,\n\n\t\t// Flag to know if list was already fired\n\t\tfired,\n\n\t\t// Flag to prevent firing\n\t\tlocked,\n\n\t\t// Actual callback list\n\t\tlist = [],\n\n\t\t// Queue of execution data for repeatable lists\n\t\tqueue = [],\n\n\t\t// Index of currently firing callback (modified by add/remove as needed)\n\t\tfiringIndex = -1,\n\n\t\t// Fire callbacks\n\t\tfire = function() {\n\n\t\t\t// Enforce single-firing\n\t\t\tlocked = options.once;\n\n\t\t\t// Execute callbacks for all pending executions,\n\t\t\t// respecting firingIndex overrides and runtime changes\n\t\t\tfired = firing = true;\n\t\t\tfor ( ; queue.length; firingIndex = -1 ) {\n\t\t\t\tmemory = queue.shift();\n\t\t\t\twhile ( ++firingIndex < list.length ) {\n\n\t\t\t\t\t// Run callback and check for early termination\n\t\t\t\t\tif ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false &&\n\t\t\t\t\t\toptions.stopOnFalse ) {\n\n\t\t\t\t\t\t// Jump to end and forget the data so .add doesn't re-fire\n\t\t\t\t\t\tfiringIndex = list.length;\n\t\t\t\t\t\tmemory = false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Forget the data if we're done with it\n\t\t\tif ( !options.memory ) {\n\t\t\t\tmemory = false;\n\t\t\t}\n\n\t\t\tfiring = false;\n\n\t\t\t// Clean up if we're done firing for good\n\t\t\tif ( locked ) {\n\n\t\t\t\t// Keep an empty list if we have data for future add calls\n\t\t\t\tif ( memory ) {\n\t\t\t\t\tlist = [];\n\n\t\t\t\t// Otherwise, this object is spent\n\t\t\t\t} else {\n\t\t\t\t\tlist = \"\";\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\t// Actual Callbacks object\n\t\tself = {\n\n\t\t\t// Add a callback or a collection of callbacks to the list\n\t\t\tadd: function() {\n\t\t\t\tif ( list ) {\n\n\t\t\t\t\t// If we have memory from a past run, we should fire after adding\n\t\t\t\t\tif ( memory && !firing ) {\n\t\t\t\t\t\tfiringIndex = list.length - 1;\n\t\t\t\t\t\tqueue.push( memory );\n\t\t\t\t\t}\n\n\t\t\t\t\t( function add( args ) {\n\t\t\t\t\t\tjQuery.each( args, function( _, arg ) {\n\t\t\t\t\t\t\tif ( jQuery.isFunction( arg ) ) {\n\t\t\t\t\t\t\t\tif ( !options.unique || !self.has( arg ) ) {\n\t\t\t\t\t\t\t\t\tlist.push( arg );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else if ( arg && arg.length && jQuery.type( arg ) !== \"string\" ) {\n\n\t\t\t\t\t\t\t\t// Inspect recursively\n\t\t\t\t\t\t\t\tadd( arg );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} );\n\t\t\t\t\t} )( arguments );\n\n\t\t\t\t\tif ( memory && !firing ) {\n\t\t\t\t\t\tfire();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t},\n\n\t\t\t// Remove a callback from the list\n\t\t\tremove: function() {\n\t\t\t\tjQuery.each( arguments, function( _, arg ) {\n\t\t\t\t\tvar index;\n\t\t\t\t\twhile ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) {\n\t\t\t\t\t\tlist.splice( index, 1 );\n\n\t\t\t\t\t\t// Handle firing indexes\n\t\t\t\t\t\tif ( index <= firingIndex ) {\n\t\t\t\t\t\t\tfiringIndex--;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t\treturn this;\n\t\t\t},\n\n\t\t\t// Check if a given callback is in the list.\n\t\t\t// If no argument is given, return whether or not list has callbacks attached.\n\t\t\thas: function( fn ) {\n\t\t\t\treturn fn ?\n\t\t\t\t\tjQuery.inArray( fn, list ) > -1 :\n\t\t\t\t\tlist.length > 0;\n\t\t\t},\n\n\t\t\t// Remove all callbacks from the list\n\t\t\tempty: function() {\n\t\t\t\tif ( list ) {\n\t\t\t\t\tlist = [];\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t},\n\n\t\t\t// Disable .fire and .add\n\t\t\t// Abort any current/pending executions\n\t\t\t// Clear all callbacks and values\n\t\t\tdisable: function() {\n\t\t\t\tlocked = queue = [];\n\t\t\t\tlist = memory = \"\";\n\t\t\t\treturn this;\n\t\t\t},\n\t\t\tdisabled: function() {\n\t\t\t\treturn !list;\n\t\t\t},\n\n\t\t\t// Disable .fire\n\t\t\t// Also disable .add unless we have memory (since it would have no effect)\n\t\t\t// Abort any pending executions\n\t\t\tlock: function() {\n\t\t\t\tlocked = queue = [];\n\t\t\t\tif ( !memory ) {\n\t\t\t\t\tlist = memory = \"\";\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t},\n\t\t\tlocked: function() {\n\t\t\t\treturn !!locked;\n\t\t\t},\n\n\t\t\t// Call all callbacks with the given context and arguments\n\t\t\tfireWith: function( context, args ) {\n\t\t\t\tif ( !locked ) {\n\t\t\t\t\targs = args || [];\n\t\t\t\t\targs = [ context, args.slice ? args.slice() : args ];\n\t\t\t\t\tqueue.push( args );\n\t\t\t\t\tif ( !firing ) {\n\t\t\t\t\t\tfire();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t},\n\n\t\t\t// Call all the callbacks with the given arguments\n\t\t\tfire: function() {\n\t\t\t\tself.fireWith( this, arguments );\n\t\t\t\treturn this;\n\t\t\t},\n\n\t\t\t// To know if the callbacks have already been called at least once\n\t\t\tfired: function() {\n\t\t\t\treturn !!fired;\n\t\t\t}\n\t\t};\n\n\treturn self;\n};\n\n\njQuery.extend( {\n\n\tDeferred: function( func ) {\n\t\tvar tuples = [\n\n\t\t\t\t// action, add listener, listener list, final state\n\t\t\t\t[ \"resolve\", \"done\", jQuery.Callbacks( \"once memory\" ), \"resolved\" ],\n\t\t\t\t[ \"reject\", \"fail\", jQuery.Callbacks( \"once memory\" ), \"rejected\" ],\n\t\t\t\t[ \"notify\", \"progress\", jQuery.Callbacks( \"memory\" ) ]\n\t\t\t],\n\t\t\tstate = \"pending\",\n\t\t\tpromise = {\n\t\t\t\tstate: function() {\n\t\t\t\t\treturn state;\n\t\t\t\t},\n\t\t\t\talways: function() {\n\t\t\t\t\tdeferred.done( arguments ).fail( arguments );\n\t\t\t\t\treturn this;\n\t\t\t\t},\n\t\t\t\tthen: function( /* fnDone, fnFail, fnProgress */ ) {\n\t\t\t\t\tvar fns = arguments;\n\t\t\t\t\treturn jQuery.Deferred( function( newDefer ) {\n\t\t\t\t\t\tjQuery.each( tuples, function( i, tuple ) {\n\t\t\t\t\t\t\tvar fn = jQuery.isFunction( fns[ i ] ) && fns[ i ];\n\n\t\t\t\t\t\t\t// deferred[ done | fail | progress ] for forwarding actions to newDefer\n\t\t\t\t\t\t\tdeferred[ tuple[ 1 ] ]( function() {\n\t\t\t\t\t\t\t\tvar returned = fn && fn.apply( this, arguments );\n\t\t\t\t\t\t\t\tif ( returned && jQuery.isFunction( returned.promise ) ) {\n\t\t\t\t\t\t\t\t\treturned.promise()\n\t\t\t\t\t\t\t\t\t\t.progress( newDefer.notify )\n\t\t\t\t\t\t\t\t\t\t.done( newDefer.resolve )\n\t\t\t\t\t\t\t\t\t\t.fail( newDefer.reject );\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tnewDefer[ tuple[ 0 ] + \"With\" ](\n\t\t\t\t\t\t\t\t\t\tthis === promise ? newDefer.promise() : this,\n\t\t\t\t\t\t\t\t\t\tfn ? [ returned ] : arguments\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} );\n\t\t\t\t\t\tfns = null;\n\t\t\t\t\t} ).promise();\n\t\t\t\t},\n\n\t\t\t\t// Get a promise for this deferred\n\t\t\t\t// If obj is provided, the promise aspect is added to the object\n\t\t\t\tpromise: function( obj ) {\n\t\t\t\t\treturn obj != null ? jQuery.extend( obj, promise ) : promise;\n\t\t\t\t}\n\t\t\t},\n\t\t\tdeferred = {};\n\n\t\t// Keep pipe for back-compat\n\t\tpromise.pipe = promise.then;\n\n\t\t// Add list-specific methods\n\t\tjQuery.each( tuples, function( i, tuple ) {\n\t\t\tvar list = tuple[ 2 ],\n\t\t\t\tstateString = tuple[ 3 ];\n\n\t\t\t// promise[ done | fail | progress ] = list.add\n\t\t\tpromise[ tuple[ 1 ] ] = list.add;\n\n\t\t\t// Handle state\n\t\t\tif ( stateString ) {\n\t\t\t\tlist.add( function() {\n\n\t\t\t\t\t// state = [ resolved | rejected ]\n\t\t\t\t\tstate = stateString;\n\n\t\t\t\t// [ reject_list | resolve_list ].disable; progress_list.lock\n\t\t\t\t}, tuples[ i ^ 1 ][ 2 ].disable, tuples[ 2 ][ 2 ].lock );\n\t\t\t}\n\n\t\t\t// deferred[ resolve | reject | notify ]\n\t\t\tdeferred[ tuple[ 0 ] ] = function() {\n\t\t\t\tdeferred[ tuple[ 0 ] + \"With\" ]( this === deferred ? promise : this, arguments );\n\t\t\t\treturn this;\n\t\t\t};\n\t\t\tdeferred[ tuple[ 0 ] + \"With\" ] = list.fireWith;\n\t\t} );\n\n\t\t// Make the deferred a promise\n\t\tpromise.promise( deferred );\n\n\t\t// Call given func if any\n\t\tif ( func ) {\n\t\t\tfunc.call( deferred, deferred );\n\t\t}\n\n\t\t// All done!\n\t\treturn deferred;\n\t},\n\n\t// Deferred helper\n\twhen: function( subordinate /* , ..., subordinateN */ ) {\n\t\tvar i = 0,\n\t\t\tresolveValues = slice.call( arguments ),\n\t\t\tlength = resolveValues.length,\n\n\t\t\t// the count of uncompleted subordinates\n\t\t\tremaining = length !== 1 ||\n\t\t\t\t( subordinate && jQuery.isFunction( subordinate.promise ) ) ? length : 0,\n\n\t\t\t// the master Deferred.\n\t\t\t// If resolveValues consist of only a single Deferred, just use that.\n\t\t\tdeferred = remaining === 1 ? subordinate : jQuery.Deferred(),\n\n\t\t\t// Update function for both resolve and progress values\n\t\t\tupdateFunc = function( i, contexts, values ) {\n\t\t\t\treturn function( value ) {\n\t\t\t\t\tcontexts[ i ] = this;\n\t\t\t\t\tvalues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value;\n\t\t\t\t\tif ( values === progressValues ) {\n\t\t\t\t\t\tdeferred.notifyWith( contexts, values );\n\t\t\t\t\t} else if ( !( --remaining ) ) {\n\t\t\t\t\t\tdeferred.resolveWith( contexts, values );\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t},\n\n\t\t\tprogressValues, progressContexts, resolveContexts;\n\n\t\t// Add listeners to Deferred subordinates; treat others as resolved\n\t\tif ( length > 1 ) {\n\t\t\tprogressValues = new Array( length );\n\t\t\tprogressContexts = new Array( length );\n\t\t\tresolveContexts = new Array( length );\n\t\t\tfor ( ; i < length; i++ ) {\n\t\t\t\tif ( resolveValues[ i ] && jQuery.isFunction( resolveValues[ i ].promise ) ) {\n\t\t\t\t\tresolveValues[ i ].promise()\n\t\t\t\t\t\t.progress( updateFunc( i, progressContexts, progressValues ) )\n\t\t\t\t\t\t.done( updateFunc( i, resolveContexts, resolveValues ) )\n\t\t\t\t\t\t.fail( deferred.reject );\n\t\t\t\t} else {\n\t\t\t\t\t--remaining;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// If we're not waiting on anything, resolve the master\n\t\tif ( !remaining ) {\n\t\t\tdeferred.resolveWith( resolveContexts, resolveValues );\n\t\t}\n\n\t\treturn deferred.promise();\n\t}\n} );\n\n\n// The deferred used on DOM ready\nvar readyList;\n\njQuery.fn.ready = function( fn ) {\n\n\t// Add the callback\n\tjQuery.ready.promise().done( fn );\n\n\treturn this;\n};\n\njQuery.extend( {\n\n\t// Is the DOM ready to be used? Set to true once it occurs.\n\tisReady: false,\n\n\t// A counter to track how many items to wait for before\n\t// the ready event fires. See #6781\n\treadyWait: 1,\n\n\t// Hold (or release) the ready event\n\tholdReady: function( hold ) {\n\t\tif ( hold ) {\n\t\t\tjQuery.readyWait++;\n\t\t} else {\n\t\t\tjQuery.ready( true );\n\t\t}\n\t},\n\n\t// Handle when the DOM is ready\n\tready: function( wait ) {\n\n\t\t// Abort if there are pending holds or we're already ready\n\t\tif ( wait === true ? --jQuery.readyWait : jQuery.isReady ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Remember that the DOM is ready\n\t\tjQuery.isReady = true;\n\n\t\t// If a normal DOM Ready event fired, decrement, and wait if need be\n\t\tif ( wait !== true && --jQuery.readyWait > 0 ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// If there are functions bound, to execute\n\t\treadyList.resolveWith( document, [ jQuery ] );\n\n\t\t// Trigger any bound ready events\n\t\tif ( jQuery.fn.triggerHandler ) {\n\t\t\tjQuery( document ).triggerHandler( \"ready\" );\n\t\t\tjQuery( document ).off( \"ready\" );\n\t\t}\n\t}\n} );\n\n/**\n * The ready event handler and self cleanup method\n */\nfunction completed() {\n\tdocument.removeEventListener( \"DOMContentLoaded\", completed );\n\twindow.removeEventListener( \"load\", completed );\n\tjQuery.ready();\n}\n\njQuery.ready.promise = function( obj ) {\n\tif ( !readyList ) {\n\n\t\treadyList = jQuery.Deferred();\n\n\t\t// Catch cases where $(document).ready() is called\n\t\t// after the browser event has already occurred.\n\t\t// Support: IE9-10 only\n\t\t// Older IE sometimes signals \"interactive\" too soon\n\t\tif ( document.readyState === \"complete\" ||\n\t\t\t( document.readyState !== \"loading\" && !document.documentElement.doScroll ) ) {\n\n\t\t\t// Handle it asynchronously to allow scripts the opportunity to delay ready\n\t\t\twindow.setTimeout( jQuery.ready );\n\n\t\t} else {\n\n\t\t\t// Use the handy event callback\n\t\t\tdocument.addEventListener( \"DOMContentLoaded\", completed );\n\n\t\t\t// A fallback to window.onload, that will always work\n\t\t\twindow.addEventListener( \"load\", completed );\n\t\t}\n\t}\n\treturn readyList.promise( obj );\n};\n\n// Kick off the DOM ready check even if the user does not\njQuery.ready.promise();\n\n\n\n\n// Multifunctional method to get and set values of a collection\n// The value/s can optionally be executed if it's a function\nvar access = function( elems, fn, key, value, chainable, emptyGet, raw ) {\n\tvar i = 0,\n\t\tlen = elems.length,\n\t\tbulk = key == null;\n\n\t// Sets many values\n\tif ( jQuery.type( key ) === \"object\" ) {\n\t\tchainable = true;\n\t\tfor ( i in key ) {\n\t\t\taccess( elems, fn, i, key[ i ], true, emptyGet, raw );\n\t\t}\n\n\t// Sets one value\n\t} else if ( value !== undefined ) {\n\t\tchainable = true;\n\n\t\tif ( !jQuery.isFunction( value ) ) {\n\t\t\traw = true;\n\t\t}\n\n\t\tif ( bulk ) {\n\n\t\t\t// Bulk operations run against the entire set\n\t\t\tif ( raw ) {\n\t\t\t\tfn.call( elems, value );\n\t\t\t\tfn = null;\n\n\t\t\t// ...except when executing function values\n\t\t\t} else {\n\t\t\t\tbulk = fn;\n\t\t\t\tfn = function( elem, key, value ) {\n\t\t\t\t\treturn bulk.call( jQuery( elem ), value );\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\tif ( fn ) {\n\t\t\tfor ( ; i < len; i++ ) {\n\t\t\t\tfn(\n\t\t\t\t\telems[ i ], key, raw ?\n\t\t\t\t\tvalue :\n\t\t\t\t\tvalue.call( elems[ i ], i, fn( elems[ i ], key ) )\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn chainable ?\n\t\telems :\n\n\t\t// Gets\n\t\tbulk ?\n\t\t\tfn.call( elems ) :\n\t\t\tlen ? fn( elems[ 0 ], key ) : emptyGet;\n};\nvar acceptData = function( owner ) {\n\n\t// Accepts only:\n\t// - Node\n\t// - Node.ELEMENT_NODE\n\t// - Node.DOCUMENT_NODE\n\t// - Object\n\t// - Any\n\t/* jshint -W018 */\n\treturn owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType );\n};\n\n\n\n\nfunction Data() {\n\tthis.expando = jQuery.expando + Data.uid++;\n}\n\nData.uid = 1;\n\nData.prototype = {\n\n\tregister: function( owner, initial ) {\n\t\tvar value = initial || {};\n\n\t\t// If it is a node unlikely to be stringify-ed or looped over\n\t\t// use plain assignment\n\t\tif ( owner.nodeType ) {\n\t\t\towner[ this.expando ] = value;\n\n\t\t// Otherwise secure it in a non-enumerable, non-writable property\n\t\t// configurability must be true to allow the property to be\n\t\t// deleted with the delete operator\n\t\t} else {\n\t\t\tObject.defineProperty( owner, this.expando, {\n\t\t\t\tvalue: value,\n\t\t\t\twritable: true,\n\t\t\t\tconfigurable: true\n\t\t\t} );\n\t\t}\n\t\treturn owner[ this.expando ];\n\t},\n\tcache: function( owner ) {\n\n\t\t// We can accept data for non-element nodes in modern browsers,\n\t\t// but we should not, see #8335.\n\t\t// Always return an empty object.\n\t\tif ( !acceptData( owner ) ) {\n\t\t\treturn {};\n\t\t}\n\n\t\t// Check if the owner object already has a cache\n\t\tvar value = owner[ this.expando ];\n\n\t\t// If not, create one\n\t\tif ( !value ) {\n\t\t\tvalue = {};\n\n\t\t\t// We can accept data for non-element nodes in modern browsers,\n\t\t\t// but we should not, see #8335.\n\t\t\t// Always return an empty object.\n\t\t\tif ( acceptData( owner ) ) {\n\n\t\t\t\t// If it is a node unlikely to be stringify-ed or looped over\n\t\t\t\t// use plain assignment\n\t\t\t\tif ( owner.nodeType ) {\n\t\t\t\t\towner[ this.expando ] = value;\n\n\t\t\t\t// Otherwise secure it in a non-enumerable property\n\t\t\t\t// configurable must be true to allow the property to be\n\t\t\t\t// deleted when data is removed\n\t\t\t\t} else {\n\t\t\t\t\tObject.defineProperty( owner, this.expando, {\n\t\t\t\t\t\tvalue: value,\n\t\t\t\t\t\tconfigurable: true\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn value;\n\t},\n\tset: function( owner, data, value ) {\n\t\tvar prop,\n\t\t\tcache = this.cache( owner );\n\n\t\t// Handle: [ owner, key, value ] args\n\t\tif ( typeof data === \"string\" ) {\n\t\t\tcache[ data ] = value;\n\n\t\t// Handle: [ owner, { properties } ] args\n\t\t} else {\n\n\t\t\t// Copy the properties one-by-one to the cache object\n\t\t\tfor ( prop in data ) {\n\t\t\t\tcache[ prop ] = data[ prop ];\n\t\t\t}\n\t\t}\n\t\treturn cache;\n\t},\n\tget: function( owner, key ) {\n\t\treturn key === undefined ?\n\t\t\tthis.cache( owner ) :\n\t\t\towner[ this.expando ] && owner[ this.expando ][ key ];\n\t},\n\taccess: function( owner, key, value ) {\n\t\tvar stored;\n\n\t\t// In cases where either:\n\t\t//\n\t\t// 1. No key was specified\n\t\t// 2. A string key was specified, but no value provided\n\t\t//\n\t\t// Take the \"read\" path and allow the get method to determine\n\t\t// which value to return, respectively either:\n\t\t//\n\t\t// 1. The entire cache object\n\t\t// 2. The data stored at the key\n\t\t//\n\t\tif ( key === undefined ||\n\t\t\t\t( ( key && typeof key === \"string\" ) && value === undefined ) ) {\n\n\t\t\tstored = this.get( owner, key );\n\n\t\t\treturn stored !== undefined ?\n\t\t\t\tstored : this.get( owner, jQuery.camelCase( key ) );\n\t\t}\n\n\t\t// When the key is not a string, or both a key and value\n\t\t// are specified, set or extend (existing objects) with either:\n\t\t//\n\t\t// 1. An object of properties\n\t\t// 2. A key and value\n\t\t//\n\t\tthis.set( owner, key, value );\n\n\t\t// Since the \"set\" path can have two possible entry points\n\t\t// return the expected data based on which path was taken[*]\n\t\treturn value !== undefined ? value : key;\n\t},\n\tremove: function( owner, key ) {\n\t\tvar i, name, camel,\n\t\t\tcache = owner[ this.expando ];\n\n\t\tif ( cache === undefined ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( key === undefined ) {\n\t\t\tthis.register( owner );\n\n\t\t} else {\n\n\t\t\t// Support array or space separated string of keys\n\t\t\tif ( jQuery.isArray( key ) ) {\n\n\t\t\t\t// If \"name\" is an array of keys...\n\t\t\t\t// When data is initially created, via (\"key\", \"val\") signature,\n\t\t\t\t// keys will be converted to camelCase.\n\t\t\t\t// Since there is no way to tell _how_ a key was added, remove\n\t\t\t\t// both plain key and camelCase key. #12786\n\t\t\t\t// This will only penalize the array argument path.\n\t\t\t\tname = key.concat( key.map( jQuery.camelCase ) );\n\t\t\t} else {\n\t\t\t\tcamel = jQuery.camelCase( key );\n\n\t\t\t\t// Try the string as a key before any manipulation\n\t\t\t\tif ( key in cache ) {\n\t\t\t\t\tname = [ key, camel ];\n\t\t\t\t} else {\n\n\t\t\t\t\t// If a key with the spaces exists, use it.\n\t\t\t\t\t// Otherwise, create an array by matching non-whitespace\n\t\t\t\t\tname = camel;\n\t\t\t\t\tname = name in cache ?\n\t\t\t\t\t\t[ name ] : ( name.match( rnotwhite ) || [] );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\ti = name.length;\n\n\t\t\twhile ( i-- ) {\n\t\t\t\tdelete cache[ name[ i ] ];\n\t\t\t}\n\t\t}\n\n\t\t// Remove the expando if there's no more data\n\t\tif ( key === undefined || jQuery.isEmptyObject( cache ) ) {\n\n\t\t\t// Support: Chrome <= 35-45+\n\t\t\t// Webkit & Blink performance suffers when deleting properties\n\t\t\t// from DOM nodes, so set to undefined instead\n\t\t\t// https://code.google.com/p/chromium/issues/detail?id=378607\n\t\t\tif ( owner.nodeType ) {\n\t\t\t\towner[ this.expando ] = undefined;\n\t\t\t} else {\n\t\t\t\tdelete owner[ this.expando ];\n\t\t\t}\n\t\t}\n\t},\n\thasData: function( owner ) {\n\t\tvar cache = owner[ this.expando ];\n\t\treturn cache !== undefined && !jQuery.isEmptyObject( cache );\n\t}\n};\nvar dataPriv = new Data();\n\nvar dataUser = new Data();\n\n\n\n//\tImplementation Summary\n//\n//\t1. Enforce API surface and semantic compatibility with 1.9.x branch\n//\t2. Improve the module's maintainability by reducing the storage\n//\t\tpaths to a single mechanism.\n//\t3. Use the same single mechanism to support \"private\" and \"user\" data.\n//\t4. _Never_ expose \"private\" data to user code (TODO: Drop _data, _removeData)\n//\t5. Avoid exposing implementation details on user objects (eg. expando properties)\n//\t6. Provide a clear path for implementation upgrade to WeakMap in 2014\n\nvar rbrace = /^(?:\\{[\\w\\W]*\\}|\\[[\\w\\W]*\\])$/,\n\trmultiDash = /[A-Z]/g;\n\nfunction dataAttr( elem, key, data ) {\n\tvar name;\n\n\t// If nothing was found internally, try to fetch any\n\t// data from the HTML5 data-* attribute\n\tif ( data === undefined && elem.nodeType === 1 ) {\n\t\tname = \"data-\" + key.replace( rmultiDash, \"-$&\" ).toLowerCase();\n\t\tdata = elem.getAttribute( name );\n\n\t\tif ( typeof data === \"string\" ) {\n\t\t\ttry {\n\t\t\t\tdata = data === \"true\" ? true :\n\t\t\t\t\tdata === \"false\" ? false :\n\t\t\t\t\tdata === \"null\" ? null :\n\n\t\t\t\t\t// Only convert to a number if it doesn't change the string\n\t\t\t\t\t+data + \"\" === data ? +data :\n\t\t\t\t\trbrace.test( data ) ? jQuery.parseJSON( data ) :\n\t\t\t\t\tdata;\n\t\t\t} catch ( e ) {}\n\n\t\t\t// Make sure we set the data so it isn't changed later\n\t\t\tdataUser.set( elem, key, data );\n\t\t} else {\n\t\t\tdata = undefined;\n\t\t}\n\t}\n\treturn data;\n}\n\njQuery.extend( {\n\thasData: function( elem ) {\n\t\treturn dataUser.hasData( elem ) || dataPriv.hasData( elem );\n\t},\n\n\tdata: function( elem, name, data ) {\n\t\treturn dataUser.access( elem, name, data );\n\t},\n\n\tremoveData: function( elem, name ) {\n\t\tdataUser.remove( elem, name );\n\t},\n\n\t// TODO: Now that all calls to _data and _removeData have been replaced\n\t// with direct calls to dataPriv methods, these can be deprecated.\n\t_data: function( elem, name, data ) {\n\t\treturn dataPriv.access( elem, name, data );\n\t},\n\n\t_removeData: function( elem, name ) {\n\t\tdataPriv.remove( elem, name );\n\t}\n} );\n\njQuery.fn.extend( {\n\tdata: function( key, value ) {\n\t\tvar i, name, data,\n\t\t\telem = this[ 0 ],\n\t\t\tattrs = elem && elem.attributes;\n\n\t\t// Gets all values\n\t\tif ( key === undefined ) {\n\t\t\tif ( this.length ) {\n\t\t\t\tdata = dataUser.get( elem );\n\n\t\t\t\tif ( elem.nodeType === 1 && !dataPriv.get( elem, \"hasDataAttrs\" ) ) {\n\t\t\t\t\ti = attrs.length;\n\t\t\t\t\twhile ( i-- ) {\n\n\t\t\t\t\t\t// Support: IE11+\n\t\t\t\t\t\t// The attrs elements can be null (#14894)\n\t\t\t\t\t\tif ( attrs[ i ] ) {\n\t\t\t\t\t\t\tname = attrs[ i ].name;\n\t\t\t\t\t\t\tif ( name.indexOf( \"data-\" ) === 0 ) {\n\t\t\t\t\t\t\t\tname = jQuery.camelCase( name.slice( 5 ) );\n\t\t\t\t\t\t\t\tdataAttr( elem, name, data[ name ] );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tdataPriv.set( elem, \"hasDataAttrs\", true );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn data;\n\t\t}\n\n\t\t// Sets multiple values\n\t\tif ( typeof key === \"object\" ) {\n\t\t\treturn this.each( function() {\n\t\t\t\tdataUser.set( this, key );\n\t\t\t} );\n\t\t}\n\n\t\treturn access( this, function( value ) {\n\t\t\tvar data, camelKey;\n\n\t\t\t// The calling jQuery object (element matches) is not empty\n\t\t\t// (and therefore has an element appears at this[ 0 ]) and the\n\t\t\t// `value` parameter was not undefined. An empty jQuery object\n\t\t\t// will result in `undefined` for elem = this[ 0 ] which will\n\t\t\t// throw an exception if an attempt to read a data cache is made.\n\t\t\tif ( elem && value === undefined ) {\n\n\t\t\t\t// Attempt to get data from the cache\n\t\t\t\t// with the key as-is\n\t\t\t\tdata = dataUser.get( elem, key ) ||\n\n\t\t\t\t\t// Try to find dashed key if it exists (gh-2779)\n\t\t\t\t\t// This is for 2.2.x only\n\t\t\t\t\tdataUser.get( elem, key.replace( rmultiDash, \"-$&\" ).toLowerCase() );\n\n\t\t\t\tif ( data !== undefined ) {\n\t\t\t\t\treturn data;\n\t\t\t\t}\n\n\t\t\t\tcamelKey = jQuery.camelCase( key );\n\n\t\t\t\t// Attempt to get data from the cache\n\t\t\t\t// with the key camelized\n\t\t\t\tdata = dataUser.get( elem, camelKey );\n\t\t\t\tif ( data !== undefined ) {\n\t\t\t\t\treturn data;\n\t\t\t\t}\n\n\t\t\t\t// Attempt to \"discover\" the data in\n\t\t\t\t// HTML5 custom data-* attrs\n\t\t\t\tdata = dataAttr( elem, camelKey, undefined );\n\t\t\t\tif ( data !== undefined ) {\n\t\t\t\t\treturn data;\n\t\t\t\t}\n\n\t\t\t\t// We tried really hard, but the data doesn't exist.\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Set the data...\n\t\t\tcamelKey = jQuery.camelCase( key );\n\t\t\tthis.each( function() {\n\n\t\t\t\t// First, attempt to store a copy or reference of any\n\t\t\t\t// data that might've been store with a camelCased key.\n\t\t\t\tvar data = dataUser.get( this, camelKey );\n\n\t\t\t\t// For HTML5 data-* attribute interop, we have to\n\t\t\t\t// store property names with dashes in a camelCase form.\n\t\t\t\t// This might not apply to all properties...*\n\t\t\t\tdataUser.set( this, camelKey, value );\n\n\t\t\t\t// *... In the case of properties that might _actually_\n\t\t\t\t// have dashes, we need to also store a copy of that\n\t\t\t\t// unchanged property.\n\t\t\t\tif ( key.indexOf( \"-\" ) > -1 && data !== undefined ) {\n\t\t\t\t\tdataUser.set( this, key, value );\n\t\t\t\t}\n\t\t\t} );\n\t\t}, null, value, arguments.length > 1, null, true );\n\t},\n\n\tremoveData: function( key ) {\n\t\treturn this.each( function() {\n\t\t\tdataUser.remove( this, key );\n\t\t} );\n\t}\n} );\n\n\njQuery.extend( {\n\tqueue: function( elem, type, data ) {\n\t\tvar queue;\n\n\t\tif ( elem ) {\n\t\t\ttype = ( type || \"fx\" ) + \"queue\";\n\t\t\tqueue = dataPriv.get( elem, type );\n\n\t\t\t// Speed up dequeue by getting out quickly if this is just a lookup\n\t\t\tif ( data ) {\n\t\t\t\tif ( !queue || jQuery.isArray( data ) ) {\n\t\t\t\t\tqueue = dataPriv.access( elem, type, jQuery.makeArray( data ) );\n\t\t\t\t} else {\n\t\t\t\t\tqueue.push( data );\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn queue || [];\n\t\t}\n\t},\n\n\tdequeue: function( elem, type ) {\n\t\ttype = type || \"fx\";\n\n\t\tvar queue = jQuery.queue( elem, type ),\n\t\t\tstartLength = queue.length,\n\t\t\tfn = queue.shift(),\n\t\t\thooks = jQuery._queueHooks( elem, type ),\n\t\t\tnext = function() {\n\t\t\t\tjQuery.dequeue( elem, type );\n\t\t\t};\n\n\t\t// If the fx queue is dequeued, always remove the progress sentinel\n\t\tif ( fn === \"inprogress\" ) {\n\t\t\tfn = queue.shift();\n\t\t\tstartLength--;\n\t\t}\n\n\t\tif ( fn ) {\n\n\t\t\t// Add a progress sentinel to prevent the fx queue from being\n\t\t\t// automatically dequeued\n\t\t\tif ( type === \"fx\" ) {\n\t\t\t\tqueue.unshift( \"inprogress\" );\n\t\t\t}\n\n\t\t\t// Clear up the last queue stop function\n\t\t\tdelete hooks.stop;\n\t\t\tfn.call( elem, next, hooks );\n\t\t}\n\n\t\tif ( !startLength && hooks ) {\n\t\t\thooks.empty.fire();\n\t\t}\n\t},\n\n\t// Not public - generate a queueHooks object, or return the current one\n\t_queueHooks: function( elem, type ) {\n\t\tvar key = type + \"queueHooks\";\n\t\treturn dataPriv.get( elem, key ) || dataPriv.access( elem, key, {\n\t\t\tempty: jQuery.Callbacks( \"once memory\" ).add( function() {\n\t\t\t\tdataPriv.remove( elem, [ type + \"queue\", key ] );\n\t\t\t} )\n\t\t} );\n\t}\n} );\n\njQuery.fn.extend( {\n\tqueue: function( type, data ) {\n\t\tvar setter = 2;\n\n\t\tif ( typeof type !== \"string\" ) {\n\t\t\tdata = type;\n\t\t\ttype = \"fx\";\n\t\t\tsetter--;\n\t\t}\n\n\t\tif ( arguments.length < setter ) {\n\t\t\treturn jQuery.queue( this[ 0 ], type );\n\t\t}\n\n\t\treturn data === undefined ?\n\t\t\tthis :\n\t\t\tthis.each( function() {\n\t\t\t\tvar queue = jQuery.queue( this, type, data );\n\n\t\t\t\t// Ensure a hooks for this queue\n\t\t\t\tjQuery._queueHooks( this, type );\n\n\t\t\t\tif ( type === \"fx\" && queue[ 0 ] !== \"inprogress\" ) {\n\t\t\t\t\tjQuery.dequeue( this, type );\n\t\t\t\t}\n\t\t\t} );\n\t},\n\tdequeue: function( type ) {\n\t\treturn this.each( function() {\n\t\t\tjQuery.dequeue( this, type );\n\t\t} );\n\t},\n\tclearQueue: function( type ) {\n\t\treturn this.queue( type || \"fx\", [] );\n\t},\n\n\t// Get a promise resolved when queues of a certain type\n\t// are emptied (fx is the type by default)\n\tpromise: function( type, obj ) {\n\t\tvar tmp,\n\t\t\tcount = 1,\n\t\t\tdefer = jQuery.Deferred(),\n\t\t\telements = this,\n\t\t\ti = this.length,\n\t\t\tresolve = function() {\n\t\t\t\tif ( !( --count ) ) {\n\t\t\t\t\tdefer.resolveWith( elements, [ elements ] );\n\t\t\t\t}\n\t\t\t};\n\n\t\tif ( typeof type !== \"string\" ) {\n\t\t\tobj = type;\n\t\t\ttype = undefined;\n\t\t}\n\t\ttype = type || \"fx\";\n\n\t\twhile ( i-- ) {\n\t\t\ttmp = dataPriv.get( elements[ i ], type + \"queueHooks\" );\n\t\t\tif ( tmp && tmp.empty ) {\n\t\t\t\tcount++;\n\t\t\t\ttmp.empty.add( resolve );\n\t\t\t}\n\t\t}\n\t\tresolve();\n\t\treturn defer.promise( obj );\n\t}\n} );\nvar pnum = ( /[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/ ).source;\n\nvar rcssNum = new RegExp( \"^(?:([+-])=|)(\" + pnum + \")([a-z%]*)$\", \"i\" );\n\n\nvar cssExpand = [ \"Top\", \"Right\", \"Bottom\", \"Left\" ];\n\nvar isHidden = function( elem, el ) {\n\n\t\t// isHidden might be called from jQuery#filter function;\n\t\t// in that case, element will be second argument\n\t\telem = el || elem;\n\t\treturn jQuery.css( elem, \"display\" ) === \"none\" ||\n\t\t\t!jQuery.contains( elem.ownerDocument, elem );\n\t};\n\n\n\nfunction adjustCSS( elem, prop, valueParts, tween ) {\n\tvar adjusted,\n\t\tscale = 1,\n\t\tmaxIterations = 20,\n\t\tcurrentValue = tween ?\n\t\t\tfunction() { return tween.cur(); } :\n\t\t\tfunction() { return jQuery.css( elem, prop, \"\" ); },\n\t\tinitial = currentValue(),\n\t\tunit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? \"\" : \"px\" ),\n\n\t\t// Starting value computation is required for potential unit mismatches\n\t\tinitialInUnit = ( jQuery.cssNumber[ prop ] || unit !== \"px\" && +initial ) &&\n\t\t\trcssNum.exec( jQuery.css( elem, prop ) );\n\n\tif ( initialInUnit && initialInUnit[ 3 ] !== unit ) {\n\n\t\t// Trust units reported by jQuery.css\n\t\tunit = unit || initialInUnit[ 3 ];\n\n\t\t// Make sure we update the tween properties later on\n\t\tvalueParts = valueParts || [];\n\n\t\t// Iteratively approximate from a nonzero starting point\n\t\tinitialInUnit = +initial || 1;\n\n\t\tdo {\n\n\t\t\t// If previous iteration zeroed out, double until we get *something*.\n\t\t\t// Use string for doubling so we don't accidentally see scale as unchanged below\n\t\t\tscale = scale || \".5\";\n\n\t\t\t// Adjust and apply\n\t\t\tinitialInUnit = initialInUnit / scale;\n\t\t\tjQuery.style( elem, prop, initialInUnit + unit );\n\n\t\t// Update scale, tolerating zero or NaN from tween.cur()\n\t\t// Break the loop if scale is unchanged or perfect, or if we've just had enough.\n\t\t} while (\n\t\t\tscale !== ( scale = currentValue() / initial ) && scale !== 1 && --maxIterations\n\t\t);\n\t}\n\n\tif ( valueParts ) {\n\t\tinitialInUnit = +initialInUnit || +initial || 0;\n\n\t\t// Apply relative offset (+=/-=) if specified\n\t\tadjusted = valueParts[ 1 ] ?\n\t\t\tinitialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] :\n\t\t\t+valueParts[ 2 ];\n\t\tif ( tween ) {\n\t\t\ttween.unit = unit;\n\t\t\ttween.start = initialInUnit;\n\t\t\ttween.end = adjusted;\n\t\t}\n\t}\n\treturn adjusted;\n}\nvar rcheckableType = ( /^(?:checkbox|radio)$/i );\n\nvar rtagName = ( /<([\\w:-]+)/ );\n\nvar rscriptType = ( /^$|\\/(?:java|ecma)script/i );\n\n\n\n// We have to close these tags to support XHTML (#13200)\nvar wrapMap = {\n\n\t// Support: IE9\n\toption: [ 1, \"\" ],\n\n\t// XHTML parsers do not magically insert elements in the\n\t// same way that tag soup parsers do. So we cannot shorten\n\t// this by omitting or other required elements.\n\tthead: [ 1, \"\", \"
            \" ],\n\tcol: [ 2, \"\", \"
            \" ],\n\ttr: [ 2, \"\", \"
            \" ],\n\ttd: [ 3, \"\", \"
            \" ],\n\n\t_default: [ 0, \"\", \"\" ]\n};\n\n// Support: IE9\nwrapMap.optgroup = wrapMap.option;\n\nwrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;\nwrapMap.th = wrapMap.td;\n\n\nfunction getAll( context, tag ) {\n\n\t// Support: IE9-11+\n\t// Use typeof to avoid zero-argument method invocation on host objects (#15151)\n\tvar ret = typeof context.getElementsByTagName !== \"undefined\" ?\n\t\t\tcontext.getElementsByTagName( tag || \"*\" ) :\n\t\t\ttypeof context.querySelectorAll !== \"undefined\" ?\n\t\t\t\tcontext.querySelectorAll( tag || \"*\" ) :\n\t\t\t[];\n\n\treturn tag === undefined || tag && jQuery.nodeName( context, tag ) ?\n\t\tjQuery.merge( [ context ], ret ) :\n\t\tret;\n}\n\n\n// Mark scripts as having already been evaluated\nfunction setGlobalEval( elems, refElements ) {\n\tvar i = 0,\n\t\tl = elems.length;\n\n\tfor ( ; i < l; i++ ) {\n\t\tdataPriv.set(\n\t\t\telems[ i ],\n\t\t\t\"globalEval\",\n\t\t\t!refElements || dataPriv.get( refElements[ i ], \"globalEval\" )\n\t\t);\n\t}\n}\n\n\nvar rhtml = /<|&#?\\w+;/;\n\nfunction buildFragment( elems, context, scripts, selection, ignored ) {\n\tvar elem, tmp, tag, wrap, contains, j,\n\t\tfragment = context.createDocumentFragment(),\n\t\tnodes = [],\n\t\ti = 0,\n\t\tl = elems.length;\n\n\tfor ( ; i < l; i++ ) {\n\t\telem = elems[ i ];\n\n\t\tif ( elem || elem === 0 ) {\n\n\t\t\t// Add nodes directly\n\t\t\tif ( jQuery.type( elem ) === \"object\" ) {\n\n\t\t\t\t// Support: Android<4.1, PhantomJS<2\n\t\t\t\t// push.apply(_, arraylike) throws on ancient WebKit\n\t\t\t\tjQuery.merge( nodes, elem.nodeType ? [ elem ] : elem );\n\n\t\t\t// Convert non-html into a text node\n\t\t\t} else if ( !rhtml.test( elem ) ) {\n\t\t\t\tnodes.push( context.createTextNode( elem ) );\n\n\t\t\t// Convert html into DOM nodes\n\t\t\t} else {\n\t\t\t\ttmp = tmp || fragment.appendChild( context.createElement( \"div\" ) );\n\n\t\t\t\t// Deserialize a standard representation\n\t\t\t\ttag = ( rtagName.exec( elem ) || [ \"\", \"\" ] )[ 1 ].toLowerCase();\n\t\t\t\twrap = wrapMap[ tag ] || wrapMap._default;\n\t\t\t\ttmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ];\n\n\t\t\t\t// Descend through wrappers to the right content\n\t\t\t\tj = wrap[ 0 ];\n\t\t\t\twhile ( j-- ) {\n\t\t\t\t\ttmp = tmp.lastChild;\n\t\t\t\t}\n\n\t\t\t\t// Support: Android<4.1, PhantomJS<2\n\t\t\t\t// push.apply(_, arraylike) throws on ancient WebKit\n\t\t\t\tjQuery.merge( nodes, tmp.childNodes );\n\n\t\t\t\t// Remember the top-level container\n\t\t\t\ttmp = fragment.firstChild;\n\n\t\t\t\t// Ensure the created nodes are orphaned (#12392)\n\t\t\t\ttmp.textContent = \"\";\n\t\t\t}\n\t\t}\n\t}\n\n\t// Remove wrapper from fragment\n\tfragment.textContent = \"\";\n\n\ti = 0;\n\twhile ( ( elem = nodes[ i++ ] ) ) {\n\n\t\t// Skip elements already in the context collection (trac-4087)\n\t\tif ( selection && jQuery.inArray( elem, selection ) > -1 ) {\n\t\t\tif ( ignored ) {\n\t\t\t\tignored.push( elem );\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\n\t\tcontains = jQuery.contains( elem.ownerDocument, elem );\n\n\t\t// Append to fragment\n\t\ttmp = getAll( fragment.appendChild( elem ), \"script\" );\n\n\t\t// Preserve script evaluation history\n\t\tif ( contains ) {\n\t\t\tsetGlobalEval( tmp );\n\t\t}\n\n\t\t// Capture executables\n\t\tif ( scripts ) {\n\t\t\tj = 0;\n\t\t\twhile ( ( elem = tmp[ j++ ] ) ) {\n\t\t\t\tif ( rscriptType.test( elem.type || \"\" ) ) {\n\t\t\t\t\tscripts.push( elem );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn fragment;\n}\n\n\n( function() {\n\tvar fragment = document.createDocumentFragment(),\n\t\tdiv = fragment.appendChild( document.createElement( \"div\" ) ),\n\t\tinput = document.createElement( \"input\" );\n\n\t// Support: Android 4.0-4.3, Safari<=5.1\n\t// Check state lost if the name is set (#11217)\n\t// Support: Windows Web Apps (WWA)\n\t// `name` and `type` must use .setAttribute for WWA (#14901)\n\tinput.setAttribute( \"type\", \"radio\" );\n\tinput.setAttribute( \"checked\", \"checked\" );\n\tinput.setAttribute( \"name\", \"t\" );\n\n\tdiv.appendChild( input );\n\n\t// Support: Safari<=5.1, Android<4.2\n\t// Older WebKit doesn't clone checked state correctly in fragments\n\tsupport.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked;\n\n\t// Support: IE<=11+\n\t// Make sure textarea (and checkbox) defaultValue is properly cloned\n\tdiv.innerHTML = \"\";\n\tsupport.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue;\n} )();\n\n\nvar\n\trkeyEvent = /^key/,\n\trmouseEvent = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,\n\trtypenamespace = /^([^.]*)(?:\\.(.+)|)/;\n\nfunction returnTrue() {\n\treturn true;\n}\n\nfunction returnFalse() {\n\treturn false;\n}\n\n// Support: IE9\n// See #13393 for more info\nfunction safeActiveElement() {\n\ttry {\n\t\treturn document.activeElement;\n\t} catch ( err ) { }\n}\n\nfunction on( elem, types, selector, data, fn, one ) {\n\tvar origFn, type;\n\n\t// Types can be a map of types/handlers\n\tif ( typeof types === \"object\" ) {\n\n\t\t// ( types-Object, selector, data )\n\t\tif ( typeof selector !== \"string\" ) {\n\n\t\t\t// ( types-Object, data )\n\t\t\tdata = data || selector;\n\t\t\tselector = undefined;\n\t\t}\n\t\tfor ( type in types ) {\n\t\t\ton( elem, type, selector, data, types[ type ], one );\n\t\t}\n\t\treturn elem;\n\t}\n\n\tif ( data == null && fn == null ) {\n\n\t\t// ( types, fn )\n\t\tfn = selector;\n\t\tdata = selector = undefined;\n\t} else if ( fn == null ) {\n\t\tif ( typeof selector === \"string\" ) {\n\n\t\t\t// ( types, selector, fn )\n\t\t\tfn = data;\n\t\t\tdata = undefined;\n\t\t} else {\n\n\t\t\t// ( types, data, fn )\n\t\t\tfn = data;\n\t\t\tdata = selector;\n\t\t\tselector = undefined;\n\t\t}\n\t}\n\tif ( fn === false ) {\n\t\tfn = returnFalse;\n\t} else if ( !fn ) {\n\t\treturn elem;\n\t}\n\n\tif ( one === 1 ) {\n\t\torigFn = fn;\n\t\tfn = function( event ) {\n\n\t\t\t// Can use an empty set, since event contains the info\n\t\t\tjQuery().off( event );\n\t\t\treturn origFn.apply( this, arguments );\n\t\t};\n\n\t\t// Use same guid so caller can remove using origFn\n\t\tfn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ );\n\t}\n\treturn elem.each( function() {\n\t\tjQuery.event.add( this, types, fn, data, selector );\n\t} );\n}\n\n/*\n * Helper functions for managing events -- not part of the public interface.\n * Props to Dean Edwards' addEvent library for many of the ideas.\n */\njQuery.event = {\n\n\tglobal: {},\n\n\tadd: function( elem, types, handler, data, selector ) {\n\n\t\tvar handleObjIn, eventHandle, tmp,\n\t\t\tevents, t, handleObj,\n\t\t\tspecial, handlers, type, namespaces, origType,\n\t\t\telemData = dataPriv.get( elem );\n\n\t\t// Don't attach events to noData or text/comment nodes (but allow plain objects)\n\t\tif ( !elemData ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Caller can pass in an object of custom data in lieu of the handler\n\t\tif ( handler.handler ) {\n\t\t\thandleObjIn = handler;\n\t\t\thandler = handleObjIn.handler;\n\t\t\tselector = handleObjIn.selector;\n\t\t}\n\n\t\t// Make sure that the handler has a unique ID, used to find/remove it later\n\t\tif ( !handler.guid ) {\n\t\t\thandler.guid = jQuery.guid++;\n\t\t}\n\n\t\t// Init the element's event structure and main handler, if this is the first\n\t\tif ( !( events = elemData.events ) ) {\n\t\t\tevents = elemData.events = {};\n\t\t}\n\t\tif ( !( eventHandle = elemData.handle ) ) {\n\t\t\teventHandle = elemData.handle = function( e ) {\n\n\t\t\t\t// Discard the second event of a jQuery.event.trigger() and\n\t\t\t\t// when an event is called after a page has unloaded\n\t\t\t\treturn typeof jQuery !== \"undefined\" && jQuery.event.triggered !== e.type ?\n\t\t\t\t\tjQuery.event.dispatch.apply( elem, arguments ) : undefined;\n\t\t\t};\n\t\t}\n\n\t\t// Handle multiple events separated by a space\n\t\ttypes = ( types || \"\" ).match( rnotwhite ) || [ \"\" ];\n\t\tt = types.length;\n\t\twhile ( t-- ) {\n\t\t\ttmp = rtypenamespace.exec( types[ t ] ) || [];\n\t\t\ttype = origType = tmp[ 1 ];\n\t\t\tnamespaces = ( tmp[ 2 ] || \"\" ).split( \".\" ).sort();\n\n\t\t\t// There *must* be a type, no attaching namespace-only handlers\n\t\t\tif ( !type ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// If event changes its type, use the special event handlers for the changed type\n\t\t\tspecial = jQuery.event.special[ type ] || {};\n\n\t\t\t// If selector defined, determine special event api type, otherwise given type\n\t\t\ttype = ( selector ? special.delegateType : special.bindType ) || type;\n\n\t\t\t// Update special based on newly reset type\n\t\t\tspecial = jQuery.event.special[ type ] || {};\n\n\t\t\t// handleObj is passed to all event handlers\n\t\t\thandleObj = jQuery.extend( {\n\t\t\t\ttype: type,\n\t\t\t\torigType: origType,\n\t\t\t\tdata: data,\n\t\t\t\thandler: handler,\n\t\t\t\tguid: handler.guid,\n\t\t\t\tselector: selector,\n\t\t\t\tneedsContext: selector && jQuery.expr.match.needsContext.test( selector ),\n\t\t\t\tnamespace: namespaces.join( \".\" )\n\t\t\t}, handleObjIn );\n\n\t\t\t// Init the event handler queue if we're the first\n\t\t\tif ( !( handlers = events[ type ] ) ) {\n\t\t\t\thandlers = events[ type ] = [];\n\t\t\t\thandlers.delegateCount = 0;\n\n\t\t\t\t// Only use addEventListener if the special events handler returns false\n\t\t\t\tif ( !special.setup ||\n\t\t\t\t\tspecial.setup.call( elem, data, namespaces, eventHandle ) === false ) {\n\n\t\t\t\t\tif ( elem.addEventListener ) {\n\t\t\t\t\t\telem.addEventListener( type, eventHandle );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ( special.add ) {\n\t\t\t\tspecial.add.call( elem, handleObj );\n\n\t\t\t\tif ( !handleObj.handler.guid ) {\n\t\t\t\t\thandleObj.handler.guid = handler.guid;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Add to the element's handler list, delegates in front\n\t\t\tif ( selector ) {\n\t\t\t\thandlers.splice( handlers.delegateCount++, 0, handleObj );\n\t\t\t} else {\n\t\t\t\thandlers.push( handleObj );\n\t\t\t}\n\n\t\t\t// Keep track of which events have ever been used, for event optimization\n\t\t\tjQuery.event.global[ type ] = true;\n\t\t}\n\n\t},\n\n\t// Detach an event or set of events from an element\n\tremove: function( elem, types, handler, selector, mappedTypes ) {\n\n\t\tvar j, origCount, tmp,\n\t\t\tevents, t, handleObj,\n\t\t\tspecial, handlers, type, namespaces, origType,\n\t\t\telemData = dataPriv.hasData( elem ) && dataPriv.get( elem );\n\n\t\tif ( !elemData || !( events = elemData.events ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Once for each type.namespace in types; type may be omitted\n\t\ttypes = ( types || \"\" ).match( rnotwhite ) || [ \"\" ];\n\t\tt = types.length;\n\t\twhile ( t-- ) {\n\t\t\ttmp = rtypenamespace.exec( types[ t ] ) || [];\n\t\t\ttype = origType = tmp[ 1 ];\n\t\t\tnamespaces = ( tmp[ 2 ] || \"\" ).split( \".\" ).sort();\n\n\t\t\t// Unbind all events (on this namespace, if provided) for the element\n\t\t\tif ( !type ) {\n\t\t\t\tfor ( type in events ) {\n\t\t\t\t\tjQuery.event.remove( elem, type + types[ t ], handler, selector, true );\n\t\t\t\t}\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tspecial = jQuery.event.special[ type ] || {};\n\t\t\ttype = ( selector ? special.delegateType : special.bindType ) || type;\n\t\t\thandlers = events[ type ] || [];\n\t\t\ttmp = tmp[ 2 ] &&\n\t\t\t\tnew RegExp( \"(^|\\\\.)\" + namespaces.join( \"\\\\.(?:.*\\\\.|)\" ) + \"(\\\\.|$)\" );\n\n\t\t\t// Remove matching events\n\t\t\torigCount = j = handlers.length;\n\t\t\twhile ( j-- ) {\n\t\t\t\thandleObj = handlers[ j ];\n\n\t\t\t\tif ( ( mappedTypes || origType === handleObj.origType ) &&\n\t\t\t\t\t( !handler || handler.guid === handleObj.guid ) &&\n\t\t\t\t\t( !tmp || tmp.test( handleObj.namespace ) ) &&\n\t\t\t\t\t( !selector || selector === handleObj.selector ||\n\t\t\t\t\t\tselector === \"**\" && handleObj.selector ) ) {\n\t\t\t\t\thandlers.splice( j, 1 );\n\n\t\t\t\t\tif ( handleObj.selector ) {\n\t\t\t\t\t\thandlers.delegateCount--;\n\t\t\t\t\t}\n\t\t\t\t\tif ( special.remove ) {\n\t\t\t\t\t\tspecial.remove.call( elem, handleObj );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Remove generic event handler if we removed something and no more handlers exist\n\t\t\t// (avoids potential for endless recursion during removal of special event handlers)\n\t\t\tif ( origCount && !handlers.length ) {\n\t\t\t\tif ( !special.teardown ||\n\t\t\t\t\tspecial.teardown.call( elem, namespaces, elemData.handle ) === false ) {\n\n\t\t\t\t\tjQuery.removeEvent( elem, type, elemData.handle );\n\t\t\t\t}\n\n\t\t\t\tdelete events[ type ];\n\t\t\t}\n\t\t}\n\n\t\t// Remove data and the expando if it's no longer used\n\t\tif ( jQuery.isEmptyObject( events ) ) {\n\t\t\tdataPriv.remove( elem, \"handle events\" );\n\t\t}\n\t},\n\n\tdispatch: function( event ) {\n\n\t\t// Make a writable jQuery.Event from the native event object\n\t\tevent = jQuery.event.fix( event );\n\n\t\tvar i, j, ret, matched, handleObj,\n\t\t\thandlerQueue = [],\n\t\t\targs = slice.call( arguments ),\n\t\t\thandlers = ( dataPriv.get( this, \"events\" ) || {} )[ event.type ] || [],\n\t\t\tspecial = jQuery.event.special[ event.type ] || {};\n\n\t\t// Use the fix-ed jQuery.Event rather than the (read-only) native event\n\t\targs[ 0 ] = event;\n\t\tevent.delegateTarget = this;\n\n\t\t// Call the preDispatch hook for the mapped type, and let it bail if desired\n\t\tif ( special.preDispatch && special.preDispatch.call( this, event ) === false ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Determine handlers\n\t\thandlerQueue = jQuery.event.handlers.call( this, event, handlers );\n\n\t\t// Run delegates first; they may want to stop propagation beneath us\n\t\ti = 0;\n\t\twhile ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) {\n\t\t\tevent.currentTarget = matched.elem;\n\n\t\t\tj = 0;\n\t\t\twhile ( ( handleObj = matched.handlers[ j++ ] ) &&\n\t\t\t\t!event.isImmediatePropagationStopped() ) {\n\n\t\t\t\t// Triggered event must either 1) have no namespace, or 2) have namespace(s)\n\t\t\t\t// a subset or equal to those in the bound event (both can have no namespace).\n\t\t\t\tif ( !event.rnamespace || event.rnamespace.test( handleObj.namespace ) ) {\n\n\t\t\t\t\tevent.handleObj = handleObj;\n\t\t\t\t\tevent.data = handleObj.data;\n\n\t\t\t\t\tret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle ||\n\t\t\t\t\t\thandleObj.handler ).apply( matched.elem, args );\n\n\t\t\t\t\tif ( ret !== undefined ) {\n\t\t\t\t\t\tif ( ( event.result = ret ) === false ) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Call the postDispatch hook for the mapped type\n\t\tif ( special.postDispatch ) {\n\t\t\tspecial.postDispatch.call( this, event );\n\t\t}\n\n\t\treturn event.result;\n\t},\n\n\thandlers: function( event, handlers ) {\n\t\tvar i, matches, sel, handleObj,\n\t\t\thandlerQueue = [],\n\t\t\tdelegateCount = handlers.delegateCount,\n\t\t\tcur = event.target;\n\n\t\t// Support (at least): Chrome, IE9\n\t\t// Find delegate handlers\n\t\t// Black-hole SVG instance trees (#13180)\n\t\t//\n\t\t// Support: Firefox<=42+\n\t\t// Avoid non-left-click in FF but don't block IE radio events (#3861, gh-2343)\n\t\tif ( delegateCount && cur.nodeType &&\n\t\t\t( event.type !== \"click\" || isNaN( event.button ) || event.button < 1 ) ) {\n\n\t\t\tfor ( ; cur !== this; cur = cur.parentNode || this ) {\n\n\t\t\t\t// Don't check non-elements (#13208)\n\t\t\t\t// Don't process clicks on disabled elements (#6911, #8165, #11382, #11764)\n\t\t\t\tif ( cur.nodeType === 1 && ( cur.disabled !== true || event.type !== \"click\" ) ) {\n\t\t\t\t\tmatches = [];\n\t\t\t\t\tfor ( i = 0; i < delegateCount; i++ ) {\n\t\t\t\t\t\thandleObj = handlers[ i ];\n\n\t\t\t\t\t\t// Don't conflict with Object.prototype properties (#13203)\n\t\t\t\t\t\tsel = handleObj.selector + \" \";\n\n\t\t\t\t\t\tif ( matches[ sel ] === undefined ) {\n\t\t\t\t\t\t\tmatches[ sel ] = handleObj.needsContext ?\n\t\t\t\t\t\t\t\tjQuery( sel, this ).index( cur ) > -1 :\n\t\t\t\t\t\t\t\tjQuery.find( sel, this, null, [ cur ] ).length;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ( matches[ sel ] ) {\n\t\t\t\t\t\t\tmatches.push( handleObj );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif ( matches.length ) {\n\t\t\t\t\t\thandlerQueue.push( { elem: cur, handlers: matches } );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Add the remaining (directly-bound) handlers\n\t\tif ( delegateCount < handlers.length ) {\n\t\t\thandlerQueue.push( { elem: this, handlers: handlers.slice( delegateCount ) } );\n\t\t}\n\n\t\treturn handlerQueue;\n\t},\n\n\t// Includes some event props shared by KeyEvent and MouseEvent\n\tprops: ( \"altKey bubbles cancelable ctrlKey currentTarget detail eventPhase \" +\n\t\t\"metaKey relatedTarget shiftKey target timeStamp view which\" ).split( \" \" ),\n\n\tfixHooks: {},\n\n\tkeyHooks: {\n\t\tprops: \"char charCode key keyCode\".split( \" \" ),\n\t\tfilter: function( event, original ) {\n\n\t\t\t// Add which for key events\n\t\t\tif ( event.which == null ) {\n\t\t\t\tevent.which = original.charCode != null ? original.charCode : original.keyCode;\n\t\t\t}\n\n\t\t\treturn event;\n\t\t}\n\t},\n\n\tmouseHooks: {\n\t\tprops: ( \"button buttons clientX clientY offsetX offsetY pageX pageY \" +\n\t\t\t\"screenX screenY toElement\" ).split( \" \" ),\n\t\tfilter: function( event, original ) {\n\t\t\tvar eventDoc, doc, body,\n\t\t\t\tbutton = original.button;\n\n\t\t\t// Calculate pageX/Y if missing and clientX/Y available\n\t\t\tif ( event.pageX == null && original.clientX != null ) {\n\t\t\t\teventDoc = event.target.ownerDocument || document;\n\t\t\t\tdoc = eventDoc.documentElement;\n\t\t\t\tbody = eventDoc.body;\n\n\t\t\t\tevent.pageX = original.clientX +\n\t\t\t\t\t( doc && doc.scrollLeft || body && body.scrollLeft || 0 ) -\n\t\t\t\t\t( doc && doc.clientLeft || body && body.clientLeft || 0 );\n\t\t\t\tevent.pageY = original.clientY +\n\t\t\t\t\t( doc && doc.scrollTop || body && body.scrollTop || 0 ) -\n\t\t\t\t\t( doc && doc.clientTop || body && body.clientTop || 0 );\n\t\t\t}\n\n\t\t\t// Add which for click: 1 === left; 2 === middle; 3 === right\n\t\t\t// Note: button is not normalized, so don't use it\n\t\t\tif ( !event.which && button !== undefined ) {\n\t\t\t\tevent.which = ( button & 1 ? 1 : ( button & 2 ? 3 : ( button & 4 ? 2 : 0 ) ) );\n\t\t\t}\n\n\t\t\treturn event;\n\t\t}\n\t},\n\n\tfix: function( event ) {\n\t\tif ( event[ jQuery.expando ] ) {\n\t\t\treturn event;\n\t\t}\n\n\t\t// Create a writable copy of the event object and normalize some properties\n\t\tvar i, prop, copy,\n\t\t\ttype = event.type,\n\t\t\toriginalEvent = event,\n\t\t\tfixHook = this.fixHooks[ type ];\n\n\t\tif ( !fixHook ) {\n\t\t\tthis.fixHooks[ type ] = fixHook =\n\t\t\t\trmouseEvent.test( type ) ? this.mouseHooks :\n\t\t\t\trkeyEvent.test( type ) ? this.keyHooks :\n\t\t\t\t{};\n\t\t}\n\t\tcopy = fixHook.props ? this.props.concat( fixHook.props ) : this.props;\n\n\t\tevent = new jQuery.Event( originalEvent );\n\n\t\ti = copy.length;\n\t\twhile ( i-- ) {\n\t\t\tprop = copy[ i ];\n\t\t\tevent[ prop ] = originalEvent[ prop ];\n\t\t}\n\n\t\t// Support: Cordova 2.5 (WebKit) (#13255)\n\t\t// All events should have a target; Cordova deviceready doesn't\n\t\tif ( !event.target ) {\n\t\t\tevent.target = document;\n\t\t}\n\n\t\t// Support: Safari 6.0+, Chrome<28\n\t\t// Target should not be a text node (#504, #13143)\n\t\tif ( event.target.nodeType === 3 ) {\n\t\t\tevent.target = event.target.parentNode;\n\t\t}\n\n\t\treturn fixHook.filter ? fixHook.filter( event, originalEvent ) : event;\n\t},\n\n\tspecial: {\n\t\tload: {\n\n\t\t\t// Prevent triggered image.load events from bubbling to window.load\n\t\t\tnoBubble: true\n\t\t},\n\t\tfocus: {\n\n\t\t\t// Fire native event if possible so blur/focus sequence is correct\n\t\t\ttrigger: function() {\n\t\t\t\tif ( this !== safeActiveElement() && this.focus ) {\n\t\t\t\t\tthis.focus();\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t},\n\t\t\tdelegateType: \"focusin\"\n\t\t},\n\t\tblur: {\n\t\t\ttrigger: function() {\n\t\t\t\tif ( this === safeActiveElement() && this.blur ) {\n\t\t\t\t\tthis.blur();\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t},\n\t\t\tdelegateType: \"focusout\"\n\t\t},\n\t\tclick: {\n\n\t\t\t// For checkbox, fire native event so checked state will be right\n\t\t\ttrigger: function() {\n\t\t\t\tif ( this.type === \"checkbox\" && this.click && jQuery.nodeName( this, \"input\" ) ) {\n\t\t\t\t\tthis.click();\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t},\n\n\t\t\t// For cross-browser consistency, don't fire native .click() on links\n\t\t\t_default: function( event ) {\n\t\t\t\treturn jQuery.nodeName( event.target, \"a\" );\n\t\t\t}\n\t\t},\n\n\t\tbeforeunload: {\n\t\t\tpostDispatch: function( event ) {\n\n\t\t\t\t// Support: Firefox 20+\n\t\t\t\t// Firefox doesn't alert if the returnValue field is not set.\n\t\t\t\tif ( event.result !== undefined && event.originalEvent ) {\n\t\t\t\t\tevent.originalEvent.returnValue = event.result;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\njQuery.removeEvent = function( elem, type, handle ) {\n\n\t// This \"if\" is needed for plain objects\n\tif ( elem.removeEventListener ) {\n\t\telem.removeEventListener( type, handle );\n\t}\n};\n\njQuery.Event = function( src, props ) {\n\n\t// Allow instantiation without the 'new' keyword\n\tif ( !( this instanceof jQuery.Event ) ) {\n\t\treturn new jQuery.Event( src, props );\n\t}\n\n\t// Event object\n\tif ( src && src.type ) {\n\t\tthis.originalEvent = src;\n\t\tthis.type = src.type;\n\n\t\t// Events bubbling up the document may have been marked as prevented\n\t\t// by a handler lower down the tree; reflect the correct value.\n\t\tthis.isDefaultPrevented = src.defaultPrevented ||\n\t\t\t\tsrc.defaultPrevented === undefined &&\n\n\t\t\t\t// Support: Android<4.0\n\t\t\t\tsrc.returnValue === false ?\n\t\t\treturnTrue :\n\t\t\treturnFalse;\n\n\t// Event type\n\t} else {\n\t\tthis.type = src;\n\t}\n\n\t// Put explicitly provided properties onto the event object\n\tif ( props ) {\n\t\tjQuery.extend( this, props );\n\t}\n\n\t// Create a timestamp if incoming event doesn't have one\n\tthis.timeStamp = src && src.timeStamp || jQuery.now();\n\n\t// Mark it as fixed\n\tthis[ jQuery.expando ] = true;\n};\n\n// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding\n// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html\njQuery.Event.prototype = {\n\tconstructor: jQuery.Event,\n\tisDefaultPrevented: returnFalse,\n\tisPropagationStopped: returnFalse,\n\tisImmediatePropagationStopped: returnFalse,\n\tisSimulated: false,\n\n\tpreventDefault: function() {\n\t\tvar e = this.originalEvent;\n\n\t\tthis.isDefaultPrevented = returnTrue;\n\n\t\tif ( e && !this.isSimulated ) {\n\t\t\te.preventDefault();\n\t\t}\n\t},\n\tstopPropagation: function() {\n\t\tvar e = this.originalEvent;\n\n\t\tthis.isPropagationStopped = returnTrue;\n\n\t\tif ( e && !this.isSimulated ) {\n\t\t\te.stopPropagation();\n\t\t}\n\t},\n\tstopImmediatePropagation: function() {\n\t\tvar e = this.originalEvent;\n\n\t\tthis.isImmediatePropagationStopped = returnTrue;\n\n\t\tif ( e && !this.isSimulated ) {\n\t\t\te.stopImmediatePropagation();\n\t\t}\n\n\t\tthis.stopPropagation();\n\t}\n};\n\n// Create mouseenter/leave events using mouseover/out and event-time checks\n// so that event delegation works in jQuery.\n// Do the same for pointerenter/pointerleave and pointerover/pointerout\n//\n// Support: Safari 7 only\n// Safari sends mouseenter too often; see:\n// https://code.google.com/p/chromium/issues/detail?id=470258\n// for the description of the bug (it existed in older Chrome versions as well).\njQuery.each( {\n\tmouseenter: \"mouseover\",\n\tmouseleave: \"mouseout\",\n\tpointerenter: \"pointerover\",\n\tpointerleave: \"pointerout\"\n}, function( orig, fix ) {\n\tjQuery.event.special[ orig ] = {\n\t\tdelegateType: fix,\n\t\tbindType: fix,\n\n\t\thandle: function( event ) {\n\t\t\tvar ret,\n\t\t\t\ttarget = this,\n\t\t\t\trelated = event.relatedTarget,\n\t\t\t\thandleObj = event.handleObj;\n\n\t\t\t// For mouseenter/leave call the handler if related is outside the target.\n\t\t\t// NB: No relatedTarget if the mouse left/entered the browser window\n\t\t\tif ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) {\n\t\t\t\tevent.type = handleObj.origType;\n\t\t\t\tret = handleObj.handler.apply( this, arguments );\n\t\t\t\tevent.type = fix;\n\t\t\t}\n\t\t\treturn ret;\n\t\t}\n\t};\n} );\n\njQuery.fn.extend( {\n\ton: function( types, selector, data, fn ) {\n\t\treturn on( this, types, selector, data, fn );\n\t},\n\tone: function( types, selector, data, fn ) {\n\t\treturn on( this, types, selector, data, fn, 1 );\n\t},\n\toff: function( types, selector, fn ) {\n\t\tvar handleObj, type;\n\t\tif ( types && types.preventDefault && types.handleObj ) {\n\n\t\t\t// ( event ) dispatched jQuery.Event\n\t\t\thandleObj = types.handleObj;\n\t\t\tjQuery( types.delegateTarget ).off(\n\t\t\t\thandleObj.namespace ?\n\t\t\t\t\thandleObj.origType + \".\" + handleObj.namespace :\n\t\t\t\t\thandleObj.origType,\n\t\t\t\thandleObj.selector,\n\t\t\t\thandleObj.handler\n\t\t\t);\n\t\t\treturn this;\n\t\t}\n\t\tif ( typeof types === \"object\" ) {\n\n\t\t\t// ( types-object [, selector] )\n\t\t\tfor ( type in types ) {\n\t\t\t\tthis.off( type, selector, types[ type ] );\n\t\t\t}\n\t\t\treturn this;\n\t\t}\n\t\tif ( selector === false || typeof selector === \"function\" ) {\n\n\t\t\t// ( types [, fn] )\n\t\t\tfn = selector;\n\t\t\tselector = undefined;\n\t\t}\n\t\tif ( fn === false ) {\n\t\t\tfn = returnFalse;\n\t\t}\n\t\treturn this.each( function() {\n\t\t\tjQuery.event.remove( this, types, fn, selector );\n\t\t} );\n\t}\n} );\n\n\nvar\n\trxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\\w:-]+)[^>]*)\\/>/gi,\n\n\t// Support: IE 10-11, Edge 10240+\n\t// In IE/Edge using regex groups here causes severe slowdowns.\n\t// See https://connect.microsoft.com/IE/feedback/details/1736512/\n\trnoInnerhtml = /\\s*$/g;\n\n// Manipulating tables requires a tbody\nfunction manipulationTarget( elem, content ) {\n\treturn jQuery.nodeName( elem, \"table\" ) &&\n\t\tjQuery.nodeName( content.nodeType !== 11 ? content : content.firstChild, \"tr\" ) ?\n\n\t\telem.getElementsByTagName( \"tbody\" )[ 0 ] ||\n\t\t\telem.appendChild( elem.ownerDocument.createElement( \"tbody\" ) ) :\n\t\telem;\n}\n\n// Replace/restore the type attribute of script elements for safe DOM manipulation\nfunction disableScript( elem ) {\n\telem.type = ( elem.getAttribute( \"type\" ) !== null ) + \"/\" + elem.type;\n\treturn elem;\n}\nfunction restoreScript( elem ) {\n\tvar match = rscriptTypeMasked.exec( elem.type );\n\n\tif ( match ) {\n\t\telem.type = match[ 1 ];\n\t} else {\n\t\telem.removeAttribute( \"type\" );\n\t}\n\n\treturn elem;\n}\n\nfunction cloneCopyEvent( src, dest ) {\n\tvar i, l, type, pdataOld, pdataCur, udataOld, udataCur, events;\n\n\tif ( dest.nodeType !== 1 ) {\n\t\treturn;\n\t}\n\n\t// 1. Copy private data: events, handlers, etc.\n\tif ( dataPriv.hasData( src ) ) {\n\t\tpdataOld = dataPriv.access( src );\n\t\tpdataCur = dataPriv.set( dest, pdataOld );\n\t\tevents = pdataOld.events;\n\n\t\tif ( events ) {\n\t\t\tdelete pdataCur.handle;\n\t\t\tpdataCur.events = {};\n\n\t\t\tfor ( type in events ) {\n\t\t\t\tfor ( i = 0, l = events[ type ].length; i < l; i++ ) {\n\t\t\t\t\tjQuery.event.add( dest, type, events[ type ][ i ] );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// 2. Copy user data\n\tif ( dataUser.hasData( src ) ) {\n\t\tudataOld = dataUser.access( src );\n\t\tudataCur = jQuery.extend( {}, udataOld );\n\n\t\tdataUser.set( dest, udataCur );\n\t}\n}\n\n// Fix IE bugs, see support tests\nfunction fixInput( src, dest ) {\n\tvar nodeName = dest.nodeName.toLowerCase();\n\n\t// Fails to persist the checked state of a cloned checkbox or radio button.\n\tif ( nodeName === \"input\" && rcheckableType.test( src.type ) ) {\n\t\tdest.checked = src.checked;\n\n\t// Fails to return the selected option to the default selected state when cloning options\n\t} else if ( nodeName === \"input\" || nodeName === \"textarea\" ) {\n\t\tdest.defaultValue = src.defaultValue;\n\t}\n}\n\nfunction domManip( collection, args, callback, ignored ) {\n\n\t// Flatten any nested arrays\n\targs = concat.apply( [], args );\n\n\tvar fragment, first, scripts, hasScripts, node, doc,\n\t\ti = 0,\n\t\tl = collection.length,\n\t\tiNoClone = l - 1,\n\t\tvalue = args[ 0 ],\n\t\tisFunction = jQuery.isFunction( value );\n\n\t// We can't cloneNode fragments that contain checked, in WebKit\n\tif ( isFunction ||\n\t\t\t( l > 1 && typeof value === \"string\" &&\n\t\t\t\t!support.checkClone && rchecked.test( value ) ) ) {\n\t\treturn collection.each( function( index ) {\n\t\t\tvar self = collection.eq( index );\n\t\t\tif ( isFunction ) {\n\t\t\t\targs[ 0 ] = value.call( this, index, self.html() );\n\t\t\t}\n\t\t\tdomManip( self, args, callback, ignored );\n\t\t} );\n\t}\n\n\tif ( l ) {\n\t\tfragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored );\n\t\tfirst = fragment.firstChild;\n\n\t\tif ( fragment.childNodes.length === 1 ) {\n\t\t\tfragment = first;\n\t\t}\n\n\t\t// Require either new content or an interest in ignored elements to invoke the callback\n\t\tif ( first || ignored ) {\n\t\t\tscripts = jQuery.map( getAll( fragment, \"script\" ), disableScript );\n\t\t\thasScripts = scripts.length;\n\n\t\t\t// Use the original fragment for the last item\n\t\t\t// instead of the first because it can end up\n\t\t\t// being emptied incorrectly in certain situations (#8070).\n\t\t\tfor ( ; i < l; i++ ) {\n\t\t\t\tnode = fragment;\n\n\t\t\t\tif ( i !== iNoClone ) {\n\t\t\t\t\tnode = jQuery.clone( node, true, true );\n\n\t\t\t\t\t// Keep references to cloned scripts for later restoration\n\t\t\t\t\tif ( hasScripts ) {\n\n\t\t\t\t\t\t// Support: Android<4.1, PhantomJS<2\n\t\t\t\t\t\t// push.apply(_, arraylike) throws on ancient WebKit\n\t\t\t\t\t\tjQuery.merge( scripts, getAll( node, \"script\" ) );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tcallback.call( collection[ i ], node, i );\n\t\t\t}\n\n\t\t\tif ( hasScripts ) {\n\t\t\t\tdoc = scripts[ scripts.length - 1 ].ownerDocument;\n\n\t\t\t\t// Reenable scripts\n\t\t\t\tjQuery.map( scripts, restoreScript );\n\n\t\t\t\t// Evaluate executable scripts on first document insertion\n\t\t\t\tfor ( i = 0; i < hasScripts; i++ ) {\n\t\t\t\t\tnode = scripts[ i ];\n\t\t\t\t\tif ( rscriptType.test( node.type || \"\" ) &&\n\t\t\t\t\t\t!dataPriv.access( node, \"globalEval\" ) &&\n\t\t\t\t\t\tjQuery.contains( doc, node ) ) {\n\n\t\t\t\t\t\tif ( node.src ) {\n\n\t\t\t\t\t\t\t// Optional AJAX dependency, but won't run scripts if not present\n\t\t\t\t\t\t\tif ( jQuery._evalUrl ) {\n\t\t\t\t\t\t\t\tjQuery._evalUrl( node.src );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tjQuery.globalEval( node.textContent.replace( rcleanScript, \"\" ) );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn collection;\n}\n\nfunction remove( elem, selector, keepData ) {\n\tvar node,\n\t\tnodes = selector ? jQuery.filter( selector, elem ) : elem,\n\t\ti = 0;\n\n\tfor ( ; ( node = nodes[ i ] ) != null; i++ ) {\n\t\tif ( !keepData && node.nodeType === 1 ) {\n\t\t\tjQuery.cleanData( getAll( node ) );\n\t\t}\n\n\t\tif ( node.parentNode ) {\n\t\t\tif ( keepData && jQuery.contains( node.ownerDocument, node ) ) {\n\t\t\t\tsetGlobalEval( getAll( node, \"script\" ) );\n\t\t\t}\n\t\t\tnode.parentNode.removeChild( node );\n\t\t}\n\t}\n\n\treturn elem;\n}\n\njQuery.extend( {\n\thtmlPrefilter: function( html ) {\n\t\treturn html.replace( rxhtmlTag, \"<$1>\" );\n\t},\n\n\tclone: function( elem, dataAndEvents, deepDataAndEvents ) {\n\t\tvar i, l, srcElements, destElements,\n\t\t\tclone = elem.cloneNode( true ),\n\t\t\tinPage = jQuery.contains( elem.ownerDocument, elem );\n\n\t\t// Fix IE cloning issues\n\t\tif ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) &&\n\t\t\t\t!jQuery.isXMLDoc( elem ) ) {\n\n\t\t\t// We eschew Sizzle here for performance reasons: http://jsperf.com/getall-vs-sizzle/2\n\t\t\tdestElements = getAll( clone );\n\t\t\tsrcElements = getAll( elem );\n\n\t\t\tfor ( i = 0, l = srcElements.length; i < l; i++ ) {\n\t\t\t\tfixInput( srcElements[ i ], destElements[ i ] );\n\t\t\t}\n\t\t}\n\n\t\t// Copy the events from the original to the clone\n\t\tif ( dataAndEvents ) {\n\t\t\tif ( deepDataAndEvents ) {\n\t\t\t\tsrcElements = srcElements || getAll( elem );\n\t\t\t\tdestElements = destElements || getAll( clone );\n\n\t\t\t\tfor ( i = 0, l = srcElements.length; i < l; i++ ) {\n\t\t\t\t\tcloneCopyEvent( srcElements[ i ], destElements[ i ] );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tcloneCopyEvent( elem, clone );\n\t\t\t}\n\t\t}\n\n\t\t// Preserve script evaluation history\n\t\tdestElements = getAll( clone, \"script\" );\n\t\tif ( destElements.length > 0 ) {\n\t\t\tsetGlobalEval( destElements, !inPage && getAll( elem, \"script\" ) );\n\t\t}\n\n\t\t// Return the cloned set\n\t\treturn clone;\n\t},\n\n\tcleanData: function( elems ) {\n\t\tvar data, elem, type,\n\t\t\tspecial = jQuery.event.special,\n\t\t\ti = 0;\n\n\t\tfor ( ; ( elem = elems[ i ] ) !== undefined; i++ ) {\n\t\t\tif ( acceptData( elem ) ) {\n\t\t\t\tif ( ( data = elem[ dataPriv.expando ] ) ) {\n\t\t\t\t\tif ( data.events ) {\n\t\t\t\t\t\tfor ( type in data.events ) {\n\t\t\t\t\t\t\tif ( special[ type ] ) {\n\t\t\t\t\t\t\t\tjQuery.event.remove( elem, type );\n\n\t\t\t\t\t\t\t// This is a shortcut to avoid jQuery.event.remove's overhead\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tjQuery.removeEvent( elem, type, data.handle );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Support: Chrome <= 35-45+\n\t\t\t\t\t// Assign undefined instead of using delete, see Data#remove\n\t\t\t\t\telem[ dataPriv.expando ] = undefined;\n\t\t\t\t}\n\t\t\t\tif ( elem[ dataUser.expando ] ) {\n\n\t\t\t\t\t// Support: Chrome <= 35-45+\n\t\t\t\t\t// Assign undefined instead of using delete, see Data#remove\n\t\t\t\t\telem[ dataUser.expando ] = undefined;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n} );\n\njQuery.fn.extend( {\n\n\t// Keep domManip exposed until 3.0 (gh-2225)\n\tdomManip: domManip,\n\n\tdetach: function( selector ) {\n\t\treturn remove( this, selector, true );\n\t},\n\n\tremove: function( selector ) {\n\t\treturn remove( this, selector );\n\t},\n\n\ttext: function( value ) {\n\t\treturn access( this, function( value ) {\n\t\t\treturn value === undefined ?\n\t\t\t\tjQuery.text( this ) :\n\t\t\t\tthis.empty().each( function() {\n\t\t\t\t\tif ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {\n\t\t\t\t\t\tthis.textContent = value;\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t}, null, value, arguments.length );\n\t},\n\n\tappend: function() {\n\t\treturn domManip( this, arguments, function( elem ) {\n\t\t\tif ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {\n\t\t\t\tvar target = manipulationTarget( this, elem );\n\t\t\t\ttarget.appendChild( elem );\n\t\t\t}\n\t\t} );\n\t},\n\n\tprepend: function() {\n\t\treturn domManip( this, arguments, function( elem ) {\n\t\t\tif ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {\n\t\t\t\tvar target = manipulationTarget( this, elem );\n\t\t\t\ttarget.insertBefore( elem, target.firstChild );\n\t\t\t}\n\t\t} );\n\t},\n\n\tbefore: function() {\n\t\treturn domManip( this, arguments, function( elem ) {\n\t\t\tif ( this.parentNode ) {\n\t\t\t\tthis.parentNode.insertBefore( elem, this );\n\t\t\t}\n\t\t} );\n\t},\n\n\tafter: function() {\n\t\treturn domManip( this, arguments, function( elem ) {\n\t\t\tif ( this.parentNode ) {\n\t\t\t\tthis.parentNode.insertBefore( elem, this.nextSibling );\n\t\t\t}\n\t\t} );\n\t},\n\n\tempty: function() {\n\t\tvar elem,\n\t\t\ti = 0;\n\n\t\tfor ( ; ( elem = this[ i ] ) != null; i++ ) {\n\t\t\tif ( elem.nodeType === 1 ) {\n\n\t\t\t\t// Prevent memory leaks\n\t\t\t\tjQuery.cleanData( getAll( elem, false ) );\n\n\t\t\t\t// Remove any remaining nodes\n\t\t\t\telem.textContent = \"\";\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t},\n\n\tclone: function( dataAndEvents, deepDataAndEvents ) {\n\t\tdataAndEvents = dataAndEvents == null ? false : dataAndEvents;\n\t\tdeepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents;\n\n\t\treturn this.map( function() {\n\t\t\treturn jQuery.clone( this, dataAndEvents, deepDataAndEvents );\n\t\t} );\n\t},\n\n\thtml: function( value ) {\n\t\treturn access( this, function( value ) {\n\t\t\tvar elem = this[ 0 ] || {},\n\t\t\t\ti = 0,\n\t\t\t\tl = this.length;\n\n\t\t\tif ( value === undefined && elem.nodeType === 1 ) {\n\t\t\t\treturn elem.innerHTML;\n\t\t\t}\n\n\t\t\t// See if we can take a shortcut and just use innerHTML\n\t\t\tif ( typeof value === \"string\" && !rnoInnerhtml.test( value ) &&\n\t\t\t\t!wrapMap[ ( rtagName.exec( value ) || [ \"\", \"\" ] )[ 1 ].toLowerCase() ] ) {\n\n\t\t\t\tvalue = jQuery.htmlPrefilter( value );\n\n\t\t\t\ttry {\n\t\t\t\t\tfor ( ; i < l; i++ ) {\n\t\t\t\t\t\telem = this[ i ] || {};\n\n\t\t\t\t\t\t// Remove element nodes and prevent memory leaks\n\t\t\t\t\t\tif ( elem.nodeType === 1 ) {\n\t\t\t\t\t\t\tjQuery.cleanData( getAll( elem, false ) );\n\t\t\t\t\t\t\telem.innerHTML = value;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\telem = 0;\n\n\t\t\t\t// If using innerHTML throws an exception, use the fallback method\n\t\t\t\t} catch ( e ) {}\n\t\t\t}\n\n\t\t\tif ( elem ) {\n\t\t\t\tthis.empty().append( value );\n\t\t\t}\n\t\t}, null, value, arguments.length );\n\t},\n\n\treplaceWith: function() {\n\t\tvar ignored = [];\n\n\t\t// Make the changes, replacing each non-ignored context element with the new content\n\t\treturn domManip( this, arguments, function( elem ) {\n\t\t\tvar parent = this.parentNode;\n\n\t\t\tif ( jQuery.inArray( this, ignored ) < 0 ) {\n\t\t\t\tjQuery.cleanData( getAll( this ) );\n\t\t\t\tif ( parent ) {\n\t\t\t\t\tparent.replaceChild( elem, this );\n\t\t\t\t}\n\t\t\t}\n\n\t\t// Force callback invocation\n\t\t}, ignored );\n\t}\n} );\n\njQuery.each( {\n\tappendTo: \"append\",\n\tprependTo: \"prepend\",\n\tinsertBefore: \"before\",\n\tinsertAfter: \"after\",\n\treplaceAll: \"replaceWith\"\n}, function( name, original ) {\n\tjQuery.fn[ name ] = function( selector ) {\n\t\tvar elems,\n\t\t\tret = [],\n\t\t\tinsert = jQuery( selector ),\n\t\t\tlast = insert.length - 1,\n\t\t\ti = 0;\n\n\t\tfor ( ; i <= last; i++ ) {\n\t\t\telems = i === last ? this : this.clone( true );\n\t\t\tjQuery( insert[ i ] )[ original ]( elems );\n\n\t\t\t// Support: QtWebKit\n\t\t\t// .get() because push.apply(_, arraylike) throws\n\t\t\tpush.apply( ret, elems.get() );\n\t\t}\n\n\t\treturn this.pushStack( ret );\n\t};\n} );\n\n\nvar iframe,\n\telemdisplay = {\n\n\t\t// Support: Firefox\n\t\t// We have to pre-define these values for FF (#10227)\n\t\tHTML: \"block\",\n\t\tBODY: \"block\"\n\t};\n\n/**\n * Retrieve the actual display of a element\n * @param {String} name nodeName of the element\n * @param {Object} doc Document object\n */\n\n// Called only from within defaultDisplay\nfunction actualDisplay( name, doc ) {\n\tvar elem = jQuery( doc.createElement( name ) ).appendTo( doc.body ),\n\n\t\tdisplay = jQuery.css( elem[ 0 ], \"display\" );\n\n\t// We don't have any data stored on the element,\n\t// so use \"detach\" method as fast way to get rid of the element\n\telem.detach();\n\n\treturn display;\n}\n\n/**\n * Try to determine the default display value of an element\n * @param {String} nodeName\n */\nfunction defaultDisplay( nodeName ) {\n\tvar doc = document,\n\t\tdisplay = elemdisplay[ nodeName ];\n\n\tif ( !display ) {\n\t\tdisplay = actualDisplay( nodeName, doc );\n\n\t\t// If the simple way fails, read from inside an iframe\n\t\tif ( display === \"none\" || !display ) {\n\n\t\t\t// Use the already-created iframe if possible\n\t\t\tiframe = ( iframe || jQuery( \"